我正在尝试迭代循环遍历我们在ansible环境中的group_var并提取工资值并在命令模块中使用它 . 我的ansible / groups_vars文件中有以下文件 -
people:
george:
lastname: smith
job:
title: associate
salary: 60
chris:
lastname: george
job:
title: senior
salary: 70
greg:
lastname: anderson
job:
title: director
salary: 95
这是我目前的代码:
- name: Run module check command against every docroot
command: 'drush --root=/var/www/html/wwwroot/{{item.0.salary}}/docroot en update'
with_subelements:
- "{{ people }}"
- job.salary
我看到的错误是:
失败了! => {“msg”:“关键薪水应该指向一个列表,得到'60'”}
我在这里通过查看以下问题来整理此解决方案:
Ansible with_subelements
Ansible loop using multi-ter group_vars
Ansible with subelements referencing a dict
试图将值设置为.0或.1似乎使它查找字典,并将其设置为[0]或[1]说:
{“msg”:“无法在迭代项目中找到'salary [1]'键'{u'title':associate,u'salary':u'60'}”}
我觉得我真的很接近这个工作,但只有一小部分我想念 . 如何让它迭代循环并拉出特定的信息?
1 回答
在您发布的示例中,没有嵌套的词典或列表可以循环 . 您希望迭代单个字典并引用其值 .
以下是您的问题的答案: