validate_hostnames.yml 1.2 KB

1234567891011121314151617181920212223242526
  1. ---
  2. - include: evaluate_groups.yml
  3. - name: Gather and set facts for node hosts
  4. hosts: oo_nodes_to_config
  5. roles:
  6. - openshift_facts
  7. tasks:
  8. - openshift_facts:
  9. role: "{{ item.role }}"
  10. local_facts: "{{ item.local_facts }}"
  11. with_items:
  12. - role: common
  13. local_facts:
  14. hostname: "{{ openshift_hostname | default(None) }}"
  15. public_hostname: "{{ openshift_public_hostname | default(None) }}"
  16. - shell:
  17. getent ahostsv4 {{ openshift.common.hostname }} | head -n 1 | awk '{ print $1 }'
  18. register: lookupip
  19. changed_when: false
  20. failed_when: false
  21. - name: Warn user about bad openshift_hostname values
  22. pause:
  23. prompt: "The hostname \"{{ openshift.common.hostname }}\" for \"{{ ansible_nodename }}\" doesn't resolve to an ip address owned by this host. Please set openshift_hostname variable to a hostname that when resolved on the host in question resolves to an IP address matching an interface on this host. This host will fail liveness checks for pods utilizing hostPorts, press ENTER to continue or CTRL-C to abort."
  24. seconds: "{{ 10 if openshift_override_hostname_check | default(false) | bool else omit }}"
  25. when: lookupip.stdout not in ansible_all_ipv4_addresses