diff --git a/defaults/main.yml b/defaults/main.yml index b0f9f694..1b39a5ed 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -28,19 +28,12 @@ rabbitmq_node_address: "{{ ansible_host }}" # Hosts file entries (set this to an empty list to disable /etc/hosts generation # for the rabbitmq cluster nodes) -rabbitmq_hosts_entries: |- - {% set _var = [] %} - {% for cluster_host in groups[rabbitmq_host_group] %} - {% set _addr = hostvars[cluster_host]['rabbitmq_node_address'] | - default(hostvars[cluster_host]['ansible_host']) %} - {% set _hostnames = [ - hostvars[cluster_host]['ansible_hostname'], - hostvars[cluster_host]['ansible_hostname'].split('.')[0] - ] - %} - {% set _ = _var.append({'address': _addr, 'hostnames': _hostnames}) %} - {% endfor %} - {{ _var }} +rabbitmq_hosts_entries: >- + {{ groups[rabbitmq_host_group] | map('extract', hostvars) | list | + json_query( + "[].{address: rabbitmq_node_address || ansible_host , hostnames: [ansible_hostname, ansible_fqdn] }" + ) + }} rabbitmq_primary_cluster_node: "{{ hostvars[groups[rabbitmq_host_group][0]]['ansible_hostname'] }}"