小编Paw*_*cki的帖子

带有主机列表的 Ansible 模板,不包括当前

我对 ansible 非常新鲜,并创建了一个剧本,在其中一个任务中应该复制模板文件并替换 2 行中的值。第一行应该有当前的主机名,在第二个分号分隔的所有其他主机列表中(在剧中使用) - 它将是不同的组

第一行非常简单,因为它只是:

localnode={{ inventory_hostname }}
Run Code Online (Sandbox Code Playgroud)

但我在第二行中遇到排除问题。我想要类似的东西:

{% for host in groups.nodes -%} # but without inventory_hostname 
othernodes={{ host }}{% if not loop.last %};{% endif %}
{%- endfor %}
Run Code Online (Sandbox Code Playgroud)

鉴于库存:

nodes:
  hosts:
    hosta:
    hostb:
    hostc:
    hostd:
Run Code Online (Sandbox Code Playgroud)

我想获得以下输出(hostd 的示例):

localnode=hostd
othernodes=hosta,hostb,hostc
Run Code Online (Sandbox Code Playgroud)

我将非常感谢有关可能解决方案的所有提示

jinja2 ansible

2
推荐指数
1
解决办法
592
查看次数

标签 统计

ansible ×1

jinja2 ×1