summaryrefslogtreecommitdiffstats
path: root/roles/openshift_facts/library
diff options
context:
space:
mode:
authorJustin Cook <jhcook@gmail.com>2016-10-11 10:08:29 +0100
committerJustin Cook <jhcook@gmail.com>2016-10-11 10:08:29 +0100
commit5bf011aee30cd566d1a1364e863287e05a639299 (patch)
treeebc5680f24e37a49c97fbf96bfc5ee0405eb99df /roles/openshift_facts/library
parent69c6b0f3fc9d1908c35a661afcb2689fbf28207e (diff)
parent131bcdcd7ee5c3191c748beb7aad8d45c4477b98 (diff)
downloadopenshift-5bf011aee30cd566d1a1364e863287e05a639299.tar.gz
openshift-5bf011aee30cd566d1a1364e863287e05a639299.tar.bz2
openshift-5bf011aee30cd566d1a1364e863287e05a639299.tar.xz
openshift-5bf011aee30cd566d1a1364e863287e05a639299.zip
Merge branch 'master' of github.com:openshift/openshift-ansible into variable_with_no_default_2576
Diffstat (limited to 'roles/openshift_facts/library')
-rwxr-xr-xroles/openshift_facts/library/openshift_facts.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/roles/openshift_facts/library/openshift_facts.py b/roles/openshift_facts/library/openshift_facts.py
index 9ffd399bc..0ee018c5c 100755
--- a/roles/openshift_facts/library/openshift_facts.py
+++ b/roles/openshift_facts/library/openshift_facts.py
@@ -364,12 +364,15 @@ def normalize_openstack_facts(metadata, facts):
facts['network']['ip'] = local_ipv4
facts['network']['public_ip'] = metadata['ec2_compat']['public-ipv4']
- # TODO: verify local hostname makes sense and is resolvable
- facts['network']['hostname'] = metadata['hostname']
-
- # TODO: verify that public hostname makes sense and is resolvable
- pub_h = metadata['ec2_compat']['public-hostname']
- facts['network']['public_hostname'] = pub_h
+ for f_var, h_var, ip_var in [('hostname', 'hostname', 'local-ipv4'),
+ ('public_hostname', 'public-hostname', 'public-ipv4')]:
+ try:
+ if socket.gethostbyname(metadata['ec2_compat'][h_var]) == metadata['ec2_compat'][ip_var]:
+ facts['network'][f_var] = metadata['ec2_compat'][h_var]
+ else:
+ facts['network'][f_var] = metadata['ec2_compat'][ip_var]
+ except socket.gaierror:
+ facts['network'][f_var] = metadata['ec2_compat'][ip_var]
return facts