Skip to content

Commit 0f35b92

Browse files
[patch] add prepareRestoreSecrets
1 parent c0a31e2 commit 0f35b92

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

src/mas/devops/tekton.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -436,6 +436,46 @@ def prepareAiServicePipelinesNamespace(dynClient: DynamicClient, instanceId: str
436436
logger.info(f"Storage class {storageClass} uses volumeBindingMode={volumeBindingMode}, skipping PVC bind wait")
437437

438438

439+
def prepareRestoreSecrets(dynClient: DynamicClient, namespace: str, restoreConfigs: dict = None):
440+
"""
441+
Create or update secret required for MAS Restore pipeline.
442+
443+
Creates secret in the specified namespace:
444+
- pipeline-restore-configs
445+
446+
Parameters:
447+
dynClient (DynamicClient): OpenShift Dynamic Client
448+
namespace (str): The namespace to create secrets in
449+
restoreConfigs (dict, optional): configuration data for restore. Defaults to None (empty secret).
450+
451+
Returns:
452+
None
453+
454+
Raises:
455+
NotFoundError: If secrets cannot be created
456+
"""
457+
secretsAPI = dynClient.resources.get(api_version="v1", kind="Secret")
458+
459+
# 1. Secret/pipeline-restore-configs
460+
# -------------------------------------------------------------------------
461+
# Must exist, but can be empty
462+
try:
463+
secretsAPI.delete(name="pipeline-restore-configs", namespace=namespace)
464+
except NotFoundError:
465+
pass
466+
467+
if restoreConfigs is None:
468+
restoreConfigs = {
469+
"apiVersion": "v1",
470+
"kind": "Secret",
471+
"type": "Opaque",
472+
"metadata": {
473+
"name": "pipeline-restore-configs"
474+
}
475+
}
476+
secretsAPI.create(body=restoreConfigs, namespace=namespace)
477+
478+
439479
def prepareInstallSecrets(dynClient: DynamicClient, namespace: str, slsLicenseFile: str = None, additionalConfigs: dict = None, certs: str = None, podTemplates: str = None, slack_token: str = None, slack_channel: str = None) -> None:
440480
"""
441481
Create or update secrets required for MAS installation pipelines.

0 commit comments

Comments
 (0)