|
1 | 1 | --- |
2 | | -- name: Read inventory file |
3 | | - ansible.builtin.slurp: |
4 | | - src: "{{ include_inventory_file }}" |
5 | | - register: _inventory_file |
| 2 | +- name: Check if inventory file exists |
| 3 | + ansible.builtin.stat: |
| 4 | + path: "{{ include_inventory_file | trim }}" |
| 5 | + register: _include_inventory_file |
6 | 6 |
|
7 | | -- name: Parse inventory file content |
8 | | - ansible.builtin.set_fact: |
9 | | - inventory_data: "{{ _inventory_file.content | b64decode | from_yaml }}" |
| 7 | +- name: Parse inventory file |
| 8 | + when: _include_inventory_file.stat.exists |
| 9 | + block: |
| 10 | + - name: Read inventory file |
| 11 | + ansible.builtin.slurp: |
| 12 | + src: "{{ include_inventory_file }}" |
| 13 | + register: _inventory_file |
10 | 14 |
|
11 | | -- name: Process each group with hosts |
12 | | - ansible.builtin.include_tasks: |
13 | | - file: parse_inventory.yml |
14 | | - loop: "{{ inventory_data | dict2items | selectattr('value.hosts', 'defined') | list }}" |
15 | | - loop_control: |
16 | | - loop_var: group_item |
| 15 | + - name: Parse inventory file content |
| 16 | + ansible.builtin.set_fact: |
| 17 | + inventory_data: "{{ _inventory_file.content | b64decode | from_yaml }}" |
| 18 | + |
| 19 | + - name: Process each group with hosts |
| 20 | + ansible.builtin.include_tasks: |
| 21 | + file: parse_inventory.yml |
| 22 | + loop: "{{ inventory_data | dict2items | selectattr('value.hosts', 'defined') | list }}" |
| 23 | + loop_control: |
| 24 | + loop_var: group_item |
0 commit comments