在Ansible中,双重迭代循环可以用于获取嵌套的数组。以下是一个示例代码:
- hosts: localhost
become: false
vars:
my_array:
- name: item 1
values:
- value1
- value2
- name: item 2
values:
- value3
- value4
tasks:
- name: Loop over outer array
debug:
msg: "{{ item }}"
loop: "{{ my_array }}"
loop_control:
loop_var: outer_item
- name: Loop over inner array
debug:
msg: "{{ item }}"
loop: "{{ outer_item.values }}"
loop_control:
loop_var: inner_item
在这个示例中,我们定义了一个名为“my_array”的嵌套数组。第一个循环通过将“my_array”作为参数传递给“loop”变量实现,并使用“loop_control”变量重命名外部循环变量为“outer_item”。第二个循环使用“outer_item.values”作为参数传递给“loop”变量,并使用“loop_control”变量重命名内部循环变量为“inner_item”。可以使用“debug”模块输出每个变量的值,以便验证是否正确循环嵌套的数组。