我想在嵌套哈希上运行命令。我无法解决。我尝试使用with_items
,with_dict
但是我认为这不适合我的用例。
我认为通过ansible循环,我可以使用loop-control完成此操作。我怎么都做不到。有人可以在这里帮我吗。
Ansible版本:2.0.2.0
我的哈希
users:
ankit:
name: ankit
access:
opt: /opt/data
tmp: /tmp
gupta:
name: gupta
access:
data: /opt/data/gupta
预期执行将使用上述哈希在循环中运行。
- file: path=/opt/data state=directory owner:ankit mode=0755
- file: path=/tmp state=directory owner:ankit mode=0755
- file: path=/opt/data/gupta state=directory owner:gupta mode=0755
注意:这是修改后的示例。我没有在实际任务中创建文件夹。如果基于Storm Topology不存在,则我正在创建Kafka主题。哈希结构如何相同,我需要使用这些项目
重新发布具有实际事实的问题(https://stackoverflow.com/questions/37182895/nested-hash-in-ansible)
我的错误是我试图将loop_control与Ansible 2.0一起使用,因此它无法正常工作。相反,我应该使用2-0和中的loops-and-includes-inset_fact
。
main.yml
- include: kafka_topic.yml
with_dict: project.topology
kafka_topic.yml
- set_fact:
outer_item: "{{item}}"
- debug:
msg: "inner item={{item.value}}"
with_dict: outer_item.value.kafka_topic
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句