遍历Ansible中的字典列表时访问键

时间:2018-08-24 06:40:29

标签: ansible yaml

Ansible的有关YAML语法的文档包含以下示例:

# Employee records
-  martin:
    name: Martin D'vloper
    job: Developer
    skills:
      - python
      - perl
      - pascal
-  tabitha:
    name: Tabitha Bitumen
    job: Developer
    skills:
      - lisp
      - fortran
      - erlang

如果我使用loop遍历此数据结构,我将如何仅访问值“ tabitha”和“ martin”?

1 个答案:

答案 0 :(得分:1)

假设列表以my_list的名称存储:

- debug:
    msg: "{{ item.keys() | first }}"
  loop: "{{ my_list }}"

或使用JMESPath:

- debug:
    msg: "{{ item }}"
  loop: "{{ my_list | json_query('[].keys(@)') | flatten }}"