Ansible“如何遍历列表”以创建新列表

时间:2018-12-20 02:45:24

标签: ansible

我正在尝试创建一个遍历多个dict项目(v1)的简单剧本任务,并创建一个包含特定项目的新列表var(list_var),但它不起作用list_var仅向我显示一个元素,任何人都可以请提出我想念的是什么? 如果我这样做:

set_fact:
  list_var: "{{ v1.stdout  }}"
with_items: "{{ v1.items }}"

v1中的值由简单的shell输出返回,并具有来自不同主机(如主机名)的值

1 个答案:

答案 0 :(得分:0)

可能有一些列出吗?

- command: echo "{{ item }}"
  register: v1
  with_sequence: start=0 end=3
- set_fact:
    list_var: "{{ list_var|default([]) }} + [ {{ item }} ]"
  loop: "{{ v1.results | json_query('[].stdout') }}"
- debug: var=list_var

哪个生成此列表

TASK [debug] **********
ok: [localhost] => {
    "list_var": [
        0, 
        1, 
        2, 
        3
    ]
}