Patch cnf_testsuite namespaces if they exist 06/74506/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Wed, 17 Jan 2024 14:00:55 +0000 (15:00 +0100)
committerCédric Ollivier <cedric.ollivier@orange.com>
Wed, 17 Jan 2024 14:03:42 +0000 (15:03 +0100)
Change-Id: Ibace5356cb1f458fa8b929c0c84b2f06e5852ea0
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
functest_kubernetes/cnf_conformance/conformance.py

index 7832e5c..1c72a05 100644 (file)
@@ -63,13 +63,27 @@ class CNFConformance(testcase.TestCase):
         """Implement initialization and pre-reqs steps"""
         if os.path.exists(os.path.join(self.src_dir, "results")):
             shutil.rmtree(os.path.join(self.src_dir, "results"))
+        api_response = self.corev1.list_namespace()
         for namespace in ["cnf-testsuite", "default", "litmus"]:
-            api_response = self.corev1.create_namespace(
-                client.V1Namespace(metadata=client.V1ObjectMeta(
-                    generate_name=namespace, labels={
-                        "pod-security.kubernetes.io/enforce": "baseline"})))
-            self.__logger.debug(
-                "create_namespace: %s", api_response.metadata.name)
+            for ns in api_response.items:
+                if ns.metadata.name == namespace:
+                    self.corev1.patch_namespace(
+                        namespace,
+                        client.V1Namespace(metadata=client.V1ObjectMeta(
+                            labels={
+                                "pod-security.kubernetes.io/enforce":
+                                    "baseline"})))
+                    self.__logger.debug(
+                        "patch_namespace: %s", namespace)
+                    break
+            else:
+                self.corev1.create_namespace(
+                    client.V1Namespace(metadata=client.V1ObjectMeta(
+                        name=namespace, labels={
+                            "pod-security.kubernetes.io/enforce":
+                                "baseline"})))
+                self.__logger.debug(
+                    "create_namespace: %s", namespace)
         os.chdir(self.src_dir)
         cmd = ['cnf-testsuite', 'setup', '-l', 'debug']
         try: