File tree Expand file tree Collapse file tree 1 file changed +25
-15
lines changed
src/zenml/integrations/kubernetes/orchestrators Expand file tree Collapse file tree 1 file changed +25
-15
lines changed Original file line number Diff line number Diff line change @@ -466,21 +466,31 @@ def create_or_update_secret_from_manifest(
466466 """
467467 namespace = secret_manifest ["metadata" ]["namespace" ]
468468 secret_name = secret_manifest ["metadata" ]["name" ]
469-
470- try :
471- core_api .create_namespaced_secret (
472- namespace = namespace ,
473- body = secret_manifest ,
474- )
475- except ApiException as e :
476- if e .status == 409 : # Already exists, update it
477- core_api .patch_namespaced_secret (
478- name = secret_name ,
479- namespace = namespace ,
480- body = secret_manifest ,
481- )
482- else :
483- raise
469+
470+ # Extract data from manifest - handle both 'data' and 'stringData' fields
471+ secret_data = {}
472+
473+ # Handle base64-encoded 'data' field
474+ if "data" in secret_manifest :
475+ import base64
476+ for key , encoded_value in secret_manifest ["data" ].items ():
477+ if encoded_value is not None :
478+ # Decode base64 data back to string
479+ secret_data [key ] = base64 .b64decode (encoded_value ).decode ('utf-8' )
480+ else :
481+ secret_data [key ] = None
482+
483+ # Handle plain text 'stringData' field
484+ if "stringData" in secret_manifest :
485+ secret_data .update (secret_manifest ["stringData" ])
486+
487+ # Use the existing create_or_update_secret function
488+ create_or_update_secret (
489+ core_api = core_api ,
490+ namespace = namespace ,
491+ secret_name = secret_name ,
492+ data = secret_data ,
493+ )
484494
485495
486496def delete_secret (
You can’t perform that action at this time.
0 commit comments