@@ -315,32 +315,41 @@ def deploy_namespaces(directory: Path):
315
315
)
316
316
return
317
317
318
+ processes = []
318
319
for namespace in namespaces_file ["namespaces" ]:
319
- click .echo (f"Deploying namespace: { namespace .get ('name' )} " )
320
- try :
321
- temp_override_file_path = ""
322
- namespace_name = namespace .get ("name" )
323
- namespace_config_override = {k : v for k , v in namespace .items () if k != "name" }
324
-
325
- cmd = f"{ HELM_COMMAND } { namespace_name } { NAMESPACES_CHART_LOCATION } -f { defaults_file_path } "
326
-
327
- if namespace_config_override :
328
- with tempfile .NamedTemporaryFile (
329
- mode = "w" , suffix = ".yaml" , delete = False
330
- ) as temp_file :
331
- yaml .dump (namespace_config_override , temp_file )
332
- temp_override_file_path = Path (temp_file .name )
333
- cmd = f"{ cmd } -f { temp_override_file_path } "
334
-
335
- if not stream_command (cmd ):
336
- click .echo (f"Failed to run Helm command: { cmd } " )
337
- return
338
- except Exception as e :
339
- click .echo (f"Error: { e } " )
320
+ p = Process (target = deploy_single_namespace , args = (namespace , defaults_file_path ))
321
+ p .start ()
322
+ processes .append (p )
323
+
324
+ for p in processes :
325
+ p .join ()
326
+
327
+ def deploy_single_namespace (namespace , defaults_file_path : Path ):
328
+ click .echo (f"Deploying namespace: { namespace .get ('name' )} " )
329
+ temp_override_file_path = ""
330
+ try :
331
+ namespace_name = namespace .get ("name" )
332
+ namespace_config_override = {k : v for k , v in namespace .items () if k != "name" }
333
+
334
+ cmd = f"{ HELM_COMMAND } { namespace_name } { NAMESPACES_CHART_LOCATION } -f { defaults_file_path } "
335
+
336
+ if namespace_config_override :
337
+ with tempfile .NamedTemporaryFile (
338
+ mode = "w" , suffix = ".yaml" , delete = False
339
+ ) as temp_file :
340
+ yaml .dump (namespace_config_override , temp_file )
341
+ temp_override_file_path = Path (temp_file .name )
342
+ cmd = f"{ cmd } -f { temp_override_file_path } "
343
+
344
+ if not stream_command (cmd ):
345
+ click .echo (f"Failed to run Helm command: { cmd } " )
340
346
return
341
- finally :
342
- if temp_override_file_path :
343
- temp_override_file_path .unlink ()
347
+ except Exception as e :
348
+ click .echo (f"Error: { e } " )
349
+ return
350
+ finally :
351
+ if temp_override_file_path :
352
+ Path (temp_override_file_path ).unlink ()
344
353
345
354
346
355
def is_windows ():
0 commit comments