summaryrefslogtreecommitdiffstats
path: root/roles/openshift_facts
diff options
context:
space:
mode:
authorScott Dodson <sdodson@redhat.com>2016-04-27 13:34:40 -0400
committerScott Dodson <sdodson@redhat.com>2016-04-27 13:34:40 -0400
commit83f9edc249db6b629f6f6fdb19d1c363f70133eb (patch)
treee022c3c21df09602c7b024454f14188a725765ab /roles/openshift_facts
parente2579a01161406492320a5363daa3c10bc80d563 (diff)
downloadopenshift-83f9edc249db6b629f6f6fdb19d1c363f70133eb.tar.gz
openshift-83f9edc249db6b629f6f6fdb19d1c363f70133eb.tar.bz2
openshift-83f9edc249db6b629f6f6fdb19d1c363f70133eb.tar.xz
openshift-83f9edc249db6b629f6f6fdb19d1c363f70133eb.zip
Fix openshift_generate_no_proxy_hosts boolean
Fixing this also made it obvious that we weren't adding even the current host's name to the no_proxy list. This is absolutely necessary or the master won't be able to reach etcd. So even if they request not to have the list of all hosts and cluster dns zone added we should add the current host's hostname to the no_proxy list.
Diffstat (limited to 'roles/openshift_facts')
-rwxr-xr-xroles/openshift_facts/library/openshift_facts.py21
1 files changed, 11 insertions, 10 deletions
diff --git a/roles/openshift_facts/library/openshift_facts.py b/roles/openshift_facts/library/openshift_facts.py
index 8d7f12bc8..c102770a0 100755
--- a/roles/openshift_facts/library/openshift_facts.py
+++ b/roles/openshift_facts/library/openshift_facts.py
@@ -499,12 +499,12 @@ def set_dnsmasq_facts_if_unset(facts):
"""
if 'common' in facts:
- if 'use_dnsmasq' not in facts['common'] and facts['common']['version_gte_3_2_or_1_2']:
+ if 'use_dnsmasq' not in facts['common'] and safe_get_bool(facts['common']['version_gte_3_2_or_1_2']):
facts['common']['use_dnsmasq'] = True
else:
facts['common']['use_dnsmasq'] = False
if 'master' in facts and 'dns_port' not in facts['master']:
- if facts['common']['use_dnsmasq']:
+ if safe_get_bool(facts['common']['use_dnsmasq']):
facts['master']['dns_port'] = 8053
else:
facts['master']['dns_port'] = 53
@@ -1369,18 +1369,19 @@ def set_proxy_facts(facts):
if 'common' in facts:
common = facts['common']
if 'http_proxy' in common or 'https_proxy' in common:
+ if 'no_proxy' in common and \
+ isinstance(common['no_proxy'], basestring):
+ common['no_proxy'] = common['no_proxy'].split(",")
+ elif 'no_proxy' not in common:
+ common['no_proxy'] = []
if 'generate_no_proxy_hosts' in common and \
- common['generate_no_proxy_hosts']:
- if 'no_proxy' in common and \
- isinstance(common['no_proxy'], basestring):
- common['no_proxy'] = common['no_proxy'].split(",")
- else:
- common['no_proxy'] = []
+ safe_get_bool(common['generate_no_proxy_hosts']):
if 'no_proxy_internal_hostnames' in common:
common['no_proxy'].extend(common['no_proxy_internal_hostnames'].split(','))
common['no_proxy'].append('.' + common['dns_domain'])
- common['no_proxy'].append(common['hostname'])
- common['no_proxy'] = sort_unique(common['no_proxy'])
+ # We always add ourselves no matter what
+ common['no_proxy'].append(common['hostname'])
+ common['no_proxy'] = sort_unique(common['no_proxy'])
facts['common'] = common
if 'builddefaults' in facts: