Hello community, here is the log from the commit of package fence-agents for openSUSE:Factory checked in at 2016-07-01 10:01:01 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/fence-agents (Old) and /work/SRC/openSUSE:Factory/.fence-agents.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fence-agents" Changes: -------- --- /work/SRC/openSUSE:Factory/fence-agents/fence-agents.changes 2016-03-07 13:23:25.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.fence-agents.new/fence-agents.changes 2016-07-01 10:01:03.000000000 +0200 @@ -1,0 +2,31 @@ +Thu Jun 30 09:46:45 UTC 2016 - kgronl...@suse.com + +- Update to version 4.0.23: + * A lot of changes in fence_compute (OpenStack compute instance) + * Obtain status of nodes from Cisco UCS correctly + * New fence agent for AMT using openwsman + * Python3 support + * Fence agent for PVE can be used by non-root users + * Parallel building and testing of fence agents + * Fix occasional failures of APC fence agent + +- Updated fence_compute patch set: + - Add 0001-fence_compute-Create-nova-client-with-API-2.11.patch + - Add 0002-fence_compute-Keep-compatibility-with-python-novacli.patch + - Add 0003-fence_compute-Only-list-nova-compute-services-when-g.patch + - Add 0004-fence_compute-Don-t-list-hypervisors-but-nova-comput.patch + - Add 0005-fence_compute-Do-not-override-domain-if-it-is-alread.patch + - Add 0006-fence_compute-Fix-use-of-undefined-variable.patch + - Add 0007-fence_compute-Fix-fix_domain-to-not-return-too-early.patch + - Add 0008-fence_compute-Fix-fix_plug_name-when-looking-if-plug.patch + - Add 0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch + - Remove 0001-fence_compute-Add-insecure-command-line-argument.patch + - Remove 0002-fence_compute-Add-region-name-command-line-argument.patch + - Remove 0003-fence_compute-Create-nova-client-with-API-2.11.patch + - Remove 0004-fence_compute-Fix-disabling-force_down-on-node-when-.patch + - Remove 0005-fence_compute-Evacuate-instances-on-all-tenants.patch + - Remove 0006-fence_compute-On-list-don-t-list-hypervisors-but-nov.patch + - Remove 0007-fence_compute-Only-list-nova-compute-services-when-g.patch + - Remove 0008-fence_compute-Deprecate-the-domain-option.patch + +------------------------------------------------------------------- Old: ---- 0001-fence_compute-Add-insecure-command-line-argument.patch 0002-fence_compute-Add-region-name-command-line-argument.patch 0003-fence_compute-Create-nova-client-with-API-2.11.patch 0004-fence_compute-Fix-disabling-force_down-on-node-when-.patch 0005-fence_compute-Evacuate-instances-on-all-tenants.patch 0006-fence_compute-On-list-don-t-list-hypervisors-but-nov.patch 0007-fence_compute-Only-list-nova-compute-services-when-g.patch 0008-fence_compute-Deprecate-the-domain-option.patch fence-agents-4.0.22+git.1455008135.15c5e92.tar.xz New: ---- 0001-fence_compute-Create-nova-client-with-API-2.11.patch 0002-fence_compute-Keep-compatibility-with-python-novacli.patch 0003-fence_compute-Only-list-nova-compute-services-when-g.patch 0004-fence_compute-Don-t-list-hypervisors-but-nova-comput.patch 0005-fence_compute-Do-not-override-domain-if-it-is-alread.patch 0006-fence_compute-Fix-use-of-undefined-variable.patch 0007-fence_compute-Fix-fix_domain-to-not-return-too-early.patch 0008-fence_compute-Fix-fix_plug_name-when-looking-if-plug.patch 0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch fence-agents-4.0.23.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ fence-agents.spec ++++++ --- /var/tmp/diff_new_pack.5VEBZV/_old 2016-07-01 10:01:04.000000000 +0200 +++ /var/tmp/diff_new_pack.5VEBZV/_new 2016-07-01 10:01:04.000000000 +0200 @@ -22,26 +22,28 @@ Summary: Fence Agents for Pacemaker from RHCS License: GPL-2.0 and LGPL-2.1 Group: Productivity/Clustering/HA -Version: 4.0.22+git.1455008135.15c5e92 +Version: 4.0.23 Release: 0 Url: https://github.com/ClusterLabs/fence-agents -Source0: %{name}-%{version}.tar.xz -# PATCH-FIX-UPSTREAM: fence_compute: Add --insecure command line argument -Patch1: 0001-fence_compute-Add-insecure-command-line-argument.patch -# PATCH-FIX-UPSTREAM: fence_compute: Add --region-name command line argument -Patch2: 0002-fence_compute-Add-region-name-command-line-argument.patch +Source0: %{name}-%{version}.tar.gz # PATCH-FIX-UPSTREAM: fence_compute: Create nova client with API 2.11 -Patch3: 0003-fence_compute-Create-nova-client-with-API-2.11.patch -# PATCH-FIX-UPSTREAM: fence_compute: Fix disabling force_down on node when action is on -Patch4: 0004-fence_compute-Fix-disabling-force_down-on-node-when-.patch -# PATCH-FIX-UPSTREAM: fence_compute: Evacuate instances on all tenants -Patch5: 0005-fence_compute-Evacuate-instances-on-all-tenants.patch -# PATCH-FIX-UPSTREAM: fence_compute: On list, don't list hypervisors but nova-compute services -Patch6: 0006-fence_compute-On-list-don-t-list-hypervisors-but-nov.patch +Patch1: 0001-fence_compute-Create-nova-client-with-API-2.11.patch +# PATCH-FIX-UPSTREAM: fence_compute: Keep compatibility with python-novaclient <= 2.26.0 +Patch2: 0002-fence_compute-Keep-compatibility-with-python-novacli.patch # PATCH-FIX-UPSTREAM: fence_compute: Only list nova-compute services when getting status -Patch7: 0007-fence_compute-Only-list-nova-compute-services-when-g.patch -# PATCH-FIX-UPSTREAM: fence_compute: Deprecate the domain option -Patch8: 0008-fence_compute-Deprecate-the-domain-option.patch +Patch3: 0003-fence_compute-Only-list-nova-compute-services-when-g.patch +# PATCH-FIX-UPSTREAM: fence_compute: On list, don't list hypervisors but nova-compute services +Patch4: 0004-fence_compute-Don-t-list-hypervisors-but-nova-comput.patch +# PATCH-FIX-UPSTREAM: fence_compute: Do not override domain if it is already correct +Patch5: 0005-fence_compute-Do-not-override-domain-if-it-is-alread.patch +# PATCH-FIX-UPSTREAM: fence_compute: Fix use of undefined variable +Patch6: 0006-fence_compute-Fix-use-of-undefined-variable.patch +# PATCH-FIX-UPSTREAM: fence_compute: Fix fix_domain to not return too early +Patch7: 0007-fence_compute-Fix-fix_domain-to-not-return-too-early.patch +# PATCH-FIX-UPSTREAM: fence_compute: Fix fix_plug_name when looking if plug has domain +Patch8: 0008-fence_compute-Fix-fix_plug_name-when-looking-if-plug.patch +# PATCH-FIX-UPSTREAM: fence_compute: Fix disabling force_down on node when action is on +Patch9: 0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf @@ -53,6 +55,7 @@ BuildRequires: libxslt BuildRequires: mozilla-nspr-devel BuildRequires: mozilla-nss-devel +BuildRequires: openwsman-python BuildRequires: perl BuildRequires: perl-Net-Telnet BuildRequires: pkg-config @@ -66,6 +69,7 @@ Requires: net-snmp Requires: openssh +Requires: openwsman-python Requires: perl-Net-Telnet Requires: python-curl Requires: python-openssl @@ -110,6 +114,7 @@ %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 %build CFLAGS="${CFLAGS} ${RPM_OPT_FLAGS}" ++++++ 0003-fence_compute-Create-nova-client-with-API-2.11.patch -> 0001-fence_compute-Create-nova-client-with-API-2.11.patch ++++++ --- /work/SRC/openSUSE:Factory/fence-agents/0003-fence_compute-Create-nova-client-with-API-2.11.patch 2016-03-07 13:23:22.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.fence-agents.new/0001-fence_compute-Create-nova-client-with-API-2.11.patch 2016-07-01 10:01:03.000000000 +0200 @@ -1,7 +1,7 @@ -From 105f9a9066b3907da4cf1ecde3a484bd8c546b3f Mon Sep 17 00:00:00 2001 +From e774f32d1cd912de1f208be74faa44c3d0a1df41 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 3 Feb 2016 11:33:32 +0100 -Subject: [PATCH 3/8] fence_compute: Create nova client with API 2.11 +Subject: [PATCH 1/9] fence_compute: Create nova client with API 2.11 The force_down API requires to use version 2.11 or later. --- @@ -9,10 +9,10 @@ 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py -index d1d797e..b443a3c 100644 +index b93580b..a4f62dc 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py -@@ -344,7 +344,7 @@ def main(): +@@ -348,7 +348,7 @@ def main(): sys.exit(0) # The first argument is the Nova client version @@ -22,5 +22,5 @@ options["--password"], options["--tenant-name"], -- -2.6.2 +2.8.3 ++++++ 0002-fence_compute-Keep-compatibility-with-python-novacli.patch ++++++ >From 29425375744cc04d85a1e25a839de47593913c87 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 23 Mar 2016 11:03:24 +0100 Subject: [PATCH 2/9] fence_compute: Keep compatibility with python-novaclient <= 2.26.0 --- fence/agents/compute/fence_compute.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index a4f62dc..265a347 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -324,7 +324,12 @@ def main(): run_delay(options) try: - from novaclient import client as nova_client + from distutils.version import LooseVersion + except ImportError: + fail_usage("distutils not found or not accessible") + + try: + import novaclient except ImportError: fail_usage("nova not found or not accessible") @@ -347,8 +352,12 @@ def main(): elif options["--action"] in ["monitor", "status"]: sys.exit(0) - # The first argument is the Nova client version - nova = nova_client.Client('2.11', + if LooseVersion(novaclient.__version__) <= LooseVersion('2.26.0') : + api_version = '2' + else: + api_version = '2.11' + + nova = novaclient.client.Client(api_version, options["--username"], options["--password"], options["--tenant-name"], -- 2.8.3 ++++++ 0007-fence_compute-Only-list-nova-compute-services-when-g.patch -> 0003-fence_compute-Only-list-nova-compute-services-when-g.patch ++++++ --- /work/SRC/openSUSE:Factory/fence-agents/0007-fence_compute-Only-list-nova-compute-services-when-g.patch 2016-03-07 13:23:24.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.fence-agents.new/0003-fence_compute-Only-list-nova-compute-services-when-g.patch 2016-07-01 10:01:03.000000000 +0200 @@ -1,7 +1,7 @@ -From 35a454b4a7b7e5890d204c1a9893b2909ddccd27 Mon Sep 17 00:00:00 2001 +From 3cdf6e12ca6af51dcc9ec4bb5bf4d521922e8339 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Thu, 4 Feb 2016 10:02:49 +0100 -Subject: [PATCH 7/8] fence_compute: Only list nova-compute services when +Subject: [PATCH 3/9] fence_compute: Only list nova-compute services when getting status We don't care about other services. @@ -10,7 +10,7 @@ 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py -index 7d7aa49..0273aa2 100644 +index e3d5061..bb3798b 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -34,7 +34,7 @@ def get_power_status(_, options): @@ -23,5 +23,5 @@ logging.debug("Status of %s is %s" % (service.binary, service.state)) if service.binary == "nova-compute": -- -2.6.2 +2.8.3 ++++++ 0004-fence_compute-Don-t-list-hypervisors-but-nova-comput.patch ++++++ >From 5cf13d5866d0541281c914ab4edf42cd09d5462b Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Thu, 4 Feb 2016 09:59:43 +0100 Subject: [PATCH 4/9] fence_compute: Don't list hypervisors but nova-compute services Everything we do (evacuate, force_down) is on nova-compute services, so there's no reason to list hypervisors; just directly look for nova-compute services. This matters as hypervisors are always FQDN, while nova service hosts can be short hostnames. --- fence/agents/compute/fence_compute.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index bb3798b..f32c795 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -218,23 +218,23 @@ def fix_domain(options): if nova: # Find it in nova - hypervisors = nova.hypervisors.list() - for hypervisor in hypervisors: - shorthost = hypervisor.hypervisor_hostname.split('.')[0] + services = nova.services.list(binary="nova-compute") + for service in services: + shorthost = service.host.split('.')[0] - if shorthost == hypervisor.hypervisor_hostname: + if shorthost == service.host: # Nova is not using FQDN calculated = "" else: # Compute nodes are named as FQDN, strip off the hostname - calculated = hypervisor.hypervisor_hostname.replace(shorthost+".", "") + calculated = service.host.replace(shorthost+".", "") domains[calculated] = shorthost if calculated == last_domain: # Avoid complaining for each compute node with the same name # One hopes they don't appear interleaved as A.com B.com A.com B.com - logging.debug("Calculated the same domain from: %s" % hypervisor.hypervisor_hostname) + logging.debug("Calculated the same domain from: %s" % service.host) elif "--domain" in options and options["--domain"] == calculated: # Supplied domain name is valid @@ -243,7 +243,7 @@ def fix_domain(options): elif "--domain" in options: # Warn in case nova isn't available at some point logging.warning("Supplied domain '%s' does not match the one calculated from: %s" - % (options["--domain"], hypervisor.hypervisor_hostname)) + % (options["--domain"], service.host)) last_domain = calculated @@ -255,7 +255,7 @@ def fix_domain(options): elif len(domains) == 1: logging.error("Overriding supplied domain '%s' does not match the one calculated from: %s" - % (options["--domain"], hypervisor.hypervisor_hostname)) + % (options["--domain"], service.host)) options["--domain"] = last_domain elif len(domains) > 1: @@ -294,9 +294,9 @@ def get_plugs_list(_, options): result = {} if nova: - hypervisors = nova.hypervisors.list() - for hypervisor in hypervisors: - longhost = hypervisor.hypervisor_hostname + services = nova.services.list(binary="nova-compute") + for service in services: + longhost = service.host shorthost = longhost.split('.')[0] result[longhost] = ("", None) result[shorthost] = ("", None) -- 2.8.3 ++++++ 0005-fence_compute-Do-not-override-domain-if-it-is-alread.patch ++++++ >From 8cb524bea4a2e84787bddbcba9e42e9377d0c94c Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 29 Jun 2016 09:42:56 +0200 Subject: [PATCH 5/9] fence_compute: Do not override domain if it is already correct --- fence/agents/compute/fence_compute.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index f32c795..b0f3c2e 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -253,8 +253,8 @@ def fix_domain(options): elif len(domains) == 1 and "--domain" not in options: options["--domain"] = last_domain - elif len(domains) == 1: - logging.error("Overriding supplied domain '%s' does not match the one calculated from: %s" + elif len(domains) == 1 and options["--domain"] != last_domain: + logging.error("Overriding supplied domain '%s' as it does not match the one calculated from: %s" % (options["--domain"], service.host)) options["--domain"] = last_domain -- 2.8.3 ++++++ 0006-fence_compute-Fix-use-of-undefined-variable.patch ++++++ >From 12596126400e54fdd6d94073db6eda1e3f456fdb Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 29 Jun 2016 09:43:57 +0200 Subject: [PATCH 6/9] fence_compute: Fix use of undefined variable --- fence/agents/compute/fence_compute.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index b0f3c2e..8665e50 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -263,6 +263,8 @@ def fix_domain(options): % (options["--domain"], repr(domains))) sys.exit(1) + return last_domain + def fix_plug_name(options): if options["--action"] == "list": return @@ -270,15 +272,16 @@ def fix_plug_name(options): if "--plug" not in options: return - fix_domain(options) + calculated = fix_domain(options) + + if calculated is None or "--domain" not in options: + # Nothing supplied and nova not available... what to do... nothing + return + short_plug = options["--plug"].split('.')[0] logging.debug("Checking target '%s' against calculated domain '%s'"% (options["--plug"], calculated)) - if "--domain" not in options: - # Nothing supplied and nova not available... what to do... nothing - return - - elif options["--domain"] == "": + if options["--domain"] == "": # Ensure any domain is stripped off since nova isn't using FQDN options["--plug"] = short_plug -- 2.8.3 ++++++ 0007-fence_compute-Fix-fix_domain-to-not-return-too-early.patch ++++++ >From 70e2867a472530a03d9d8c3ebb6c98361a692bf9 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 29 Jun 2016 09:50:12 +0200 Subject: [PATCH 7/9] fence_compute: Fix fix_domain to not return too early We were returning from the loop, while we want the rest of the code to still execute (in case there are multiple domains in nova). Also simplify the code... --- fence/agents/compute/fence_compute.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index 8665e50..3b0c729 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -229,24 +229,20 @@ def fix_domain(options): # Compute nodes are named as FQDN, strip off the hostname calculated = service.host.replace(shorthost+".", "") - domains[calculated] = shorthost - if calculated == last_domain: # Avoid complaining for each compute node with the same name # One hopes they don't appear interleaved as A.com B.com A.com B.com logging.debug("Calculated the same domain from: %s" % service.host) + continue - elif "--domain" in options and options["--domain"] == calculated: - # Supplied domain name is valid - return + domains[calculated] = service.host + last_domain = calculated - elif "--domain" in options: + if "--domain" in options and options["--domain"] != calculated: # Warn in case nova isn't available at some point logging.warning("Supplied domain '%s' does not match the one calculated from: %s" % (options["--domain"], service.host)) - last_domain = calculated - if len(domains) == 0 and "--domain" not in options: logging.error("Could not calculate the domain names used by compute nodes in nova") @@ -255,7 +251,7 @@ def fix_domain(options): elif len(domains) == 1 and options["--domain"] != last_domain: logging.error("Overriding supplied domain '%s' as it does not match the one calculated from: %s" - % (options["--domain"], service.host)) + % (options["--domain"], domains[last_domain])) options["--domain"] = last_domain elif len(domains) > 1: -- 2.8.3 ++++++ 0008-fence_compute-Fix-fix_plug_name-when-looking-if-plug.patch ++++++ >From 281bb6e1e842f298ff16f1e3cf5994c15d3ad1f3 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 29 Jun 2016 09:51:37 +0200 Subject: [PATCH 8/9] fence_compute: Fix fix_plug_name when looking if plug has domain We shouldn't check if the plug name contains the domain, but if it ends with the domain. --- fence/agents/compute/fence_compute.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py index 3b0c729..b083660 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py @@ -281,8 +281,8 @@ def fix_plug_name(options): # Ensure any domain is stripped off since nova isn't using FQDN options["--plug"] = short_plug - elif options["--plug"].find(options["--domain"]): - # Plug already contains the domain, don't re-add + elif options["--plug"].endswith(options["--domain"]): + # Plug already uses the domain, don't re-add return else: -- 2.8.3 ++++++ 0004-fence_compute-Fix-disabling-force_down-on-node-when-.patch -> 0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch ++++++ --- /work/SRC/openSUSE:Factory/fence-agents/0004-fence_compute-Fix-disabling-force_down-on-node-when-.patch 2016-03-07 13:23:23.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.fence-agents.new/0009-fence_compute-Fix-disabling-force_down-on-node-when-.patch 2016-07-01 10:01:03.000000000 +0200 @@ -1,7 +1,7 @@ -From 6cbbe5d9e81ddeee91d06660f27a4a51117aa0ed Mon Sep 17 00:00:00 2001 +From 832011f2287f1a9f59da727312e38fb9622dc809 Mon Sep 17 00:00:00 2001 From: Vincent Untz <vu...@suse.com> Date: Wed, 3 Feb 2016 13:45:52 +0100 -Subject: [PATCH 4/8] fence_compute: Fix disabling force_down on node when +Subject: [PATCH 9/9] fence_compute: Fix disabling force_down on node when action is on When the action is on, the goal is to disable force_down for the @@ -15,10 +15,10 @@ 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/fence/agents/compute/fence_compute.py b/fence/agents/compute/fence_compute.py -index b443a3c..feb86c0 100644 +index e3d5061..98ad177 100644 --- a/fence/agents/compute/fence_compute.py +++ b/fence/agents/compute/fence_compute.py -@@ -148,23 +148,23 @@ def set_power_status(_, options): +@@ -160,23 +160,23 @@ def set_power_status(_, options): return if options["--action"] == "on": @@ -27,7 +27,7 @@ + nova.services.force_down( + options["--plug"], "nova-compute", force_down=False) + except Exception as e: -+ # In theory, if foce_down=False fails, that's for the exact ++ # In theory, if force_down=False fails, that's for the exact + # same possible reasons that below with force_down=True + # eg. either an incompatible version or an old client. + # Since it's about forcing back to a default value, there is @@ -44,7 +44,7 @@ - nova.services.force_down( - options["--plug"], "nova-compute", force_down=False) - except Exception as e: -- # In theory, if foce_down=False fails, that's for the exact +- # In theory, if force_down=False fails, that's for the exact - # same possible reasons that below with force_down=True - # eg. either an incompatible version or an old client. - # Since it's about forcing back to a default value, there is @@ -57,5 +57,5 @@ # Pretend we're 'on' so that the fencing library doesn't loop forever waiting for the node to boot override_status = "on" -- -2.6.2 +2.8.3