如何阅读yaml地图的每个元素

时间:2015-06-03 09:29:05

标签: yaml ansible

我正在尝试访问yaml对象的所有元素,任何建议都会有所帮助:

object:
  element1: "value1"
  element2: "value2"
  element3: "value3"

上述对象在group_vars / all文件中定义,以便其他任务可以访问它。

- name: pass values to script
  debug: "msg={{ item }}"
  with_items:
    - "{{ object.element1 }}"
    - "{{ object.element2 }}"

现在这个方法允许我接受每个元素,但我想完成这个,以便with_items读取对象中的所有元素(不论对象的数量)。我尝试了以下方法:

- name: pass values to script
  debug: "msg={{ item }}"
  with_items:
    - "{{ object }}"

但是这会将整个对象视为一个项目。关于如何将所有元素放入列表with_items的任何建议:

2 个答案:

答案 0 :(得分:0)

您可以尝试使用:
     with_items:object

适用于库存定义。

答案 1 :(得分:0)

问题的解决方案是使用with_dict。

}else