From 4c84eebddaea08be5dcb89b1a27bb9c886a0a321 Mon Sep 17 00:00:00 2001 From: Samuel Munilla Date: Wed, 24 Feb 2016 10:03:56 -0500 Subject: a-o-i: Better method for identifying master_lb The previous check was less than reliable thanks to potential differences between hostname / ip / connect_to. This check should cover all instances. --- utils/src/ooinstall/cli_installer.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'utils/src/ooinstall') diff --git a/utils/src/ooinstall/cli_installer.py b/utils/src/ooinstall/cli_installer.py index 7a97de4e6..07429de09 100644 --- a/utils/src/ooinstall/cli_installer.py +++ b/utils/src/ooinstall/cli_installer.py @@ -533,7 +533,9 @@ def get_installed_hosts(hosts, callback_facts): try: first_master = next(host for host in hosts if host.master) lb_hostname = callback_facts[first_master.connect_to]['master'].get('cluster_hostname', '') - lb_host = next(host for host in hosts if host.connect_to == lb_hostname) + lb_host = \ + next(host for host in hosts if host.ip == callback_facts[lb_hostname]['common']['ip']) + installed_hosts.append(lb_host) except (KeyError, StopIteration): pass -- cgit v1.2.3 From 2fa19cdba71289c7e2006c992e55606c0147ebd6 Mon Sep 17 00:00:00 2001 From: Samuel Munilla Date: Wed, 24 Feb 2016 12:58:13 -0500 Subject: a-o-i: Double safety check on master_lb --- utils/src/ooinstall/cli_installer.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'utils/src/ooinstall') diff --git a/utils/src/ooinstall/cli_installer.py b/utils/src/ooinstall/cli_installer.py index 07429de09..ace834323 100644 --- a/utils/src/ooinstall/cli_installer.py +++ b/utils/src/ooinstall/cli_installer.py @@ -540,17 +540,18 @@ def get_installed_hosts(hosts, callback_facts): except (KeyError, StopIteration): pass - for host in hosts: if host.connect_to in callback_facts.keys() and is_installed_host(host, callback_facts): installed_hosts.append(host) return installed_hosts def is_installed_host(host, callback_facts): - return 'common' in callback_facts[host.connect_to].keys() and \ + version_found = 'common' in callback_facts[host.connect_to].keys() and \ callback_facts[host.connect_to]['common'].get('version', '') and \ callback_facts[host.connect_to]['common'].get('version', '') != 'None' + return version_found or host.master_lb or host.preconfigured + # pylint: disable=too-many-branches # This pylint error will be corrected shortly in separate PR. def get_hosts_to_run_on(oo_cfg, callback_facts, unattended, force, verbose): -- cgit v1.2.3