#- name: Remove obsolte hostnames from /etc/hosts # lineinfile: dest="/etc/hosts" regexp="{{ hostvars[item]['openshift_hostname'] }}" state="absent" # when: # - hostvars[item]['openshift_hostname'] | default(ands_none) != ands_none # - hostvars[item]['ands_facts_configured'] is defined # with_inventory_hostnames: # - nodes # - new_nodes # This will not work properly unless 'ands_facts' are executed on all nodes.... This is checked by evaluating if 'ands_openshift_fqdn' is defined - name: Configure all cluster hostnames in /etc/hosts lineinfile: dest="/etc/hosts" line="{{ ip }} {{ fqdn }} {{ hostname }}" regexp="{{ fqdn }}" state="present" when: - hostvars[item]['ands_openshift_fqdn'] | default(ands_none) != ands_none - hostvars[item]['ands_facts_configured'] is defined vars: ip: "{{ hostvars[item]['ands_openshift_ip'] }}" fqdn: "{{ hostvars[item]['ands_openshift_fqdn'] }}" hostname: "{{ fqdn.split('.')[0] }}" with_inventory_hostnames: - nodes - new_nodes - name: Configure all storage ips in /etc/hosts lineinfile: dest="/etc/hosts" line="{{ ip }} {{ hostname }}" regexp="{{ hostname }}" state="present" when: - hostvars[item]['ands_storage_network'] | default(ands_none) != ands_none - hostvars[item]['ands_facts_configured'] is defined vars: ip: "{{ hostvars[item]['ands_storage_ip'] }}" hostname: "{{ hostvars[item]['ands_hostname_storage'] }}" with_inventory_hostnames: - storage_nodes - new_storage_nodes - name: Provision /etc/hosts to ensure that all masters servers are accessing Master API on loopback device lineinfile: dest="/etc/hosts" line="127.0.0.1 {{ openshift_master_cluster_hostname }}" regexp=".*{{ openshift_master_cluster_hostname }}$" state="present" when: ('masters' in group_names or 'new_masters' in group_names) register: result - name: Provision /etc/hosts to ensure that all masters servers are accessing Master API on loopback device lineinfile: dest="/etc/hosts" line="{{ ands_inner_lb_ip }} {{ openshift_master_cluster_hostname }}" regexp=".*{{ openshift_master_cluster_hostname }}$" state="present" when: (result | skipped) and (ands_inner_lb | default(false)) - name: Register openshift_dns_ip in /etc/hosts lineinfile: dest="/etc/hosts" line="{{ openshift_dns_ip }} openshift_dns_ip" regexp="openshift_dns_ip$" state="present"