On Sun, 18 Aug 2024 15:11:11 +0100 Will McDonald <wmcdon...@gmail.com> wrote:
> There may be more elegant ways to achieve this The below declaration should to the job seeds: "{{ ansible_play_hosts | difference([inventory_hostname]) | map('extract', hostvars, 'ansible_host') | product([':2113']) | map('join') | join(',') }}" > {%- set seeds = [] %} > {%- for host in ansible_play_hosts %} > {%- if host != inventory_hostname %} > {{ seeds.append(hostvars[host]['ansible_host'] ~ ':2113') }} > {%- endif %} > {%- endfor %} > > GossipSeed: {{ seeds | join(',') }} For example, given the inventory shell> cat hosts host_A ansible_host=10.1.0.51 host_B ansible_host=10.1.0.52 host_C ansible_host=10.1.0.53 the below play - hosts: all vars: seeds: "{{ ansible_play_hosts | difference([inventory_hostname]) | map('extract', hostvars, 'ansible_host') | product([':2113']) | map('join') | join(',') }}" tasks: - debug: var: seeds gives (abridged) ok: [host_A] => seeds: 10.1.0.53:2113,10.1.0.52:2113 ok: [host_B] => seeds: 10.1.0.53:2113,10.1.0.51:2113 ok: [host_C] => seeds: 10.1.0.51:2113,10.1.0.52:2113 HTH, -- Vladimir Botka -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/20240818180500.6cbdd318%40gmail.com.
pgpKnie3teTXh.pgp
Description: OpenPGP digital signature