From 8bdc399b276d30d22aa6d85304839d5b030d16a1 Mon Sep 17 00:00:00 2001
From: Robert Schmidt <robert.schmidt@openairinterface.org>
Date: Fri, 20 Sep 2024 20:20:38 +0200
Subject: [PATCH] Remove AutoTerminateUEeNB() functions, use auto_exec to make
 CI always undeploy

---
 ci-scripts/cls_oaicitest.py                   | 76 ++-----------------
 ci-scripts/main.py                            | 13 +---
 ci-scripts/tests/ping-iperf.py                |  6 +-
 .../xml_files/container_4g_l2sim_tdd.xml      |  9 +++
 .../container_4g_rfsim_fdd_05MHz.xml          |  9 +++
 .../container_4g_rfsim_fdd_05MHz_noS1.xml     |  9 +++
 .../container_4g_rfsim_fdd_10MHz.xml          |  9 +++
 .../container_4g_rfsim_fdd_20MHz.xml          |  9 +++
 .../xml_files/container_4g_rfsim_fembms.xml   |  9 +++
 .../xml_files/container_4g_rfsim_mbms.xml     |  9 +++
 .../container_4g_rfsim_tdd_05MHz.xml          |  9 +++
 .../xml_files/container_5g_e1_rfsim.xml       |  9 +++
 .../xml_files/container_5g_f1_rfsim.xml       |  9 +++
 .../xml_files/container_5g_fdd_rfsim.xml      |  9 +++
 .../xml_files/container_5g_l2sim_tdd.xml      |  9 +++
 ci-scripts/xml_files/container_5g_rfsim.xml   |  9 +++
 .../xml_files/container_5g_rfsim_24prb.xml    |  9 +++
 .../xml_files/container_5g_rfsim_2x2.xml      |  9 +++
 .../container_5g_rfsim_f1_accelleran.xml      |  9 +++
 .../container_5g_rfsim_fdd_phytest.xml        |  9 +++
 .../container_5g_rfsim_fr2_32prb.xml          |  9 +++
 .../xml_files/container_5g_rfsim_ntn_geo.xml  |  9 +++
 .../xml_files/container_5g_rfsim_sidelink.xml |  9 +++
 .../xml_files/container_5g_rfsim_tdd_dora.xml | 18 +++++
 .../xml_files/container_5g_rfsim_u0_25prb.xml |  9 +++
 .../container_lte_b200_fdd_05Mhz_tm1.xml      |  4 +
 ...container_lte_b200_fdd_05Mhz_tm1_if4_5.xml |  4 +
 ...lte_b200_fdd_05Mhz_tm1_no_rrc_activity.xml |  4 +
 .../container_lte_b200_fdd_10Mhz_tm1.xml      |  4 +
 .../container_lte_b200_fdd_10Mhz_tm1_cdrx.xml |  4 +
 ...container_lte_b200_fdd_10Mhz_tm1_oaiue.xml | 20 +++++
 .../container_lte_b200_fdd_20Mhz_tm1.xml      |  4 +
 .../container_lte_b200_tdd_05Mhz_tm1.xml      |  4 +
 ...container_lte_b200_tdd_05Mhz_tm1_if4_5.xml |  5 +-
 .../container_lte_b200_tdd_05Mhz_tm2.xml      |  4 +
 .../container_lte_b200_tdd_10Mhz_tm1.xml      |  4 +
 .../container_lte_b200_tdd_20Mhz_tm1.xml      |  4 +
 ...e_b200_tdd_20Mhz_tm1_default_scheduler.xml |  4 +
 .../container_lte_n3xx_tdd_2x2_tm1.xml        | 10 +++
 .../container_lte_n3xx_tdd_2x2_tm2.xml        | 11 +++
 .../xml_files/container_nsa_b200_quectel.xml  | 22 ++++++
 .../xml_files/container_sa_aerial_quectel.xml | 11 +++
 .../xml_files/container_sa_aw2s_asue.xml      | 11 +++
 .../xml_files/container_sa_b200_quectel.xml   |  4 +
 .../container_sa_e1_b200_quectel.xml          | 14 +++-
 .../container_sa_f1_b200_quectel.xml          |  4 +
 .../xml_files/container_sa_fhi72_vvdn_up2.xml | 21 +++++
 .../container_sa_n310_2X2_100MHz_quectel.xml  | 11 +++
 .../container_sa_n310_2X2_60MHz_quectel.xml   | 11 +++
 .../xml_files/container_sa_n310_nrue.xml      | 18 +++++
 .../container_sa_sc_b200_quectel.xml          |  4 +
 ci-scripts/xml_files/fr1_nsa_2x2_quectel.xml  |  6 ++
 .../fr1_nsa_2x2_quectel_attach_detach.xml     |  5 ++
 ci-scripts/xml_files/fr1_nsa_quectel.xml      |  4 +
 .../fr1_nsa_quectel_attach_detach.xml         |  3 +
 ci-scripts/xml_files/fr1_nsa_quectel_long.xml |  4 +
 ci-scripts/xml_files/gnb_phytest_usrp_run.xml |  2 +
 .../gnb_phytest_usrp_run_100_2x2.xml          |  2 +
 .../xml_files/gnb_phytest_usrp_run_60.xml     |  2 +
 .../xml_files/gnb_phytest_usrp_run_60_2x2.xml |  2 +
 60 files changed, 470 insertions(+), 83 deletions(-)

diff --git a/ci-scripts/cls_oaicitest.py b/ci-scripts/cls_oaicitest.py
index 8ec97c2e6e0..78c20fb1729 100644
--- a/ci-scripts/cls_oaicitest.py
+++ b/ci-scripts/cls_oaicitest.py
@@ -293,7 +293,7 @@ class OaiCiTest():
 		HTML.CreateHtmlTestRowQueue('N/A', 'OK', messages)
 		return True
 
-	def AttachUE(self, HTML, RAN, EPC, CONTAINERS):
+	def AttachUE(self, HTML):
 		ues = [cls_module.Module_UE(ue_id, server_name) for ue_id, server_name in zip(self.ue_ids, self.nodes)]
 		with concurrent.futures.ThreadPoolExecutor(max_workers=64) as executor:
 			futures = [executor.submit(ue.attach) for ue in ues]
@@ -307,7 +307,6 @@ class OaiCiTest():
 		else:
 			logging.error(f'error attaching or wrong MTU: attached {attached}, mtus {mtus}')
 			HTML.CreateHtmlTestRowQueue('N/A', 'KO', ["Could not retrieve UE IP address(es) or MTU(s) wrong!"])
-			self.AutoTerminateUEandeNB(HTML, RAN, EPC, CONTAINERS)
 		return success
 
 	def DetachUE(self, HTML):
@@ -358,7 +357,7 @@ class OaiCiTest():
 		HTML.CreateHtmlTestRowQueue('NA', 'OK', messages)
 		return True
 
-	def Ping_common(self, EPC, ue, RAN, logPath):
+	def Ping_common(self, EPC, ue, logPath):
 		# Launch ping on the EPC side (true for ltebox and old open-air-cn)
 		ping_status = 0
 		ueIP = ue.getIP()
@@ -429,7 +428,7 @@ class OaiCiTest():
 
 		return (True, message)
 
-	def Ping(self,HTML,RAN,EPC,CONTAINERS):
+	def Ping(self, HTML, EPC, CONTAINERS):
 		if EPC.IPAddress == '' or EPC.UserName == '' or EPC.Password == '' or EPC.SourceCodePath == '':
 			HELP.GenericHelp(CONST.Version)
 			sys.exit('Insufficient Parameter')
@@ -444,7 +443,7 @@ class OaiCiTest():
 		ues = [cls_module.Module_UE(ue_id, server_name) for ue_id, server_name in zip(self.ue_ids, self.nodes)]
 		logging.debug(ues)
 		with concurrent.futures.ThreadPoolExecutor(max_workers=64) as executor:
