Blame SOURCES/bz1549699-2-fence_compute-fence_evacuate-fix-compute-domain.patch

2d8bb4
From 15635df9d12ce693f473d5ebcd5b7cacb81e2295 Mon Sep 17 00:00:00 2001
2d8bb4
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
2d8bb4
Date: Mon, 16 Jul 2018 11:14:16 +0200
2d8bb4
Subject: [PATCH] fence_compute/fence_evacuate: workaround for compute-domain
2d8bb4
 regression
2d8bb4
2d8bb4
---
2d8bb4
 agents/compute/fence_compute.py        | 24 +++++++++++++++++++-----
2d8bb4
 agents/evacuate/fence_evacuate.py      | 24 +++++++++++++++++++-----
2d8bb4
 tests/data/metadata/fence_compute.xml  | 24 ++++++++++++++++++++++--
2d8bb4
 tests/data/metadata/fence_evacuate.xml | 24 ++++++++++++++++++++++--
2d8bb4
 4 files changed, 82 insertions(+), 14 deletions(-)
2d8bb4
2d8bb4
diff --git a/agents/compute/fence_compute.py b/agents/compute/fence_compute.py
2d8bb4
index ec2d093c..aac9b296 100644
2d8bb4
--- a/agents/compute/fence_compute.py
2d8bb4
+++ b/agents/compute/fence_compute.py
2d8bb4
@@ -353,7 +353,7 @@ def define_new_opts():
2d8bb4
 		"default" : "",
2d8bb4
 		"order": 1,
2d8bb4
 	}
