繁体   English   中英

在Ansible中,如何打印yaml文件中的值?

[英]In Ansible, how can I print the values from my yaml file?

我尝试执行以下操作,但我知道它将显示文件中的最后一个值,因此将不起作用。 有没有办法从我的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

注册变量php_command_result应该持有一组,每个应该有一个嵌套的属性,如所有项目的changed和情况下,任务失败一个failed属性。

很难做到这一点,所以这可能不会立即起作用:

Successfully installed PHP RPMs! {{ php_command_result.results | rejectattr("failed") | map(attribute='item') | join(', ') }}

如果不起作用,请发布完整的php_command_result输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM