Ansible: 何时: {{ groups['group'] }} 中的inventory_hostname 不适用于动态库存

创建于 2015-06-24  ·  3评论  ·  资料来源: ansible/ansible

我创建了https://github.com/eparis/ansible-inventory-bug来准确地展示我的意思,任何人都可以在本地运行的干净的复制器。 它具有“动态”库存和静态库存。

(对于“动态”,它实际上只是在一些 json 中进行分类,但它清楚地显示了问题)

使用静态库存文件when: inventory_hostname in {{ groups['group'] }}工作得很好。 但是对于动态库存,它失败了,看起来像是一些 python 本地化/字符串处理混乱......

affects_2.0 affects_2.3

最有用的评论

所以只是做了很多实验,发现

作品:
when: inventory_hostname in groups['group']

失败:
when: inventory_hostname in {{ groups['group'] }}

所以是额外的一组 {{ }} 导致了问题。 虽然我不知道为什么它适用于静态而不适用于动态。

所有3条评论

所以只是做了很多实验,发现

作品:
when: inventory_hostname in groups['group']

失败:
when: inventory_hostname in {{ groups['group'] }}

所以是额外的一组 {{ }} 导致了问题。 虽然我不知道为什么它适用于静态而不适用于动态。

你不应该在 when 中使用 {{ }} (我们实际上应该把它当作一个错误),静态/动态在这里工作有点不同的原因似乎是因为最终返回的对象类型,列表 vs unicode 字符串.

如上所述关闭

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

iven picture iven  ·  3评论

jiwong picture jiwong  ·  3评论

tspivey picture tspivey  ·  3评论

rchady picture rchady  ·  3评论

rokka-n picture rokka-n  ·  3评论