V
{% for host in play_hosts %}
{{ hostvars[host]['ansible_default_ipv4']['address'] }} {{ hostvars[host]['ansible_nodename'] }} {{ hostvars[host]['ansible_hostname'] }}
{% endfor %}
Size: a a a
V
{% for host in play_hosts %}
{{ hostvars[host]['ansible_default_ipv4']['address'] }} {{ hostvars[host]['ansible_nodename'] }} {{ hostvars[host]['ansible_hostname'] }}
{% endfor %}
VZ
VZ
VZ
TG
TG
TG
vars:
domain_list:
- a.ru
- b.ru
- c.ru
- d.ru
- e.ru
- f.ru
ip_list:
- '1.1.1.1'
- '1.1.1.2'
- '1.1.1.3'
- '1.1.1.4'
- name: Debug combined list
debug:
var: >-
(domain_list | zip(ip_list)
+ domain_list[ip_list|length:] | zip(ip_list))
| map('join', ' ')
TG
TASK [Debug combined list] ****************
ok: [localhost] =>
(domain_list | zip(ip_list) + domain_list[ip_list|length:] | zip(ip_list)) | map('join', ' '):
- a.ru 1.1.1.1
- b.ru 1.1.1.2
- c.ru 1.1.1.3
- d.ru 1.1.1.4
- e.ru 1.1.1.1
- f.ru 1.1.1.2
TG
TG
L
- set_fact:
domain_with_ip: '{{ domain_with_ip | default([]) }} + [ "{{ item ~ '' '' ~ ip_list[domain_list.index(item) % ip_list|length ] }}" ]'
loop: '{{ domain_list }}'
TG
- set_fact:
domain_with_ip: '{{ domain_with_ip | default([]) }} + [ "{{ item ~ '' '' ~ ip_list[domain_list.index(item) % ip_list|length ] }}" ]'
loop: '{{ domain_list }}'
TG
- name: Debug combined list
debug:
var: >-
domain_list
| batch(ip_list|length)
| map('zip', ip_list)
| flatten(levels=1)
| map('join', ' ')
TG
domain_list
любой длины