У меня есть следующий файл vars.yml с вложенным dict.:
hosts:
server_1:
apps:
- x1
- x2
- x3
- x4
- x5
storage:
-
-
cpu:
-
-
server_2:
apps:
- y1
- y2
- y3
- y4
- y5
storage:
-
-
cpu:
-
-
server_N:
apps:
- n1
- n2
- n3
- n4
- n5
И я хочу использовать его в следующем примере playbook как al oop через переменные, чтобы задача выполнялась несколько раз раз по диктовке:
- hosts: localhost
gather_facts: no
vars_files:
- vars.yml
tasks:
- name: Install apps
debug:
msg: "{{ item.value }}"
msg: "{{ item.value.apps }}"
with_dict: "{{ hosts }}"
Я хочу использовать их в качестве переменных и получить в результате l oop итерацию, где сервер и приложение коррелируют.
1. msg: "server_1"
msg: "x1"
2. msg: "server_1"
msg: "x2"
3. msg: "server_1"
msg: "x3"
....etc
6. msg: "server_2"
msg: "y1"
7. msg: "server_2"
msg: "y2"
....etc
Я думаю, что вы есть идея Также не должно иметь значения, сколько «server_N» доступно в файле vars.yml!
Какой самый простой и правильный способ получить этот результат?