-			futures = [executor.submit(self.Ping_common, EPC, ue, RAN, logPath) for ue in ues]
+			futures = [executor.submit(self.Ping_common, EPC, ue, logPath) for ue in ues]
 			results = [f.result() for f in futures]
 			# each result in results is a tuple, first member goes to successes, second to messages
 			successes, messages = map(list, zip(*results))
@@ -463,10 +462,9 @@ class OaiCiTest():
 			HTML.CreateHtmlTestRowQueue(self.ping_args, 'OK', messages)
 		else:
 			HTML.CreateHtmlTestRowQueue(self.ping_args, 'KO', messages)
-			self.AutoTerminateUEandeNB(HTML,RAN,EPC,CONTAINERS)
 		return success
 
-	def Iperf_Module(self, EPC, ue, svr, RAN, idx, ue_num, logPath):
+	def Iperf_Module(self, EPC, ue, svr, idx, ue_num, logPath):
 		ueIP = ue.getIP()
 		if not ueIP:
 			return (False, f"UE {ue.getName()} has no IP address")
@@ -512,7 +510,7 @@ class OaiCiTest():
 
 		return (status, f'{ue_header}\n{msg}')
 
-	def Iperf(self,HTML,RAN,EPC,CONTAINERS):
+	def Iperf(self,HTML,EPC,CONTAINERS):
 		if EPC.IPAddress == '' or EPC.UserName == '' or EPC.Password == '' or EPC.SourceCodePath == '':
 			HELP.GenericHelp(CONST.Version)
 			sys.exit('Insufficient Parameter')
@@ -530,7 +528,7 @@ class OaiCiTest():
 		svr = cls_module.Module_UE(self.svr_id,self.svr_node)
 		logging.debug(ues)
 		with concurrent.futures.ThreadPoolExecutor(max_workers=64) as executor:
-			futures = [executor.submit(self.Iperf_Module, EPC, ue, svr, RAN, i, len(ues), logPath) for i, ue in enumerate(ues)]
+			futures = [executor.submit(self.Iperf_Module, EPC, ue, svr, i, len(ues), logPath) for i, ue in enumerate(ues)]
 			results = [f.result() for f in futures]
 			# each result in results is a tuple, first member goes to successes, second to messages
 			successes, messages = map(list, zip(*results))
@@ -549,10 +547,9 @@ class OaiCiTest():
 			HTML.CreateHtmlTestRowQueue(self.iperf_args, 'OK', messages)
 		else:
 			HTML.CreateHtmlTestRowQueue(self.iperf_args, 'KO', messages)
-			self.AutoTerminateUEandeNB(HTML,RAN,EPC,CONTAINERS)
 		return success
 
-	def Iperf2_Unidir(self,HTML,RAN,EPC,CONTAINERS):
+	def Iperf2_Unidir(self,HTML,EPC,CONTAINERS):
 		if self.ue_ids == [] or self.svr_id == None or len(self.ue_ids) != 1:
 			raise Exception("no module names in self.ue_ids or/and self.svr_id provided, multi UE scenario not supported")
 		ue = cls_module.Module_UE(self.ue_ids[0].strip(),self.nodes[0].strip())
@@ -590,7 +587,6 @@ class OaiCiTest():
 			HTML.CreateHtmlTestRowQueue(self.iperf_args, 'OK', [f'{ue_header}\n{msg}'])
 		else:
 			HTML.CreateHtmlTestRowQueue(self.iperf_args, 'KO', [f'{ue_header}\n{msg}'])
-			self.AutoTerminateUEandeNB(HTML,RAN,EPC,CONTAINERS)
 		return success
 
 	def AnalyzeLogFile_UE(self, UElogFile,HTML,RAN):
@@ -874,62 +870,6 @@ class OaiCiTest():
 		HTML.CreateHtmlTestRowQueue(f'N/A', 'OK', messages)
 		return True
 
-	def AutoTerminateUEandeNB(self,HTML,RAN,EPC,CONTAINERS):
-		if (RAN.Initialize_eNB_args != ''):
-			self.testCase_id = 'AUTO-KILL-RAN'
-			HTML.testCase_id = self.testCase_id
-			self.desc = 'Automatic Termination of all RAN nodes'
-			HTML.desc = self.desc
-			self.ShowTestID()
-			#terminate all RAN nodes eNB/gNB/OCP
-			for instance in range(0, len(RAN.air_interface)):
-				if RAN.air_interface[instance]!='':
-					logging.debug(f'Auto Termination of Instance {instance} : {RAN.air_interface[instance]}')
-					RAN.eNB_instance=instance
-					RAN.TerminateeNB(HTML,EPC)
-		if CONTAINERS.yamlPath[0] != '':
-			self.testCase_id = 'AUTO-KILL-CONTAINERS'
-			HTML.testCase_id = self.testCase_id
-			self.desc = 'Automatic Termination of all RAN containers'
-			HTML.desc = self.desc
-			self.ShowTestID()
-			for instance in range(0, len(CONTAINERS.yamlPath)):
-				if CONTAINERS.yamlPath[instance]!='':
-					CONTAINERS.eNB_instance=instance
-					if CONTAINERS.deployKind[instance]:
-						CONTAINERS.UndeployObject(HTML,RAN)
-					else:
-						CONTAINERS.UndeployGenObject(HTML,RAN, self)
-
-	#this function is called only if eNB/gNB fails to start
-	#RH to be re-factored
-	def AutoTerminateeNB(self,HTML,RAN,EPC,CONTAINERS):
-		if (RAN.Initialize_eNB_args != ''):
-			self.testCase_id = 'AUTO-KILL-RAN'
-			HTML.testCase_id = self.testCase_id
-			self.desc = 'Automatic Termination of all RAN nodes'
-			HTML.desc = self.desc
-			self.ShowTestID()
-			#terminate all RAN nodes eNB/gNB/OCP
-			for instance in range(0, len(RAN.air_interface)):
-				if RAN.air_interface[instance]!='':
-					logging.debug(f'Auto Termination of Instance {instance} : {RAN.air_interface[instance]}')
-					RAN.eNB_instance=instance
-					RAN.TerminateeNB(HTML,EPC)
-		if CONTAINERS.yamlPath[0] != '':
-			self.testCase_id = 'AUTO-KILL-CONTAINERS'
-			HTML.testCase_id = self.testCase_id
-			self.desc = 'Automatic Termination of all RAN containers'
-			HTML.desc = self.desc
-			self.ShowTestID()
-			for instance in range(0, len(CONTAINERS.yamlPath)):
-				if CONTAINERS.yamlPath[instance]!='':
-					CONTAINERS.eNB_instance=instance
-					if CONTAINERS.deployKind[instance]:
-						CONTAINERS.UndeployObject(HTML,RAN)
-					else:
-						CONTAINERS.UndeployGenObject(HTML,RAN,self)
-
 	def LogCollectBuild(self,RAN):
 		# Some pipelines are using "none" IP / Credentials
 		# In that case, just forget about it
diff --git a/ci-scripts/main.py b/ci-scripts/main.py
index b6f59950eca..9c6a20d9351 100644
--- a/ci-scripts/main.py
+++ b/ci-scripts/main.py
@@ -235,7 +235,7 @@ def ExecuteActionWithParam(action):
 		if action == 'Initialize_UE':
 			success = CiTestObj.InitializeUE(HTML)
 		elif action == 'Attach_UE':
-			success = CiTestObj.AttachUE(HTML, RAN, EPC, CONTAINERS)
+			success = CiTestObj.AttachUE(HTML)
 		elif action == 'Detach_UE':
 			success = CiTestObj.DetachUE(HTML)
 		elif action == 'Terminate_UE':
@@ -259,7 +259,7 @@ def ExecuteActionWithParam(action):
 		else:
 			CiTestObj.nodes = [None] * len(CiTestObj.ue_ids)
 		ping_rttavg_threshold = test.findtext('ping_rttavg_threshold') or ''
-		success = CiTestObj.Ping(HTML,RAN,EPC,CONTAINERS)
+		success = CiTestObj.Ping(HTML,EPC,CONTAINERS)
 
 	elif action == 'Iperf' or action == 'Iperf2_Unidir':
 		CiTestObj.iperf_args = test.findtext('iperf_args')
@@ -286,9 +286,9 @@ def ExecuteActionWithParam(action):
 			logging.error('test-case has wrong option ' + CiTestObj.iperf_options)
 			CiTestObj.iperf_options = 'check'
 		if action == 'Iperf':
-			success = CiTestObj.Iperf(HTML,RAN,EPC,CONTAINERS)
+			success = CiTestObj.Iperf(HTML, EPC, CONTAINERS)
 		elif action == 'Iperf2_Unidir':
-			success = CiTestObj.Iperf2_Unidir(HTML,RAN,EPC,CONTAINERS)
+			success = CiTestObj.Iperf2_Unidir(HTML, EPC, CONTAINERS)
 
 	elif action == 'IdleSleep':
 		st = test.findtext('idle_sleep_time_in_sec') or "5"
@@ -376,12 +376,8 @@ def ExecuteActionWithParam(action):
 			CONTAINERS.services[CONTAINERS.eNB_instance] = string_field
 		if action == 'Deploy_Object':
 			success = CONTAINERS.DeployObject(HTML)
-			if not success:
-				CiTestObj.AutoTerminateeNB(HTML,RAN,EPC,CONTAINERS)
 		elif action == 'Undeploy_Object':
 			success = CONTAINERS.UndeployObject(HTML, RAN)
-			if not success:
-				CiTestObj.AutoTerminateeNB(HTML,RAN,EPC,CONTAINERS)
 		elif action == 'Create_Workspace':
 			success = CONTAINERS.Create_Workspace(HTML)
 
@@ -746,7 +742,6 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re
 				if not test_succeeded:
 					logging.error(f"test ID {test_case_id} action {action} failed ({test_succeeded}), skipping next tests")
 					task_set_succeeded = False
-					CiTestObj.AutoTerminateeNB(HTML,RAN,EPC,CONTAINERS)
 			except Exception as e:
 				s = traceback.format_exc()
 				logging.error(f'while running CI, an exception occurred:\n{s}')
diff --git a/ci-scripts/tests/ping-iperf.py b/ci-scripts/tests/ping-iperf.py
index 7fb019e5fbb..6ba35d04d37 100644
--- a/ci-scripts/tests/ping-iperf.py
+++ b/ci-scripts/tests/ping-iperf.py
@@ -14,7 +14,6 @@ sys.path.append('./') # to find OAI imports below
 import cls_oai_html
 import cls_oaicitest
 import cls_containerize
-import ran
 import epc
 
 class TestPingIperf(unittest.TestCase):
@@ -30,13 +29,12 @@ class TestPingIperf(unittest.TestCase):
 		self.epc.UserName = None
 		self.epc.Password = None
 		self.epc.SourceCodePath = os.getcwd()
-		self.ran = ran.RANManagement()
 
 	def test_ping(self):
 		self.ci.ping_args = "-c3 127.0.0.1"
 		self.ci.ping_packetloss_threshold = "0"
 		# TODO Should need nothing but options and UE(s) to use
-		success = self.ci.Ping(self.html, self.ran, self.epc, self.cont)
+		success = self.ci.Ping(self.html, self.epc, self.cont)
 		self.assertTrue(success)
 
 	def test_iperf(self):
@@ -50,7 +48,7 @@ class TestPingIperf(unittest.TestCase):
 		self.ci.iperf_bitrate_threshold = "0"
 		self.ci.iperf_profile = "balanced"
 		# TODO Should need nothing but options and UE(s) to use
-		success = self.ci.Iperf(self.html, self.ran, self.epc, self.cont)
+		success = self.ci.Iperf(self.html, self.epc, self.cont)
 		self.assertTrue(success)
 
 if __name__ == '__main__':
diff --git a/ci-scripts/xml_files/container_4g_l2sim_tdd.xml b/ci-scripts/xml_files/container_4g_l2sim_tdd.xml
index 2bd0c5fcf9e..28f55c6d683 100644
--- a/ci-scripts/xml_files/container_4g_l2sim_tdd.xml
+++ b/ci-scripts/xml_files/container_4g_l2sim_tdd.xml
@@ -37,6 +37,7 @@
  030011
  030012
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -139,8 +140,16 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_l2sim_fdd</yaml_path>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml b/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
index a637d79cba8..c717ba87b9a 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz.xml
@@ -40,6 +40,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
         <testCase id="800813">
@@ -154,10 +155,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_fdd_05MHz</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml b/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
index 642342e7b8e..67f66d2e6ca 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_fdd_05MHz_noS1.xml
@@ -36,6 +36,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -125,10 +126,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_fdd_05MHz_noS1</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml b/ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
index cddecd09d0a..f04057d8bfc 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_fdd_10MHz.xml
@@ -40,6 +40,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -154,10 +155,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_fdd_10MHz</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml b/ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
index 619257cbc16..449341e13eb 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_fdd_20MHz.xml
@@ -40,6 +40,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -154,10 +155,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_fdd_20MHz</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_fembms.xml b/ci-scripts/xml_files/container_4g_rfsim_fembms.xml
index d33832d3c20..7ef304e6481 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_fembms.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_fembms.xml
@@ -33,6 +33,7 @@
  000001
  030011
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -92,10 +93,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_fembms</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_mbms.xml b/ci-scripts/xml_files/container_4g_rfsim_mbms.xml
index 04ec93ebf56..82361921387 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_mbms.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_mbms.xml
@@ -33,6 +33,7 @@
  000001
  030011
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -92,10 +93,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_mbms</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml b/ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
index f7b1e50ebbd..eb848271414 100644
--- a/ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
+++ b/ci-scripts/xml_files/container_4g_rfsim_tdd_05MHz.xml
@@ -40,6 +40,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -147,10 +148,18 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 4G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/4g_rfsimulator_tdd_05MHz</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_e1_rfsim.xml b/ci-scripts/xml_files/container_5g_e1_rfsim.xml
index 87827cbdf74..fa8f47a558e 100644
--- a/ci-scripts/xml_files/container_5g_e1_rfsim.xml
+++ b/ci-scripts/xml_files/container_5g_e1_rfsim.xml
@@ -33,6 +33,7 @@
  000024
  020021
  100021
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -93,6 +94,7 @@
 
         <testCase id="100021">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_e1</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -101,4 +103,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_f1_rfsim.xml b/ci-scripts/xml_files/container_5g_f1_rfsim.xml
index 56071f4b1b4..a246727da14 100644
--- a/ci-scripts/xml_files/container_5g_f1_rfsim.xml
+++ b/ci-scripts/xml_files/container_5g_f1_rfsim.xml
@@ -35,6 +35,7 @@
  030021
  030022
  100021
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -150,6 +151,7 @@
 
         <testCase id="100021">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_f1_rfsimulator</yaml_path>
                 <d_retx_th>30,30,100,100</d_retx_th>
@@ -158,4 +160,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_fdd_rfsim.xml b/ci-scripts/xml_files/container_5g_fdd_rfsim.xml
index e1aff907a9f..a1454ed8bd0 100644
--- a/ci-scripts/xml_files/container_5g_fdd_rfsim.xml
+++ b/ci-scripts/xml_files/container_5g_fdd_rfsim.xml
@@ -35,6 +35,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -119,6 +120,7 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_fdd_rfsimulator</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -127,4 +129,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_l2sim_tdd.xml b/ci-scripts/xml_files/container_5g_l2sim_tdd.xml
index bef0a13e2d4..aa9fd2ece98 100644
--- a/ci-scripts/xml_files/container_5g_l2sim_tdd.xml
+++ b/ci-scripts/xml_files/container_5g_l2sim_tdd.xml
@@ -35,6 +35,7 @@
  020001
  020002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -113,6 +114,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_l2sim_tdd</yaml_path>
                 <d_retx_th>20,50,100,100</d_retx_th>
@@ -121,4 +123,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim.xml b/ci-scripts/xml_files/container_5g_rfsim.xml
index 0e1b1d37103..edc9f1f30f0 100644
--- a/ci-scripts/xml_files/container_5g_rfsim.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim.xml
@@ -50,6 +50,7 @@
  333333
  020006
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -245,6 +246,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -253,4 +255,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_24prb.xml b/ci-scripts/xml_files/container_5g_rfsim_24prb.xml
index f25928ab326..92f853fa997 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_24prb.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_24prb.xml
@@ -35,6 +35,7 @@
  030001
  030002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -119,6 +120,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_24prb</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -127,4 +129,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_2x2.xml b/ci-scripts/xml_files/container_5g_rfsim_2x2.xml
index 7826a6e8187..67b2273a68c 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_2x2.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_2x2.xml
@@ -35,6 +35,7 @@
  030001
  030002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -119,6 +120,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_2x2</yaml_path>
                 <eNB_instance>0</eNB_instance>
@@ -127,4 +129,11 @@
                 <u_retx_th>1,0,0,0</u_retx_th>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_f1_accelleran.xml b/ci-scripts/xml_files/container_5g_rfsim_f1_accelleran.xml
index 31d9a047901..07df4a751ee 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_f1_accelleran.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_f1_accelleran.xml
@@ -32,6 +32,7 @@
  020021
  100021
  100022
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -74,10 +75,18 @@
 
         <testCase id="100022">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_accelleran</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_fdd_phytest.xml b/ci-scripts/xml_files/container_5g_rfsim_fdd_phytest.xml
index c7d1824b4c4..8d43480c8ee 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_fdd_phytest.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_fdd_phytest.xml
@@ -35,6 +35,7 @@
  030011
  030012
  100011
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -119,6 +120,7 @@
 
         <testCase id="100011">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_fdd_phytest</yaml_path>
                 <d_retx_th>10,100,100,100</d_retx_th> <!-- phytest: will fail at start! -->
@@ -127,4 +129,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_fr2_32prb.xml b/ci-scripts/xml_files/container_5g_rfsim_fr2_32prb.xml
index 311ec9b0bc5..ee88b9de873 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_fr2_32prb.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_fr2_32prb.xml
@@ -32,6 +32,7 @@
  020001
  020002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -87,6 +88,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_fr2_32prb</yaml_path>
                 <d_retx_th>10,0,0,0</d_retx_th>
@@ -95,4 +97,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_ntn_geo.xml b/ci-scripts/xml_files/container_5g_rfsim_ntn_geo.xml
index 9966bd0e909..2a8147140d3 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_ntn_geo.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_ntn_geo.xml
@@ -34,6 +34,7 @@
  020001
  020002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -95,10 +96,18 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_ntn_geo</yaml_path>
                 <eNB_instance>0</eNB_instance>
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_sidelink.xml b/ci-scripts/xml_files/container_5g_rfsim_sidelink.xml
index 8f1039f5cde..f3be815e301 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_sidelink.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_sidelink.xml
@@ -32,6 +32,7 @@
  000004
  000005
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -83,6 +84,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_sidelink</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -91,4 +93,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_tdd_dora.xml b/ci-scripts/xml_files/container_5g_rfsim_tdd_dora.xml
index a169c78528a..3b48f7b9016 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_tdd_dora.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_tdd_dora.xml
@@ -33,6 +33,8 @@
  020001
  020002
  100001
+ 004000
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -93,6 +95,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_tdd_dora</yaml_path>
                 <d_retx_th>0,0,0,0</d_retx_th>
@@ -101,4 +104,19 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="004000">
+                <class>Custom_Command</class>
+                <always_exec>true</always_exec>
+                <desc>Clean-Up any residual volume</desc>
+                <node>cacofonix</node>
+                <command>docker volume rm 5g_rfsimulator_tdd_dora_rrc.config</command>
+        </testCase>
+
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_5g_rfsim_u0_25prb.xml b/ci-scripts/xml_files/container_5g_rfsim_u0_25prb.xml
index 51b59d35f14..cb4a9cd9f75 100644
--- a/ci-scripts/xml_files/container_5g_rfsim_u0_25prb.xml
+++ b/ci-scripts/xml_files/container_5g_rfsim_u0_25prb.xml
@@ -35,6 +35,7 @@
  030001
  030002
  100001
+ 222222
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -119,6 +120,7 @@
 
         <testCase id="100001">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy all OAI 5G stack</desc>
                 <yaml_path>ci-scripts/yaml_files/5g_rfsimulator_u0_25prb</yaml_path>
                 <d_retx_th>1,0,0,0</d_retx_th>
@@ -127,4 +129,11 @@
                 <eNB_serverId>0</eNB_serverId>
         </testCase>
 
+        <testCase id="222222">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1.xml
index 268be0974c0..54261b35050 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1.xml
@@ -54,6 +54,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>hutch</node>
         <command>sudo cpupower idle-set -E</command>
@@ -86,6 +87,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
 
     <testCase id="030201">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_05Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -99,6 +101,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -109,6 +112,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UEs</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_if4_5.xml b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_if4_5.xml
index adfe8860d6e..3c47ffce7b5 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_if4_5.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_if4_5.xml
@@ -53,6 +53,7 @@
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>hutch</node>
         <command>sudo cpupower idle-set -E</command>
@@ -94,6 +95,7 @@
 
     <testCase id="030231">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy RCC/RRU</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_05Mhz_if4.5</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -107,6 +109,7 @@
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -117,6 +120,7 @@
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UEs</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_no_rrc_activity.xml b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_no_rrc_activity.xml
index 673bf656092..2674c4198d0 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_no_rrc_activity.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_05Mhz_tm1_no_rrc_activity.xml
@@ -52,6 +52,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>hutch</node>
         <command>sudo cpupower idle-set -E</command>
@@ -72,6 +73,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
 
     <testCase id="030202">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_05Mhz_tm1_no_rrc_activity</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -85,6 +87,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -95,6 +98,7 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1.xml
index 472122d2e48..ea95961cbaa 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1.xml
@@ -54,6 +54,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>hutch</node>
         <command>sudo cpupower idle-set -E</command>
@@ -80,6 +81,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
 
     <testCase id="030211">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_10Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -93,6 +95,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -103,6 +106,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_cdrx.xml b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_cdrx.xml
index 1534150b01e..9f927db4d47 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_cdrx.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_cdrx.xml
@@ -53,6 +53,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="200000">
             <class>Custom_Command</class>
+            <always_exec>true</always_exec>
             <desc>Enable Sleep States</desc>
             <node>hutch</node>
             <command>sudo cpupower idle-set -E</command>
@@ -73,6 +74,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
 
     <testCase id="030212">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_10Mhz_tm1_cdrx</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -86,6 +88,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -96,6 +99,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_oaiue.xml b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_oaiue.xml
index 0e58e6b6ed5..cefa6cd5c1b 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_oaiue.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_10Mhz_tm1_oaiue.xml
@@ -41,6 +41,8 @@
 030211
 200000
 200001
+222222
+333333
     </TestCaseRequestedList>
     <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -70,12 +72,14 @@
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States (hutch)</desc>
         <node>hutch</node>
         <command>sudo cpupower idle-set -E</command>
     </testCase>
     <testCase id="200001">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States (carabe)</desc>
         <node>carabe</node>
         <command>sudo cpupower idle-set -E</command>
@@ -121,6 +125,7 @@
 
     <testCase id="030211">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_10Mhz_tm1_magma</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -129,6 +134,7 @@
 
     <testCase id="030411">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy LTE-UE</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_10Mhz_oai_ue_magma</yaml_path>
         <eNB_instance>1</eNB_instance>
@@ -180,4 +186,18 @@
         <svr_id>nano-cn4g</svr_id>
     </testCase>
 
+    <testCase id="222222">
+        <class>Clean_Test_Server_Images</class>
+        <always_exec>true</always_exec>
+        <desc>Clean Test Images on eNB Test Server</desc>
+        <test_svr_id>0</test_svr_id>
+    </testCase>
+
+    <testCase id="333333">
+        <class>Clean_Test_Server_Images</class>
+        <always_exec>true</always_exec>
+        <desc>Clean Test Images on LTE-UE Test Server</desc>
+        <test_svr_id>1</test_svr_id>
+    </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_lte_b200_fdd_20Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_fdd_20Mhz_tm1.xml
index 48aa606fa41..07960f3a37c 100644
--- a/ci-scripts/xml_files/container_lte_b200_fdd_20Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_fdd_20Mhz_tm1.xml
@@ -53,6 +53,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="200000">
             <class>Custom_Command</class>
+            <always_exec>true</always_exec>
             <desc>Enable Sleep States</desc>
             <node>hutch</node>
             <command>sudo cpupower idle-set -E</command>
@@ -79,6 +80,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
 
     <testCase id="030221">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_fdd_20Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -92,6 +94,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -102,6 +105,7 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1.xml
index a512156ff5a..52a8df31464 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1.xml
@@ -54,6 +54,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>starsky</node>
         <command>sudo cpupower idle-set -E</command>
@@ -87,6 +88,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
 
     <testCase id="030204">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_05Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -100,6 +102,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -110,6 +113,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1_if4_5.xml b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1_if4_5.xml
index 827675f3fb7..62c5e5e4760 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1_if4_5.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm1_if4_5.xml
@@ -33,7 +33,6 @@
 030135
 040301 040532 040631 040632 040634 040635 040681 040682 040684 040685 040401 040201
 030231
-040101
 200000
     </TestCaseRequestedList>
     <TestCaseExclusionList></TestCaseExclusionList>
@@ -53,6 +52,7 @@
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>starsky</node>
         <command>sudo cpupower idle-set -E</command>
@@ -95,6 +95,7 @@
 
     <testCase id="030231">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy RRU/RCC</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_05Mhz_if4.5</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -108,6 +109,7 @@
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -118,6 +120,7 @@
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm2.xml b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm2.xml
index 77a13d9407e..9111f00365f 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm2.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_05Mhz_tm2.xml
@@ -52,6 +52,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
     </testCase>
     <testCase id="200000">
             <class>Custom_Command</class>
+            <always_exec>true</always_exec>
             <desc>Enable Sleep States</desc>
             <node>starsky</node>
             <command>sudo cpupower idle-set -E</command>
@@ -78,6 +79,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
 
     <testCase id="030205">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_05Mhz_tm2</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -91,6 +93,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -101,6 +104,7 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_10Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_tdd_10Mhz_tm1.xml
index ed37d24eae4..574e75d7803 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_10Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_10Mhz_tm1.xml
@@ -52,6 +52,7 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>starsky</node>
         <command>sudo cpupower idle-set -E</command>
@@ -78,6 +79,7 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
 
     <testCase id="030214">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_10Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -91,6 +93,7 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -101,6 +104,7 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1.xml b/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1.xml
index 1a9983e67e5..516bc484445 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1.xml
@@ -52,6 +52,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
     </testCase>
     <testCase id="200000">
             <class>Custom_Command</class>
+            <always_exec>true</always_exec>
             <desc>Enable Sleep States</desc>
             <node>starsky</node>
             <command>sudo cpupower idle-set -E</command>
@@ -78,6 +79,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
 
     <testCase id="030224">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_20Mhz_tm1</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -91,6 +93,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -101,6 +104,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1_default_scheduler.xml b/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1_default_scheduler.xml
index e3f0f491409..8156eb517df 100644
--- a/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1_default_scheduler.xml
+++ b/ci-scripts/xml_files/container_lte_b200_tdd_20Mhz_tm1_default_scheduler.xml
@@ -53,6 +53,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
     </testCase>
     <testCase id="200000">
         <class>Custom_Command</class>
+        <always_exec>true</always_exec>
         <desc>Enable Sleep States</desc>
         <node>starsky</node>
         <command>sudo cpupower idle-set -E</command>
@@ -79,6 +80,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
 
     <testCase id="030225">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
         <yaml_path>ci-scripts/yaml_files/lte_b200_tdd_20Mhz_tm1_default_scheduler</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -92,6 +94,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
     </testCase>
     <testCase id="040201">
         <class>Terminate_UE</class>
+        <always_exec>true</always_exec>
         <desc>Terminate UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
@@ -102,6 +105,7 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
     </testCase>
     <testCase id="040401">
         <class>Detach_UE</class>
+        <always_exec>true</always_exec>
         <desc>Detach UE</desc>
         <id>adb_ue_1 adb_ue_2</id>
     </testCase>
diff --git a/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm1.xml b/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm1.xml
index 8316645417f..cfae0e6188d 100644
--- a/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm1.xml
+++ b/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm1.xml
@@ -40,6 +40,7 @@
 070001
 010010
 030201
+333333
 
 </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
@@ -130,12 +131,14 @@
 
   <testCase id="010010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>up2</id>
   </testCase>
 
   <testCase id="030201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/lte_n3xx_tdd_2x2_tm1</yaml_path>
     <eNB_instance>0</eNB_instance>
@@ -146,5 +149,12 @@
     -->
   </testCase>
 
+    <testCase id="333333">
+        <class>Clean_Test_Server_Images</class>
+        <always_exec>true</always_exec>
+        <desc>Clean Test Images</desc>
+        <test_svr_id>0</test_svr_id>
+    </testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm2.xml b/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm2.xml
index 96baab07939..1df5ea169c3 100644
--- a/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm2.xml
+++ b/ci-scripts/xml_files/container_lte_n3xx_tdd_2x2_tm2.xml
@@ -40,6 +40,7 @@
 071001
 010010
 031201
+333333
 
 </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
@@ -130,12 +131,14 @@
 
   <testCase id="010010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>up2</id>
   </testCase>
 
   <testCase id="031201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/lte_n3xx_tdd_2x2_tm2</yaml_path>
     <eNB_instance>0</eNB_instance>
@@ -146,5 +149,13 @@
     -->
   </testCase>
 
+    <testCase id="333333">
+        <class>Clean_Test_Server_Images</class>
+        <always_exec>true</always_exec>
+        <desc>Clean Test Images</desc>
+        <test_svr_id>0</test_svr_id>
+    </testCase>
+
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_nsa_b200_quectel.xml b/ci-scripts/xml_files/container_nsa_b200_quectel.xml
index de6098209fe..7e831b24542 100644
--- a/ci-scripts/xml_files/container_nsa_b200_quectel.xml
+++ b/ci-scripts/xml_files/container_nsa_b200_quectel.xml
@@ -49,6 +49,8 @@
  030201
  300000
  600000
+ 222220
+ 222221
 	</TestCaseRequestedList>
 	<TestCaseExclusionList></TestCaseExclusionList>
 
@@ -81,6 +83,7 @@
 	</testCase>
 	<testCase id="300000">
 		<class>Custom_Command</class>
+    <always_exec>true</always_exec>
 		<desc>Enable Sleep States (nepes)</desc>
 		<node>nepes</node>
 		<command>sudo cpupower idle-set -E</command>
@@ -93,6 +96,7 @@
 	</testCase>
 	<testCase id="600000">
 		<class>Custom_Command</class>
+    <always_exec>true</always_exec>
 		<desc>Enable Sleep States (ofqot)</desc>
 		<node>ofqot</node>
 		<command>sudo cpupower idle-set -E</command>
@@ -105,6 +109,7 @@
 	</testCase>
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -115,6 +120,7 @@
   	</testCase>
 	<testCase id= "010010">
 		<class>Detach_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Detach UE</desc>
 		<id>idefix</id>
 	</testCase>
@@ -224,6 +230,7 @@
 
     <testCase id="030201">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy eNB</desc>
 		<yaml_path>ci-scripts/yaml_files/nsa_b200_enb</yaml_path>
         <eNB_instance>0</eNB_instance>
@@ -232,6 +239,7 @@
 
     <testCase id="030202">
         <class>Undeploy_Object</class>
+        <always_exec>true</always_exec>
         <desc>Undeploy gNB</desc>
 		<yaml_path>ci-scripts/yaml_files/nsa_b200_gnb</yaml_path>
         <eNB_instance>1</eNB_instance>
@@ -240,5 +248,19 @@
         <u_retx_th>10,100,100,100</u_retx_th>
     </testCase>
 
+	<testCase id="222220">
+		<class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+		<desc>Clean Test Images on Test Server</desc>
+		<test_svr_id>0</test_svr_id>
+	</testCase>
+
+	<testCase id="222221">
+		<class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+		<desc>Clean Test Images on Test Server</desc>
+		<test_svr_id>1</test_svr_id>
+	</testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_sa_aerial_quectel.xml b/ci-scripts/xml_files/container_sa_aerial_quectel.xml
index 50a1a02256f..43fdf4b65b2 100644
--- a/ci-scripts/xml_files/container_sa_aerial_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_aerial_quectel.xml
@@ -36,6 +36,7 @@
                 000033
                 000222
                 222222
+                333333
         </TestCaseRequestedList>
         <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -107,12 +108,14 @@
 
         <testCase id="000222">
                 <class>Detach_UE</class>
+                <always_exec>true</always_exec>
                 <desc>Detach Quectel</desc>
                 <id>up2-aerial</id>
         </testCase>
 
         <testCase id="222222">
                 <class>Undeploy_Object</class>
+                <always_exec>true</always_exec>
                 <desc>Undeploy gNB</desc>
                 <yaml_path>ci-scripts/yaml_files/sa_gnb_aerial</yaml_path>
                 <eNB_instance>0</eNB_instance>
@@ -120,5 +123,13 @@
                 <d_retx_th>20,100,100,100</d_retx_th>
                 <u_retx_th>20,100,100,100</u_retx_th>
         </testCase>
+
+        <testCase id="333333">
+                <class>Clean_Test_Server_Images</class>
+                <always_exec>true</always_exec>
+                <desc>Clean Test Images on Test Server</desc>
+                <test_svr_id>0</test_svr_id>
+        </testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_sa_aw2s_asue.xml b/ci-scripts/xml_files/container_sa_aw2s_asue.xml
index 49003309117..3929687f1b9 100644
--- a/ci-scripts/xml_files/container_sa_aw2s_asue.xml
+++ b/ci-scripts/xml_files/container_sa_aw2s_asue.xml
@@ -56,6 +56,7 @@
     004000
     000002
     030000
+    333333
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -242,12 +243,14 @@
 
   <testCase id="003000">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>amarisoft_ue_1 amarisoft_ue_2 amarisoft_ue_3 amarisoft_ue_4 amarisoft_ue_5 amarisoft_ue_6 amarisoft_ue_7 amarisoft_ue_8 amarisoft_ue_9 amarisoft_ue_10 amarisoft_ue_11 amarisoft_ue_12 amarisoft_ue_13 amarisoft_ue_14 amarisoft_ue_15 amarisoft_ue_16</id>
   </testCase>
 
   <testCase id="004000">
     <class>Terminate_UE</class>
+    <always_exec>true</always_exec>
     <desc>Terminate UE</desc>
     <id>amarisoft_ue</id>
   </testCase>
@@ -260,10 +263,18 @@
 
   <testCase id="030000">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/sa_aw2s_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
     <eNB_serverId>0</eNB_serverId>
   </testCase>
 
+  <testCase id="333333">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_sa_b200_quectel.xml b/ci-scripts/xml_files/container_sa_b200_quectel.xml
index acc9e15e5c2..4776bd784e5 100644
--- a/ci-scripts/xml_files/container_sa_b200_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_b200_quectel.xml
@@ -70,6 +70,7 @@
   </testCase>
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>ofqot</node>
     <command>sudo cpupower idle-set -E</command>
@@ -82,6 +83,7 @@
   </testCase>
   <testCase id="010002">
     <class>Terminate_UE</class>
+    <always_exec>true</always_exec>
     <desc>Terminate Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -92,6 +94,7 @@
   </testCase>
   <testCase id="010010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>idefix</id>
   </testCase>
@@ -203,6 +206,7 @@
 
   <testCase id="030201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/sa_b200_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
diff --git a/ci-scripts/xml_files/container_sa_e1_b200_quectel.xml b/ci-scripts/xml_files/container_sa_e1_b200_quectel.xml
index f31ef7e7eb3..4e4eab92c17 100644
--- a/ci-scripts/xml_files/container_sa_e1_b200_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_e1_b200_quectel.xml
@@ -49,6 +49,7 @@
     310002
     330201
     200000
+    222222
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -66,6 +67,7 @@
   </testCase>
   <testCase id="310002">
     <class>Terminate_UE</class>
+    <always_exec>true</always_exec>
     <desc>Terminate Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -76,6 +78,7 @@
   </testCase>
   <testCase id="310011">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -118,6 +121,7 @@
   </testCase>
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>ofqot</node>
     <command>sudo cpupower idle-set -E</command>
@@ -201,7 +205,8 @@
 
   <testCase id="330201">
     <class>Undeploy_Object</class>
-    <desc>Undeploy CU-DU</desc>
+    <always_exec>true</always_exec>
+    <desc>Undeploy CUCP/CU-UP/DU</desc>
     <yaml_path>ci-scripts/yaml_files/sa_e1_b200_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
     <eNB_serverId>0</eNB_serverId>
@@ -209,5 +214,12 @@
     <u_retx_th>10,100,100,100</u_retx_th>
   </testCase>
 
+  <testCase id="222222">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_sa_f1_b200_quectel.xml b/ci-scripts/xml_files/container_sa_f1_b200_quectel.xml
index 1b3c9baa33a..4cce964633e 100644
--- a/ci-scripts/xml_files/container_sa_f1_b200_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_f1_b200_quectel.xml
@@ -66,6 +66,7 @@
   </testCase>
   <testCase id="110002">
     <class>Terminate_UE</class>
+    <always_exec>true</always_exec>
     <desc>Terminate Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -76,6 +77,7 @@
   </testCase>
   <testCase id="110011">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -110,6 +112,7 @@
   </testCase>
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>ofqot</node>
     <command>sudo cpupower idle-set -E</command>
@@ -226,6 +229,7 @@
 
   <testCase id="130201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy CU-DU</desc>
     <yaml_path>ci-scripts/yaml_files/sa_f1_b200_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
diff --git a/ci-scripts/xml_files/container_sa_fhi72_vvdn_up2.xml b/ci-scripts/xml_files/container_sa_fhi72_vvdn_up2.xml
index 3d2a7a93875..b81ef51d5ba 100644
--- a/ci-scripts/xml_files/container_sa_fhi72_vvdn_up2.xml
+++ b/ci-scripts/xml_files/container_sa_fhi72_vvdn_up2.xml
@@ -39,6 +39,8 @@
     103000
     100002
     130000
+    777777
+    888888
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -127,6 +129,7 @@
 
   <testCase id="103000">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>up2-fhi72</id>
   </testCase>
@@ -139,10 +142,28 @@
 
   <testCase id="130000">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/sa_fhi_7.2_vvdn_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
     <eNB_serverId>0</eNB_serverId>
   </testCase>
 
+  <testCase id="777777">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
+  <testCase id="888888">
+    <class>Custom_Command</class>
+    <always_exec>true</always_exec>
+    <desc>Set CPU to idle state, set kernel parameters to default values</desc>
+    <node>cacofonix</node>
+    <command>/opt/FHI7.2/setup_cleanup.sh</command>
+    <command_fail>yes</command_fail>
+  </testCase>
+
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_sa_n310_2X2_100MHz_quectel.xml b/ci-scripts/xml_files/container_sa_n310_2X2_100MHz_quectel.xml
index 272582a46ea..c713e5a431d 100644
--- a/ci-scripts/xml_files/container_sa_n310_2X2_100MHz_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_n310_2X2_100MHz_quectel.xml
@@ -39,6 +39,7 @@
     000001
     040201
     200000
+    033333
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -58,6 +59,7 @@
 
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>matix</node>
     <command>sudo cpupower idle-set -E</command>
@@ -71,6 +73,7 @@
 
   <testCase id="010010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>up2</id>
   </testCase>
@@ -139,6 +142,7 @@
 
   <testCase id="040201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/5g_sa_n310_2x2_100MHz</yaml_path>
     <eNB_instance>0</eNB_instance>
@@ -148,5 +152,12 @@
     <u_retx_th>10,100,100,100</u_retx_th>
   </testCase>
 
+  <testCase id="033333">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_sa_n310_2X2_60MHz_quectel.xml b/ci-scripts/xml_files/container_sa_n310_2X2_60MHz_quectel.xml
index 4c619255f11..fc0baadaca4 100644
--- a/ci-scripts/xml_files/container_sa_n310_2X2_60MHz_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_n310_2X2_60MHz_quectel.xml
@@ -39,6 +39,7 @@
     000001
     030201
     200000
+    333333
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -58,6 +59,7 @@
 
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>matix</node>
     <command>sudo cpupower idle-set -E</command>
@@ -71,6 +73,7 @@
 
   <testCase id="010010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>up2</id>
   </testCase>
@@ -139,6 +142,7 @@
 
   <testCase id="030201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/5g_sa_n310_2x2_60MHz</yaml_path>
     <eNB_instance>0</eNB_instance>
@@ -148,5 +152,12 @@
     <u_retx_th>10,100,100,100</u_retx_th>
   </testCase>
 
+  <testCase id="333333">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
 </testCaseList>
 
diff --git a/ci-scripts/xml_files/container_sa_n310_nrue.xml b/ci-scripts/xml_files/container_sa_n310_nrue.xml
index a44c7033221..f00a452403a 100644
--- a/ci-scripts/xml_files/container_sa_n310_nrue.xml
+++ b/ci-scripts/xml_files/container_sa_n310_nrue.xml
@@ -36,6 +36,8 @@
     000100
     000200
     040001 040000
+    333333
+    444444
   </TestCaseRequestedList>
   <TestCaseExclusionList></TestCaseExclusionList>
 
@@ -139,6 +141,7 @@
 
   <testCase id="040000">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/5g_sa_n310_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
@@ -149,10 +152,25 @@
   
   <testCase id="040001">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy nr UE</desc>
     <yaml_path>ci-scripts/yaml_files/5g_sa_n310_nrue</yaml_path>
     <eNB_instance>1</eNB_instance>
     <eNB_serverId>1</eNB_serverId>
   </testCase>
 
+  <testCase id="333333">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>0</test_svr_id>
+  </testCase>
+
+  <testCase id="444444">
+    <class>Clean_Test_Server_Images</class>
+    <always_exec>true</always_exec>
+    <desc>Clean Test Images on Test Server</desc>
+    <test_svr_id>1</test_svr_id>
+  </testCase>
+
 </testCaseList>
diff --git a/ci-scripts/xml_files/container_sa_sc_b200_quectel.xml b/ci-scripts/xml_files/container_sa_sc_b200_quectel.xml
index 425edc12ee8..d0dc59f3ccf 100644
--- a/ci-scripts/xml_files/container_sa_sc_b200_quectel.xml
+++ b/ci-scripts/xml_files/container_sa_sc_b200_quectel.xml
@@ -64,6 +64,7 @@
   </testCase>
   <testCase id="400000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States</desc>
     <node>ofqot</node>
     <command>sudo cpupower idle-set -E</command>
@@ -76,6 +77,7 @@
   </testCase>
   <testCase id="210002">
     <class>Terminate_UE</class>
+    <always_exec>true</always_exec>
     <desc>Terminate Quectel</desc>
     <id>idefix</id>
   </testCase>
@@ -86,6 +88,7 @@
   </testCase>
   <testCase id="210010">
     <class>Detach_UE</class>
+    <always_exec>true</always_exec>
     <desc>Detach UE</desc>
     <id>idefix</id>
   </testCase>
@@ -197,6 +200,7 @@
 
   <testCase id="230201">
     <class>Undeploy_Object</class>
+    <always_exec>true</always_exec>
     <desc>Undeploy gNB</desc>
     <yaml_path>ci-scripts/yaml_files/sa_sc_b200_gnb</yaml_path>
     <eNB_instance>0</eNB_instance>
diff --git a/ci-scripts/xml_files/fr1_nsa_2x2_quectel.xml b/ci-scripts/xml_files/fr1_nsa_2x2_quectel.xml
index 20f502e9acd..caea61f3b49 100644
--- a/ci-scripts/xml_files/fr1_nsa_2x2_quectel.xml
+++ b/ci-scripts/xml_files/fr1_nsa_2x2_quectel.xml
@@ -57,6 +57,7 @@
 	</testCase>
 	<testCase id="200000">
 		<class>Custom_Command</class>
+    <always_exec>true</always_exec>
 		<desc>Enable Sleep States (obelix)</desc>
 		<node>obelix</node>
 		<command>sudo cpupower idle-set -E</command>
@@ -69,6 +70,7 @@
 	</testCase>
 	<testCase id="800000">
 		<class>Custom_Command</class>
+    <always_exec>true</always_exec>
 		<desc>Enable Sleep States (asterix)</desc>
 		<node>asterix</node>
 		<command>sudo cpupower idle-set -E</command>
@@ -81,6 +83,7 @@
 	</testCase>
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>nrmodule2_quectel</id>
 	</testCase>
@@ -91,6 +94,7 @@
 	</testCase>
 	<testCase id="010011">
 		<class>Detach_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Detach Quectel</desc>
 		<id>nrmodule2_quectel</id>
 	</testCase>
@@ -183,6 +187,7 @@
 
 	<testCase id="080000">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate eNB</desc>
 		<eNB_instance>0</eNB_instance>
 		<eNB_serverId>0</eNB_serverId>
@@ -191,6 +196,7 @@
 
 	<testCase id="080001">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<eNB_instance>1</eNB_instance>
 		<eNB_serverId>1</eNB_serverId>
diff --git a/ci-scripts/xml_files/fr1_nsa_2x2_quectel_attach_detach.xml b/ci-scripts/xml_files/fr1_nsa_2x2_quectel_attach_detach.xml
index b089d1d75c0..170bb6443b5 100644
--- a/ci-scripts/xml_files/fr1_nsa_2x2_quectel_attach_detach.xml
+++ b/ci-scripts/xml_files/fr1_nsa_2x2_quectel_attach_detach.xml
@@ -62,6 +62,7 @@
 	</testCase>
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>nrmodule2_quectel</id>
 	</testCase>
@@ -84,6 +85,7 @@
   </testCase>
   <testCase id="200000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States (asterix)</desc>
     <node>asterix</node>
     <command>sudo cpupower idle-set -E</command>
@@ -96,6 +98,7 @@
   </testCase>
   <testCase id="400000">
     <class>Custom_Command</class>
+    <always_exec>true</always_exec>
     <desc>Enable Sleep States (obelix)</desc>
     <node>obelix</node>
     <command>sudo cpupower idle-set -E</command>
@@ -151,6 +154,7 @@
 
 	<testCase id="080000">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate eNB</desc>
 		<eNB_instance>0</eNB_instance>
 		<eNB_serverId>0</eNB_serverId>
@@ -159,6 +163,7 @@
 
 	<testCase id="080001">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<eNB_instance>1</eNB_instance>
 		<eNB_serverId>1</eNB_serverId>
diff --git a/ci-scripts/xml_files/fr1_nsa_quectel.xml b/ci-scripts/xml_files/fr1_nsa_quectel.xml
index 142e4014dd1..755f3ad9698 100644
--- a/ci-scripts/xml_files/fr1_nsa_quectel.xml
+++ b/ci-scripts/xml_files/fr1_nsa_quectel.xml
@@ -91,6 +91,7 @@
 	</testCase>
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -101,6 +102,7 @@
 	</testCase>
 	<testCase id="010011">
 		<class>Detach_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Detach Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -174,6 +176,7 @@
 
 	<testCase id="080000">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate eNB</desc>
 		<eNB_instance>0</eNB_instance>
 		<eNB_serverId>0</eNB_serverId>
@@ -182,6 +185,7 @@
 
 	<testCase id="080001">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<eNB_instance>1</eNB_instance>
 		<eNB_serverId>1</eNB_serverId>
diff --git a/ci-scripts/xml_files/fr1_nsa_quectel_attach_detach.xml b/ci-scripts/xml_files/fr1_nsa_quectel_attach_detach.xml
index df8b1c049d6..66bcf54be28 100644
--- a/ci-scripts/xml_files/fr1_nsa_quectel_attach_detach.xml
+++ b/ci-scripts/xml_files/fr1_nsa_quectel_attach_detach.xml
@@ -57,6 +57,7 @@
 	</testCase>
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -139,6 +140,7 @@
 
 	<testCase id="080000">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate eNB</desc>
 		<eNB_instance>0</eNB_instance>
 		<eNB_serverId>0</eNB_serverId>
@@ -147,6 +149,7 @@
 
 	<testCase id="080001">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<eNB_instance>1</eNB_instance>
 		<eNB_serverId>1</eNB_serverId>
diff --git a/ci-scripts/xml_files/fr1_nsa_quectel_long.xml b/ci-scripts/xml_files/fr1_nsa_quectel_long.xml
index 05fbcc4ab6d..aebf6bf6688 100644
--- a/ci-scripts/xml_files/fr1_nsa_quectel_long.xml
+++ b/ci-scripts/xml_files/fr1_nsa_quectel_long.xml
@@ -53,6 +53,7 @@
 
 	<testCase id="010002">
 		<class>Terminate_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -63,6 +64,7 @@
 	</testCase>
   <testCase id="010011">
 		<class>Detach_UE</class>
+    <always_exec>true</always_exec>
 		<desc>Detach Quectel</desc>
 		<id>idefix</id>
 	</testCase>
@@ -136,6 +138,7 @@
 
 	<testCase id="080000">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate eNB</desc>
 		<eNB_instance>0</eNB_instance>
 		<eNB_serverId>0</eNB_serverId>
@@ -144,6 +147,7 @@
 
 	<testCase id="080001">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<eNB_instance>1</eNB_instance>
 		<eNB_serverId>1</eNB_serverId>
diff --git a/ci-scripts/xml_files/gnb_phytest_usrp_run.xml b/ci-scripts/xml_files/gnb_phytest_usrp_run.xml
index 3bf54786b56..88f5079b685 100644
--- a/ci-scripts/xml_files/gnb_phytest_usrp_run.xml
+++ b/ci-scripts/xml_files/gnb_phytest_usrp_run.xml
@@ -36,6 +36,7 @@
 	</testCase>
 	 <testCase id = "200000">
 		<class>Custom_Command</class>
+    <always_exec>true</always_exec>
 		<desc>Enable Sleep States</desc>
 		<node>caracal</node>
 		<command>sudo cpupower idle-set -E</command>
@@ -60,6 +61,7 @@
 
 	<testCase id="090109">
 		<class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
 		<desc>Terminate gNB</desc>
 		<air_interface>NR</air_interface>
 	</testCase>
diff --git a/ci-scripts/xml_files/gnb_phytest_usrp_run_100_2x2.xml b/ci-scripts/xml_files/gnb_phytest_usrp_run_100_2x2.xml
index daea0f4456e..f81d747bfee 100644
--- a/ci-scripts/xml_files/gnb_phytest_usrp_run_100_2x2.xml
+++ b/ci-scripts/xml_files/gnb_phytest_usrp_run_100_2x2.xml
@@ -36,6 +36,7 @@
   </testCase>
   <testCase id="200000">
 	  <class>Custom_Command</class>
+    <always_exec>true</always_exec>
 	  <desc>Enable Sleep States</desc>
 	  <node>caracal</node>
 	  <command>sudo cpupower idle-set -E</command>
@@ -60,6 +61,7 @@
 
   <testCase id="390109">
     <class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
     <desc>Terminate gNB</desc>
     <air_interface>NR</air_interface>
   </testCase>
diff --git a/ci-scripts/xml_files/gnb_phytest_usrp_run_60.xml b/ci-scripts/xml_files/gnb_phytest_usrp_run_60.xml
index b436e79b179..4b0fec92e29 100644
--- a/ci-scripts/xml_files/gnb_phytest_usrp_run_60.xml
+++ b/ci-scripts/xml_files/gnb_phytest_usrp_run_60.xml
@@ -36,6 +36,7 @@
   </testCase>
   <testCase id = "200000">
 	  <class>Custom_Command</class>
+    <always_exec>true</always_exec>
 	  <desc>Enable Sleep States</desc>
 	  <node>caracal</node>
 	  <command>sudo cpupower idle-set -E</command>
@@ -60,6 +61,7 @@
 
   <testCase id="190109">
     <class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
     <desc>Terminate gNB</desc>
     <air_interface>NR</air_interface>
   </testCase>
diff --git a/ci-scripts/xml_files/gnb_phytest_usrp_run_60_2x2.xml b/ci-scripts/xml_files/gnb_phytest_usrp_run_60_2x2.xml
index e6aeb6cdeef..f9e298127f0 100644
--- a/ci-scripts/xml_files/gnb_phytest_usrp_run_60_2x2.xml
+++ b/ci-scripts/xml_files/gnb_phytest_usrp_run_60_2x2.xml
@@ -36,6 +36,7 @@
   </testCase>
   <testCase id="200000">
 	  <class>Custom_Command</class>
+    <always_exec>true</always_exec>
 	  <desc>Enable Sleep States</desc>
 	  <node>caracal</node>
 	  <command>sudo cpupower idle-set -E</command>
@@ -60,6 +61,7 @@
 
   <testCase id="290109">
     <class>Terminate_eNB</class>
+    <always_exec>true</always_exec>
     <desc>Terminate gNB</desc>
     <air_interface>NR</air_interface>
   </testCase>
-- 
GitLab