diff --git a/tripleo_ansible/roles/tripleo-hieradata/defaults/main.yml b/tripleo_ansible/roles/tripleo-hieradata/defaults/main.yml index 08c19f780..ecafaaef9 100644 --- a/tripleo_ansible/roles/tripleo-hieradata/defaults/main.yml +++ b/tripleo_ansible/roles/tripleo-hieradata/defaults/main.yml @@ -52,3 +52,7 @@ hieradata_templates_list: - bootstrap_node - all_nodes - vip_data +# define a local address. If the ipv6 is found to be enable on the +# loopback device the local address will be set to "localhost" otherwise +# the local address will be defined as "127.0.0.1". +hieradata_localhost_address: "{{ ('ipv6' in (ansible_lo | default({}))) | ternary('localhost', '127.0.0.1') }}" diff --git a/tripleo_ansible/roles/tripleo-hieradata/templates/all_nodes.j2 b/tripleo_ansible/roles/tripleo-hieradata/templates/all_nodes.j2 index 0c633f53a..c3ff006a7 100644 --- a/tripleo_ansible/roles/tripleo-hieradata/templates/all_nodes.j2 +++ b/tripleo_ansible/roles/tripleo-hieradata/templates/all_nodes.j2 @@ -41,6 +41,10 @@ {% if 'ovn_dbs' in enabled_services and net_vip_map.ovn_dbs is defined %} {% set _ = all_nodes.__setitem__('ovn_dbs_vip', (net_vip_map.ovn_dbs)) %} {% endif %} +{% if hieradata_localhost_address is undefined %} +{% set hieradata_localhost_address = ('ipv6' in (ansible_lo | default({}))) | ternary('localhost', '127.0.0.1') %} +{% endif %} +{% set _ = all_nodes.__setitem__('localhost_address', hieradata_localhost_address) %} {% set _ = all_nodes.__setitem__('deploy_identifier', deploy_identifier) %} {% set _ = all_nodes.__setitem__('stack_action', stack_action) %} {% set _ = all_nodes.__setitem__('stack_update_type', stack_update_type) %}