2d8bb4
-	all_opt["user_domain"] = {
2d8bb4
+	all_opt["user-domain"] = {
2d8bb4
 		"getopt" : "u:",
2d8bb4
 		"longopt" : "user-domain",
2d8bb4
 		"help" : "-u, --user-domain=[name]       Keystone v3 User Domain",
2d8bb4
@@ -362,7 +362,7 @@ def define_new_opts():
2d8bb4
 		"default" : "Default",
2d8bb4
 		"order": 2,
2d8bb4
 	}
2d8bb4
-	all_opt["project_domain"] = {
2d8bb4
+	all_opt["project-domain"] = {
2d8bb4
 		"getopt" : "P:",
2d8bb4
 		"longopt" : "project-domain",
2d8bb4
 		"help" : "-d, --project-domain=[name]    Keystone v3 Project Domain",
2d8bb4
@@ -433,6 +433,14 @@ def define_new_opts():
2d8bb4
 		"default" : "False",
2d8bb4
 		"order": 5,
2d8bb4
 	}
2d8bb4
+	all_opt["compute-domain"] = {
2d8bb4
+		"getopt" : ":",
2d8bb4
+		"longopt" : "compute-domain",
2d8bb4
+		"help" : "--compute-domain=[string]      Replaced by --domain",
2d8bb4
+		"required" : "0",
2d8bb4
+		"shortdesc" : "Replaced by domain",
2d8bb4
+		"order": 6,
2d8bb4
+	}
2d8bb4
 
2d8bb4
 def set_multi_power_fn(connection, options, set_power_fn, get_power_fn, retry_attempts=1):
2d8bb4
 	for _ in range(retry_attempts):
2d8bb4
@@ -450,9 +458,10 @@ def main():
2d8bb4
 	global override_status
2d8bb4
 	atexit.register(atexit_handler)
2d8bb4
 
2d8bb4
-	device_opt = ["login", "passwd", "tenant_name", "auth_url", "fabric_fencing",
2d8bb4
-		      "no_login", "no_password", "port", "domain", "project_domain", "user_domain",
2d8bb4
-		      "no_shared_storage", "endpoint_type", "record_only", "instance_filtering", "insecure", "region_name"]
2d8bb4
+	device_opt = ["login", "passwd", "tenant_name", "auth_url", "fabric_fencing", "no_login",
2d8bb4
+			"no_password", "port", "domain", "compute-domain", "project-domain",
2d8bb4
+			"user-domain", "no_shared_storage", "endpoint_type", "record_only",
2d8bb4
+			"instance_filtering", "insecure", "region_name"]
2d8bb4
 	define_new_opts()
2d8bb4
 	all_opt["shell_timeout"]["default"] = "180"
2d8bb4
 
2d8bb4
@@ -470,6 +479,11 @@ def main():
2d8bb4
 
2d8bb4
 	run_delay(options)
2d8bb4
 
2d8bb4
+	# workaround to avoid regressions
2d8bb4
+	if "--compute-domain" in options and options["--compute-domain"]:
2d8bb4
+		options["--domain"] = options["--compute-domain"]
2d8bb4
+		del options["--domain"]
2d8bb4
+
2d8bb4
 	logging.debug("Running "+options["--action"])
2d8bb4
 	connection = create_nova_connection(options)
2d8bb4
 
2d8bb4
diff --git a/agents/evacuate/fence_evacuate.py b/agents/evacuate/fence_evacuate.py
2d8bb4
index 615dede7..529a60dd 100644
2d8bb4
--- a/agents/evacuate/fence_evacuate.py
2d8bb4
+++ b/agents/evacuate/fence_evacuate.py
2d8bb4
@@ -287,7 +287,7 @@ def define_new_opts():
2d8bb4
 		"default" : "",
2d8bb4
 		"order": 1,
2d8bb4
 	}
2d8bb4
-	all_opt["user_domain"] = {
2d8bb4
+	all_opt["user-domain"] = {
2d8bb4
 		"getopt" : "u:",
2d8bb4
 		"longopt" : "user-domain",
2d8bb4
 		"help" : "-u, --user-domain=[name]       Keystone v3 User Domain",
2d8bb4
@@ -296,7 +296,7 @@ def define_new_opts():
2d8bb4
 		"default" : "Default",
2d8bb4
 		"order": 2,
2d8bb4
 	}
2d8bb4
-	all_opt["project_domain"] = {
2d8bb4
+	all_opt["project-domain"] = {
2d8bb4
 		"getopt" : "P:",
2d8bb4
 		"longopt" : "project-domain",
2d8bb4
 		"help" : "-d, --project-domain=[name]    Keystone v3 Project Domain",
2d8bb4
@@ -358,14 +358,22 @@ def define_new_opts():
2d8bb4
 		"default" : "False",
2d8bb4
 		"order": 5,
2d8bb4
 	}
2d8bb4
+	all_opt["compute-domain"] = {
2d8bb4
+		"getopt" : ":",
2d8bb4
+		"longopt" : "compute-domain",
2d8bb4
+		"help" : "--compute-domain=[string]      Replaced by --domain",
2d8bb4
+		"required" : "0",
2d8bb4
+		"shortdesc" : "Replaced by domain",
2d8bb4
+		"order": 6,
2d8bb4
+	}
2d8bb4
 
2d8bb4
 def main():
2d8bb4
 	atexit.register(atexit_handler)
2d8bb4
 
2d8bb4
 	device_opt = ["login", "passwd", "tenant_name", "auth_url",
2d8bb4
-		      "no_login", "no_password", "port", "domain", "project_domain",
2d8bb4
-		      "user_domain", "no_shared_storage", "endpoint_type",
2d8bb4
-		      "instance_filtering", "insecure", "region_name"]
2d8bb4
+		      "no_login", "no_password", "port", "domain", "compute-domain",
2d8bb4
+		      "project-domain", "user-domain", "no_shared_storage",
2d8bb4
+		      "endpoint_type", "instance_filtering", "insecure", "region_name"]
2d8bb4
 	define_new_opts()
2d8bb4
 	all_opt["shell_timeout"]["default"] = "180"
2d8bb4
 
2d8bb4
@@ -380,6 +388,12 @@ def main():
2d8bb4
 
2d8bb4
 	run_delay(options)
2d8bb4
 
2d8bb4
+	# workaround to avoid regressions
2d8bb4
+	if "--compute-domain" in options and options["--compute-domain"]:
2d8bb4
+		options["--domain"] = options["--compute-domain"]
2d8bb4
+		del options["--domain"]
2d8bb4
+
2d8bb4
+
2d8bb4
 	connection = create_nova_connection(options)
2d8bb4
 
2d8bb4
 	# Un-evacuating a server doesn't make sense
2d8bb4
diff --git a/tests/data/metadata/fence_compute.xml b/tests/data/metadata/fence_compute.xml
2d8bb4
index e1dac97c..1dcbfc54 100644
2d8bb4
--- a/tests/data/metadata/fence_compute.xml
2d8bb4
+++ b/tests/data/metadata/fence_compute.xml
2d8bb4
@@ -73,12 +73,22 @@
2d8bb4
 		<content type="boolean" default="False"  />
2d8bb4
 		<shortdesc lang="en">Allow Insecure TLS Requests</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
-	<parameter name="project_domain" unique="0" required="0">
2d8bb4
+	<parameter name="project-domain" unique="0" required="0" deprecated="1">
2d8bb4
 		<getopt mixed="-d, --project-domain=[name]" />
2d8bb4
 		<content type="string" default="Default"  />
2d8bb4
 		<shortdesc lang="en">Keystone v3 Project Domain</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
-	<parameter name="user_domain" unique="0" required="0">
2d8bb4
+	<parameter name="project_domain" unique="0" required="0" obsoletes="project-domain">
2d8bb4
+		<getopt mixed="-d, --project-domain=[name]" />
2d8bb4
+		<content type="string" default="Default"  />
2d8bb4
+		<shortdesc lang="en">Keystone v3 Project Domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="user-domain" unique="0" required="0" deprecated="1">
2d8bb4
+		<getopt mixed="-u, --user-domain=[name]" />
2d8bb4
+		<content type="string" default="Default"  />
2d8bb4
+		<shortdesc lang="en">Keystone v3 User Domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="user_domain" unique="0" required="0" obsoletes="user-domain">
2d8bb4
 		<getopt mixed="-u, --user-domain=[name]" />
2d8bb4
 		<content type="string" default="Default"  />
2d8bb4
 		<shortdesc lang="en">Keystone v3 User Domain</shortdesc>
2d8bb4
@@ -103,6 +113,16 @@
2d8bb4
 		<content type="string" default="False"  />
2d8bb4
 		<shortdesc lang="en">Only record the target as needing evacuation</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
+	<parameter name="compute-domain" unique="0" required="0" deprecated="1">
2d8bb4
+		<getopt mixed="--compute-domain=[string]" />
2d8bb4
+		<content type="string"  />
2d8bb4
+		<shortdesc lang="en">Replaced by domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="compute_domain" unique="0" required="0" obsoletes="compute-domain">
2d8bb4
+		<getopt mixed="--compute-domain=[string]" />
2d8bb4
+		<content type="string"  />
2d8bb4
+		<shortdesc lang="en">Replaced by domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
 	<parameter name="quiet" unique="0" required="0">
2d8bb4
 		<getopt mixed="-q, --quiet" />
2d8bb4
 		<content type="boolean"  />
2d8bb4
diff --git a/tests/data/metadata/fence_evacuate.xml b/tests/data/metadata/fence_evacuate.xml
2d8bb4
index 6f8bd0a4..4f1f6a58 100644
2d8bb4
--- a/tests/data/metadata/fence_evacuate.xml
2d8bb4
+++ b/tests/data/metadata/fence_evacuate.xml
2d8bb4
@@ -73,12 +73,22 @@
2d8bb4
 		<content type="boolean" default="False"  />
2d8bb4
 		<shortdesc lang="en">Allow Insecure TLS Requests</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
-	<parameter name="project_domain" unique="0" required="0">
2d8bb4
+	<parameter name="project-domain" unique="0" required="0" deprecated="1">
2d8bb4
 		<getopt mixed="-d, --project-domain=[name]" />
2d8bb4
 		<content type="string" default="Default"  />
2d8bb4
 		<shortdesc lang="en">Keystone v3 Project Domain</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
-	<parameter name="user_domain" unique="0" required="0">
2d8bb4
+	<parameter name="project_domain" unique="0" required="0" obsoletes="project-domain">
2d8bb4
+		<getopt mixed="-d, --project-domain=[name]" />
2d8bb4
+		<content type="string" default="Default"  />
2d8bb4
+		<shortdesc lang="en">Keystone v3 Project Domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="user-domain" unique="0" required="0" deprecated="1">
2d8bb4
+		<getopt mixed="-u, --user-domain=[name]" />
2d8bb4
+		<content type="string" default="Default"  />
2d8bb4
+		<shortdesc lang="en">Keystone v3 User Domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="user_domain" unique="0" required="0" obsoletes="user-domain">
2d8bb4
 		<getopt mixed="-u, --user-domain=[name]" />
2d8bb4
 		<content type="string" default="Default"  />
2d8bb4
 		<shortdesc lang="en">Keystone v3 User Domain</shortdesc>
2d8bb4
@@ -98,6 +108,16 @@
2d8bb4
 		<content type="boolean" default="False"  />
2d8bb4
 		<shortdesc lang="en">Disable functionality for dealing with shared storage</shortdesc>
2d8bb4
 	</parameter>
2d8bb4
+	<parameter name="compute-domain" unique="0" required="0" deprecated="1">
2d8bb4
+		<getopt mixed="--compute-domain=[string]" />
2d8bb4
+		<content type="string"  />
2d8bb4
+		<shortdesc lang="en">Replaced by domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
+	<parameter name="compute_domain" unique="0" required="0" obsoletes="compute-domain">
2d8bb4
+		<getopt mixed="--compute-domain=[string]" />
2d8bb4
+		<content type="string"  />
2d8bb4
+		<shortdesc lang="en">Replaced by domain</shortdesc>
2d8bb4
+	</parameter>
2d8bb4
 	<parameter name="quiet" unique="0" required="0">
2d8bb4
 		<getopt mixed="-q, --quiet" />
2d8bb4
 		<content type="boolean"  />
2d8bb4
-- 
2d8bb4
2.17.1
2d8bb4