From ac0bc2d89dd8c4465ff2f64f62b3069c9a5e4f6e Mon Sep 17 00:00:00 2001 From: Tobias Trabelsi Date: Sat, 6 Jan 2024 22:48:02 +0100 Subject: [PATCH] also add labels to update handlers --- src/dockerlogin.py | 9 +++++++-- src/kv.py | 8 ++++++-- src/template.py | 11 ++++++++--- 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/src/dockerlogin.py b/src/dockerlogin.py index f07b298..7adba42 100644 --- a/src/dockerlogin.py +++ b/src/dockerlogin.py @@ -96,6 +96,7 @@ def update_managed_registry_secret( id = spec.get('id') secret_name = spec.get('name') secret_namespace = spec.get('namespace') + labels = spec.get('labels') old_config = None old_secret_name = None @@ -132,9 +133,13 @@ def update_managed_registry_secret( "managed": "registry-credential.lerentis.uploadfilter24.eu", "managedObject": f"{namespace}/{name}" } + + if not labels: + labels = {} + secret = kubernetes.client.V1Secret() secret.metadata = kubernetes.client.V1ObjectMeta( - name=secret_name, annotations=annotations) + name=secret_name, annotations=annotations, labels=labels) secret = create_dockerlogin( logger, secret, @@ -143,7 +148,7 @@ def update_managed_registry_secret( password_ref, registry) try: - obj = api.replace_namespaced_secret( + api.replace_namespaced_secret( name=secret_name, body=secret, namespace="{}".format(secret_namespace)) diff --git a/src/kv.py b/src/kv.py index 77d232b..f299cde 100644 --- a/src/kv.py +++ b/src/kv.py @@ -93,6 +93,7 @@ def update_managed_secret( old_secret_namespace = old_config['spec'].get('namespace') secret_name = spec.get('name') secret_namespace = spec.get('namespace') + labels = spec.get('labels') if old_config is not None and ( old_secret_name != secret_name or old_secret_namespace != secret_namespace): @@ -119,13 +120,16 @@ def update_managed_secret( "managedObject": f"{namespace}/{name}" } + if not labels: + labels = {} + secret = kubernetes.client.V1Secret() secret.metadata = kubernetes.client.V1ObjectMeta( - name=secret_name, annotations=annotations) + name=secret_name, annotations=annotations, labels=labels) secret = create_kv(secret, secret_json_object, content_def) try: - obj = api.replace_namespaced_secret( + api.replace_namespaced_secret( name=secret_name, body=secret, namespace="{}".format(secret_namespace)) diff --git a/src/template.py b/src/template.py index b89cd85..2654f0c 100644 --- a/src/template.py +++ b/src/template.py @@ -52,7 +52,7 @@ def create_managed_secret(spec, name, namespace, logger, body, **kwargs): name=secret_name, annotations=annotations, labels=labels) secret = create_template_secret(logger, secret, filename, template) - obj = api.create_namespaced_secret( + api.create_namespaced_secret( secret_namespace, secret ) @@ -74,6 +74,7 @@ def update_managed_secret( filename = spec.get('filename') secret_name = spec.get('name') secret_namespace = spec.get('namespace') + labels = spec.get('labels') old_config = None old_secret_name = None @@ -108,13 +109,17 @@ def update_managed_secret( "managed": "bitwarden-template.lerentis.uploadfilter24.eu", "managedObject": f"{namespace}/{name}" } + + if not labels: + labels = {} + secret = kubernetes.client.V1Secret() secret.metadata = kubernetes.client.V1ObjectMeta( - name=secret_name, annotations=annotations) + name=secret_name, annotations=annotations, labels=labels) secret = create_template_secret(logger, secret, filename, template) try: - obj = api.replace_namespaced_secret( + api.replace_namespaced_secret( name=secret_name, body=secret, namespace="{}".format(secret_namespace))