我尝试了以下操作,但我知道它不起作用,因为它显示了文件中的最后一个值。有没有办法从我的YAML文件中item.key
建立一个列表?
- name: Install PHP modules
command: sudo rpm -Uvh {{ rpm_repository }}/aria-{{ item.key }}-{{ item.value.svn_tag }}.rpm --force
with_dict: deploy_modules_php
register: php_command_result
- name: set color success
when: php_command_result|success
with_dict: deploy_modules_php
set_fact:
color="green"
msg="Successfully installed PHP RPMs! {{ item.key }}"
在Hipchat中寻找类似的东西(一旦我可以开始工作,我会处理格式化)。
Successfully installed PHP RPMs! module1 module2 module3
我明白了......
"Successfully installed PHP RPMs! module3
答案 0 :(得分:0)
注册变量php_command_result
应该包含一组所有项目,其中每个项目应具有changed
等嵌套属性,以防任务失败failed
属性。
这很难做到这一点,所以这可能不会立即起作用:
Successfully installed PHP RPMs! {{ php_command_result.results | rejectattr("failed") | map(attribute='item') | join(', ') }}
如果它不起作用,请发布php_command_result
的完整输出。