From f32a600fcd57c535e8eb4f294907fe45671491ec Mon Sep 17 00:00:00 2001 From: Meni Yakove Date: Fri, 26 Nov 2021 10:01:35 +0200 Subject: [PATCH 1/3] Support skip teardown from os env --- ocp_resources/resource.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ocp_resources/resource.py b/ocp_resources/resource.py index fd0d013ace..1feeeefb01 100644 --- a/ocp_resources/resource.py +++ b/ocp_resources/resource.py @@ -411,6 +411,13 @@ def __enter__(self): return self.deploy() def __exit__(self, exception_type, exception_value, traceback): + # For debug, export kind (class name) + !TEARDOWN to skip resource teardown. + # For example:export VirtualMachineInstance!TEARDOWN=True + no_teardown_from_environment = os.environ.get(f"{self.kind}!TEARDOWN") + if no_teardown_from_environment: + LOGGER.warning(f"Skip teardown. Got {no_teardown_from_environment}") + return + if self.teardown: self.clean_up() From 57cee0fe8b07aa6d27d950c9e80bdec74d0f8585 Mon Sep 17 00:00:00 2001 From: Meni Yakove Date: Fri, 26 Nov 2021 10:12:19 +0200 Subject: [PATCH 2/3] Change env to kind + NOTEARDOW --- ocp_resources/resource.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ocp_resources/resource.py b/ocp_resources/resource.py index 1feeeefb01..4e8c008df9 100644 --- a/ocp_resources/resource.py +++ b/ocp_resources/resource.py @@ -411,9 +411,9 @@ def __enter__(self): return self.deploy() def __exit__(self, exception_type, exception_value, traceback): - # For debug, export kind (class name) + !TEARDOWN to skip resource teardown. - # For example:export VirtualMachineInstance!TEARDOWN=True - no_teardown_from_environment = os.environ.get(f"{self.kind}!TEARDOWN") + # For debug, export kind (class name) + NOTEARDOWN to skip resource teardown. + # For example:export VirtualMachineInstanceNOTEARDOWN=True + no_teardown_from_environment = os.environ.get(f"{self.kind}NOTEARDOWN") if no_teardown_from_environment: LOGGER.warning(f"Skip teardown. Got {no_teardown_from_environment}") return From 435e619cde4ffcb911bf8ce7981d15cff1e34d8d Mon Sep 17 00:00:00 2001 From: Meni Yakove Date: Fri, 26 Nov 2021 11:11:27 +0200 Subject: [PATCH 3/3] Fix NNCP, cal __exit__ and not clean_up() --- ocp_resources/node_network_configuration_policy.py | 2 +- ocp_resources/resource.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ocp_resources/node_network_configuration_policy.py b/ocp_resources/node_network_configuration_policy.py index d8a93a62dc..42a00457d9 100644 --- a/ocp_resources/node_network_configuration_policy.py +++ b/ocp_resources/node_network_configuration_policy.py @@ -185,7 +185,7 @@ def deploy(self): return self except Exception as e: LOGGER.error(e) - self.clean_up() + super().__exit__(exception_type=None, exception_value=None, traceback=None) raise @property diff --git a/ocp_resources/resource.py b/ocp_resources/resource.py index 4e8c008df9..84b419cd69 100644 --- a/ocp_resources/resource.py +++ b/ocp_resources/resource.py @@ -413,9 +413,12 @@ def __enter__(self): def __exit__(self, exception_type, exception_value, traceback): # For debug, export kind (class name) + NOTEARDOWN to skip resource teardown. # For example:export VirtualMachineInstanceNOTEARDOWN=True - no_teardown_from_environment = os.environ.get(f"{self.kind}NOTEARDOWN") + skip_teardown_env = f"{self.kind}NOTEARDOWN" + no_teardown_from_environment = os.environ.get(skip_teardown_env) if no_teardown_from_environment: - LOGGER.warning(f"Skip teardown. Got {no_teardown_from_environment}") + LOGGER.warning( + f"Skip teardown. Got {skip_teardown_env}={no_teardown_from_environment}" + ) return if self.teardown: