如何从剧本中引用塔库存组?我的剧本正在调用特定的角色,每个角色都会从塔中调用不同的库存组。
到目前为止,我尝试过的是:
host: "{{ inventory_hostname in groups['ios'] }}"
或者
host: "ios"
或者
host: ios
它只是我在模板上的语法吗?使用塔式库存组时,我找不到任何对此的参考。
我收到某种类型的错误说明找不到,或试图实际连接到“ios”
"failed to connect to ios:22"
如何从剧本中引用塔库存组?我的剧本正在调用特定的角色,每个角色都会从塔中调用不同的库存组。
到目前为止,我尝试过的是:
host: "{{ inventory_hostname in groups['ios'] }}"
或者
host: "ios"
或者
host: ios
它只是我在模板上的语法吗?使用塔式库存组时,我找不到任何对此的参考。
我收到某种类型的错误说明找不到,或试图实际连接到“ios”
"failed to connect to ios:22"
来自 Ansible Tower 支持:
每个作业模板只能看到一个顶级库存。但是,可以在单个清单中创建可能重叠的组和子组。对于大多数应用程序,可以组织单个清单以提供必要的特异性。如果必须在多个作业模板中引用特定库存分组,则必须在两种情况下使用相同的顶级库存,或者将库存组复制到两个库存。
因此您不能在 中引用其他组hosts,每个作业模板只能看到它提供的库存,但您可以使用 Workflow 更改库存或创建重叠组。
尝试从:
hosts: "{{ ansible_play_batch }}"
这个“神奇变量”为您提供了从 Tower 传入的 [活动的、可访问的] 主机列表。
我之所以选择这个是因为hosts:它是剧本中的必填字段,而且我不想在 Tower Inventory 选择的顶部进行硬编码。
如果你想引用一个组,你应该使用hosts:而不是。host: