1818 task_path_for_component ,
1919 validate_component_test_structure ,
2020)
21+ from kube_galaxy .pkg .utils .client import create_namespace , delete_namespace , verify_connectivity
2122from kube_galaxy .pkg .utils .errors import ClusterError
2223from kube_galaxy .pkg .utils .logging import error , info , section , success , warning
2324from kube_galaxy .pkg .utils .shell import ShellError , run
@@ -111,9 +112,7 @@ def run_spread_tests(
111112def _verify_test_prerequisites () -> None :
112113 """Verify kubectl and spread are available."""
113114 try :
114- info ("Verifying cluster connectivity..." )
115- run (["kubectl" , "cluster-info" ], check = True , capture_output = True )
116- success ("Connected to Kubernetes cluster" )
115+ verify_connectivity ()
117116
118117 # Check for spread
119118 info ("Verifying spread test framework..." )
@@ -148,23 +147,15 @@ def _create_test_namespace(component_name: str) -> str:
148147 namespace = f"kube-galaxy-test-{ component_name .lower ().replace ('_' , '-' )} "
149148
150149 try :
151- info (f" Creating test namespace: { namespace } " )
152-
153- # Apply with labels
154- run (["kubectl" , "create" , "namespace" , namespace ], check = True )
155-
156- # Label namespace
157- label = "app.kubernetes.io/managed-by=kube-galaxy"
158- run (
159- ["kubectl" , "label" , "namespace" , namespace , label , f"component={ component_name } " ],
160- check = True ,
161- )
162-
163- success (f"Namespace created: { namespace } " )
150+ labels = {
151+ "app.kubernetes.io/managed-by" : "kube-galaxy" ,
152+ "component" : component_name ,
153+ }
154+ create_namespace (namespace , labels )
164155 return namespace
165156
166- except ShellError as exc :
167- raise ClusterError ( f"Failed to create namespace { namespace } : { exc } " ) from exc
157+ except ClusterError :
158+ raise
168159
169160
170161def _cleanup_test_namespace (namespace : str , timeout : int = 60 ) -> None :
@@ -179,22 +170,9 @@ def _cleanup_test_namespace(namespace: str, timeout: int = 60) -> None:
179170 ClusterError: If namespace deletion fails
180171 """
181172 try :
182- info (f" Cleaning up namespace: { namespace } " )
183-
184- # Delete namespace
185- run (
186- ["kubectl" , "delete" , "namespace" , namespace , "--timeout" , f"{ timeout } s" ],
187- check = True ,
188- )
189-
190- success (f"Namespace deleted: { namespace } " )
191-
192- except ShellError as exc :
193- # Don't fail if namespace doesn't exist
194- if "not found" in str (exc ):
195- warning (f" Namespace { namespace } not found (may already be deleted)" )
196- else :
197- raise ClusterError (f"Failed to delete namespace { namespace } : { exc } " ) from exc
173+ delete_namespace (namespace , timeout )
174+ except ClusterError :
175+ raise
198176
199177
200178def _generate_orchestration_spread_yaml (
0 commit comments