From cb96d55a7cacb603d819e1cea806643f5874bd74 Mon Sep 17 00:00:00 2001 From: Michele Baldessari Date: Tue, 2 Jan 2024 13:40:49 +0100 Subject: [PATCH 1/5] Upgrade ESO to v0.9.11 --- golang-external-secrets/Chart.yaml | 2 +- .../charts/external-secrets-0.9.10.tgz | Bin 86339 -> 0 bytes .../charts/external-secrets-0.9.11.tgz | Bin 0 -> 86686 bytes golang-external-secrets/values.yaml | 6 +- ...rets-industrial-edge-factory.expected.yaml | 181 +++++++++++++----- ...-secrets-industrial-edge-hub.expected.yaml | 181 +++++++++++++----- ...ecrets-medical-diagnosis-hub.expected.yaml | 181 +++++++++++++----- ...olang-external-secrets-naked.expected.yaml | 181 +++++++++++++----- ...lang-external-secrets-normal.expected.yaml | 181 +++++++++++++----- 9 files changed, 694 insertions(+), 219 deletions(-) delete mode 100644 golang-external-secrets/charts/external-secrets-0.9.10.tgz create mode 100644 golang-external-secrets/charts/external-secrets-0.9.11.tgz diff --git a/golang-external-secrets/Chart.yaml b/golang-external-secrets/Chart.yaml index 613a9a96..b60b499c 100644 --- a/golang-external-secrets/Chart.yaml +++ b/golang-external-secrets/Chart.yaml @@ -6,6 +6,6 @@ name: golang-external-secrets version: 0.0.3 dependencies: - name: external-secrets - version: "0.9.10" + version: "0.9.11" repository: "https://charts.external-secrets.io" #"https://external-secrets.github.io/kubernetes-external-secrets" diff --git a/golang-external-secrets/charts/external-secrets-0.9.10.tgz b/golang-external-secrets/charts/external-secrets-0.9.10.tgz deleted file mode 100644 index dc04b636814218c1f0d03356d4e07b27341dfc45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86339 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 z 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�JwfB;?m;H*wO9&Y9`

Jg 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≺y@%7)v?JCkQ+ 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 N{(l|wY?%OX4FHLa0%VtrcH1 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 Date: Wed, 3 Jan 2024 09:08:13 +0100 Subject: [PATCH 2/5] Make the container to run with the UID and GID of the user running pattern.sh This allows us to drop the /root bind mount and it will also show any errors related to paths in the proper folder. E.g. any permission problem of KUBECONFIG files won't be shown as /root/kubeconfig (inside the container) but as the proper path inside the /home folder. Tested on F38, F39, RHEL8.9 and RHEL9.2 --- scripts/pattern-util.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/pattern-util.sh b/scripts/pattern-util.sh index bc833866..b5549d07 100755 --- a/scripts/pattern-util.sh +++ b/scripts/pattern-util.sh @@ -25,15 +25,17 @@ fi # $HOME is mounted as itself for any files that are referenced with absolute paths # $HOME is mounted to /root because the UID in the container is 0 and that's where SSH looks for credentials -# Do not quote the ${KUBECONF_ENV} below, otherwise we will pass '' to podman -# which will be confused +# We do not rely on bash's $UID and $GID because on MacOSX $GID is not set +MYUID=$(id -u) +MYGID=$(id -g) podman run -it --rm --pull=newer \ --security-opt label=disable \ + --user "${MYUID}:${MYGID}" \ + --userns "keep-id:uid=${MYUID},gid=${MYGID}" \ -e EXTRA_HELM_OPTS \ -e KUBECONFIG \ -v "${HOME}":"${HOME}" \ -v "${HOME}":/pattern-home \ - -v "${HOME}":/root \ -w "$(pwd)" \ "$PATTERN_UTILITY_CONTAINER" \ $@ From b86f13b397d02b88218011fb52679381de2b92d7 Mon Sep 17 00:00:00 2001 From: Michele Baldessari Date: Wed, 3 Jan 2024 09:09:40 +0100 Subject: [PATCH 3/5] Error out nicely if podman is not present If podman is not installed we get the following unfriendly output: [michele@rhel1]~/multicloud-gitops% ./pattern.sh ./pattern.sh: line 10: podman: command not found ./pattern.sh: line 10: podman: command not found ./pattern.sh: line 32: podman: command not found Let's bail out and have a generic function to check for that in case we need to add other requirements --- scripts/pattern-util.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/pattern-util.sh b/scripts/pattern-util.sh index b5549d07..5cdd1c6d 100755 --- a/scripts/pattern-util.sh +++ b/scripts/pattern-util.sh @@ -1,9 +1,15 @@ #!/bin/bash +function is_available { + command -v $1 >/dev/null 2>&1 || { echo >&2 "$1 is required but it's not installed. Aborting."; exit 1; } +} if [ -z "$PATTERN_UTILITY_CONTAINER" ]; then PATTERN_UTILITY_CONTAINER="quay.io/hybridcloudpatterns/utility-container" fi +readonly commands=(podman) +for cmd in ${commands[@]}; do is_available "$cmd"; done + UNSUPPORTED_PODMAN_VERSIONS="1.6 1.5" for i in ${UNSUPPORTED_PODMAN_VERSIONS}; do # We add a space From ce1548e27586ebf0f673471b9cdfd36934ba4dc4 Mon Sep 17 00:00:00 2001 From: Michele Baldessari Date: Thu, 4 Jan 2024 16:01:36 +0100 Subject: [PATCH 4/5] Account for podman versions older than 4.3.0 The addition of --userns keep-id:uid=...,gid=... is supported only on podman versions >= 4.3.0 [1] If we have an older version, let's just keep the same logic as before. [1] https://github.com/containers/podman/blob/main/troubleshooting.md#39-podman-run-fails-with-error-unrecognized-namespace-mode-keep-iduid1000gid1000-passed --- scripts/pattern-util.sh | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/scripts/pattern-util.sh b/scripts/pattern-util.sh index 5cdd1c6d..745131b5 100755 --- a/scripts/pattern-util.sh +++ b/scripts/pattern-util.sh @@ -1,8 +1,13 @@ #!/bin/bash + function is_available { command -v $1 >/dev/null 2>&1 || { echo >&2 "$1 is required but it's not installed. Aborting."; exit 1; } } +function version { + echo "$@" | awk -F. '{ printf("%d%03d%03d%03d\n", $1,$2,$3,$4); }' +} + if [ -z "$PATTERN_UTILITY_CONTAINER" ]; then PATTERN_UTILITY_CONTAINER="quay.io/hybridcloudpatterns/utility-container" fi @@ -11,15 +16,30 @@ readonly commands=(podman) for cmd in ${commands[@]}; do is_available "$cmd"; done UNSUPPORTED_PODMAN_VERSIONS="1.6 1.5" +PODMAN_VERSION_STR=$(podman --version) for i in ${UNSUPPORTED_PODMAN_VERSIONS}; do # We add a space - if podman --version | grep -q -E "\b${i}"; then - echo "Unsupported podman version. We recommend >= 4.2.0" + if echo "${PODMAN_VERSION_STR}" | grep -q -E "\b${i}"; then + echo "Unsupported podman version. We recommend > 4.3.0" podman --version exit 1 fi done +# podman --version outputs: +# podman version 4.8.2 +PODMAN_VERSION=$(echo "${PODMAN_VERSION_STR}" | awk '{ print $NF }') + +# podman < 4.3.0 do not support keep-id:uid=... +if [ $(version "${PODMAN_VERSION}") -lt $(version "4.3.0") ]; then + PODMAN_ARGS="-v ${HOME}:/root" +else + # We do not rely on bash's $UID and $GID because on MacOSX $GID is not set + MYUID=$(id -u) + MYGID=$(id -g) + PODMAN_ARGS="--user ${MYUID}:${MYGID} --userns keep-id:uid=${MYUID},gid=${MYGID}" +fi + if [ -n "$KUBECONFIG" ]; then if [[ ! "${KUBECONFIG}" =~ ^$HOME* ]]; then echo "${KUBECONFIG} is pointing outside of the HOME folder, this will make it unavailable from the container." @@ -31,17 +51,13 @@ fi # $HOME is mounted as itself for any files that are referenced with absolute paths # $HOME is mounted to /root because the UID in the container is 0 and that's where SSH looks for credentials -# We do not rely on bash's $UID and $GID because on MacOSX $GID is not set -MYUID=$(id -u) -MYGID=$(id -g) podman run -it --rm --pull=newer \ --security-opt label=disable \ - --user "${MYUID}:${MYGID}" \ - --userns "keep-id:uid=${MYUID},gid=${MYGID}" \ -e EXTRA_HELM_OPTS \ -e KUBECONFIG \ -v "${HOME}":"${HOME}" \ -v "${HOME}":/pattern-home \ + ${PODMAN_ARGS} \ -w "$(pwd)" \ "$PATTERN_UTILITY_CONTAINER" \ $@ From a4aebdf8505165c7db1b548340aa4faf5ff1e0a6 Mon Sep 17 00:00:00 2001 From: Michele Baldessari Date: Mon, 15 Jan 2024 10:29:22 +0100 Subject: [PATCH 5/5] Update tests after common rebase --- ...rets-industrial-edge-factory.expected.yaml | 181 +++++++++++++----- ...-secrets-industrial-edge-hub.expected.yaml | 181 +++++++++++++----- ...ecrets-medical-diagnosis-hub.expected.yaml | 181 +++++++++++++----- ...olang-external-secrets-naked.expected.yaml | 181 +++++++++++++----- ...lang-external-secrets-normal.expected.yaml | 181 +++++++++++++----- 5 files changed, 690 insertions(+), 215 deletions(-) diff --git a/tests/common-golang-external-secrets-industrial-edge-factory.expected.yaml b/tests/common-golang-external-secrets-industrial-edge-factory.expected.yaml index 012d8fa0..d1bf40a5 100644 --- a/tests/common-golang-external-secrets-industrial-edge-factory.expected.yaml +++ b/tests/common-golang-external-secrets-industrial-edge-factory.expected.yaml @@ -6,10 +6,10 @@ metadata: name: external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/serviceaccount.yaml @@ -19,10 +19,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-serviceaccount.yaml @@ -32,10 +32,10 @@ metadata: name: external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-secret.yaml @@ -45,10 +45,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook --- @@ -4968,6 +4968,101 @@ spec: required: - secret type: object + template: + description: Template defines a blueprint for the created Secret resource. + properties: + data: + additionalProperties: + type: string + type: object + engineVersion: + default: v2 + description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. + enum: + - v1 + - v2 + type: string + mergePolicy: + default: Replace + enum: + - Replace + - Merge + type: string + metadata: + description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + templateFrom: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + literal: + type: string + secret: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + target: + default: Data + enum: + - Data + - Annotations + - Labels + type: string + type: object + type: array + type: + type: string + type: object required: - secretStoreRefs - selector @@ -8531,10 +8626,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8598,10 +8693,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8707,10 +8802,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-view labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" @@ -8747,10 +8842,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-edit labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -8791,10 +8886,10 @@ metadata: name: common-golang-external-secrets-servicebindings labels: servicebinding.io/controller: "true" - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8812,10 +8907,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8832,10 +8927,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8868,10 +8963,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8907,10 +9002,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8928,10 +9023,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook spec: @@ -8952,10 +9047,10 @@ metadata: name: common-golang-external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -8967,10 +9062,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: external-secrets-cert-controller @@ -8985,7 +9080,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - certcontroller @@ -9015,10 +9110,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9030,10 +9125,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: common-golang-external-secrets @@ -9048,7 +9143,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - --concurrent=1 @@ -9065,10 +9160,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9080,10 +9175,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: hostNetwork: false @@ -9098,7 +9193,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - webhook diff --git a/tests/common-golang-external-secrets-industrial-edge-hub.expected.yaml b/tests/common-golang-external-secrets-industrial-edge-hub.expected.yaml index cb2ea2c2..0c569a2d 100644 --- a/tests/common-golang-external-secrets-industrial-edge-hub.expected.yaml +++ b/tests/common-golang-external-secrets-industrial-edge-hub.expected.yaml @@ -6,10 +6,10 @@ metadata: name: external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/serviceaccount.yaml @@ -19,10 +19,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-serviceaccount.yaml @@ -32,10 +32,10 @@ metadata: name: external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-secret.yaml @@ -45,10 +45,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook --- @@ -4968,6 +4968,101 @@ spec: required: - secret type: object + template: + description: Template defines a blueprint for the created Secret resource. + properties: + data: + additionalProperties: + type: string + type: object + engineVersion: + default: v2 + description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. + enum: + - v1 + - v2 + type: string + mergePolicy: + default: Replace + enum: + - Replace + - Merge + type: string + metadata: + description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + templateFrom: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + literal: + type: string + secret: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + target: + default: Data + enum: + - Data + - Annotations + - Labels + type: string + type: object + type: array + type: + type: string + type: object required: - secretStoreRefs - selector @@ -8531,10 +8626,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8598,10 +8693,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8707,10 +8802,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-view labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" @@ -8747,10 +8842,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-edit labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -8791,10 +8886,10 @@ metadata: name: common-golang-external-secrets-servicebindings labels: servicebinding.io/controller: "true" - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8812,10 +8907,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8832,10 +8927,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8868,10 +8963,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8907,10 +9002,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8928,10 +9023,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook spec: @@ -8952,10 +9047,10 @@ metadata: name: common-golang-external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -8967,10 +9062,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: external-secrets-cert-controller @@ -8985,7 +9080,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - certcontroller @@ -9015,10 +9110,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9030,10 +9125,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: common-golang-external-secrets @@ -9048,7 +9143,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - --concurrent=1 @@ -9065,10 +9160,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9080,10 +9175,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: hostNetwork: false @@ -9098,7 +9193,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - webhook diff --git a/tests/common-golang-external-secrets-medical-diagnosis-hub.expected.yaml b/tests/common-golang-external-secrets-medical-diagnosis-hub.expected.yaml index cb2ea2c2..0c569a2d 100644 --- a/tests/common-golang-external-secrets-medical-diagnosis-hub.expected.yaml +++ b/tests/common-golang-external-secrets-medical-diagnosis-hub.expected.yaml @@ -6,10 +6,10 @@ metadata: name: external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/serviceaccount.yaml @@ -19,10 +19,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-serviceaccount.yaml @@ -32,10 +32,10 @@ metadata: name: external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-secret.yaml @@ -45,10 +45,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook --- @@ -4968,6 +4968,101 @@ spec: required: - secret type: object + template: + description: Template defines a blueprint for the created Secret resource. + properties: + data: + additionalProperties: + type: string + type: object + engineVersion: + default: v2 + description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. + enum: + - v1 + - v2 + type: string + mergePolicy: + default: Replace + enum: + - Replace + - Merge + type: string + metadata: + description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + templateFrom: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + literal: + type: string + secret: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + target: + default: Data + enum: + - Data + - Annotations + - Labels + type: string + type: object + type: array + type: + type: string + type: object required: - secretStoreRefs - selector @@ -8531,10 +8626,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8598,10 +8693,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8707,10 +8802,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-view labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" @@ -8747,10 +8842,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-edit labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -8791,10 +8886,10 @@ metadata: name: common-golang-external-secrets-servicebindings labels: servicebinding.io/controller: "true" - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8812,10 +8907,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8832,10 +8927,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8868,10 +8963,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8907,10 +9002,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8928,10 +9023,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook spec: @@ -8952,10 +9047,10 @@ metadata: name: common-golang-external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -8967,10 +9062,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: external-secrets-cert-controller @@ -8985,7 +9080,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - certcontroller @@ -9015,10 +9110,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9030,10 +9125,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: common-golang-external-secrets @@ -9048,7 +9143,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - --concurrent=1 @@ -9065,10 +9160,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9080,10 +9175,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: hostNetwork: false @@ -9098,7 +9193,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - webhook diff --git a/tests/common-golang-external-secrets-naked.expected.yaml b/tests/common-golang-external-secrets-naked.expected.yaml index f8780cc0..99f0d5cc 100644 --- a/tests/common-golang-external-secrets-naked.expected.yaml +++ b/tests/common-golang-external-secrets-naked.expected.yaml @@ -6,10 +6,10 @@ metadata: name: external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/serviceaccount.yaml @@ -19,10 +19,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-serviceaccount.yaml @@ -32,10 +32,10 @@ metadata: name: external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-secret.yaml @@ -45,10 +45,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook --- @@ -4968,6 +4968,101 @@ spec: required: - secret type: object + template: + description: Template defines a blueprint for the created Secret resource. + properties: + data: + additionalProperties: + type: string + type: object + engineVersion: + default: v2 + description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. + enum: + - v1 + - v2 + type: string + mergePolicy: + default: Replace + enum: + - Replace + - Merge + type: string + metadata: + description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + templateFrom: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + literal: + type: string + secret: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + target: + default: Data + enum: + - Data + - Annotations + - Labels + type: string + type: object + type: array + type: + type: string + type: object required: - secretStoreRefs - selector @@ -8531,10 +8626,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8598,10 +8693,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8707,10 +8802,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-view labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" @@ -8747,10 +8842,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-edit labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -8791,10 +8886,10 @@ metadata: name: common-golang-external-secrets-servicebindings labels: servicebinding.io/controller: "true" - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8812,10 +8907,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8832,10 +8927,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8868,10 +8963,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8907,10 +9002,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8928,10 +9023,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook spec: @@ -8952,10 +9047,10 @@ metadata: name: common-golang-external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -8967,10 +9062,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: external-secrets-cert-controller @@ -8985,7 +9080,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - certcontroller @@ -9015,10 +9110,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9030,10 +9125,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: common-golang-external-secrets @@ -9048,7 +9143,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - --concurrent=1 @@ -9065,10 +9160,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9080,10 +9175,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: hostNetwork: false @@ -9098,7 +9193,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - webhook diff --git a/tests/common-golang-external-secrets-normal.expected.yaml b/tests/common-golang-external-secrets-normal.expected.yaml index cb2ea2c2..0c569a2d 100644 --- a/tests/common-golang-external-secrets-normal.expected.yaml +++ b/tests/common-golang-external-secrets-normal.expected.yaml @@ -6,10 +6,10 @@ metadata: name: external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/serviceaccount.yaml @@ -19,10 +19,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-serviceaccount.yaml @@ -32,10 +32,10 @@ metadata: name: external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm --- # Source: golang-external-secrets/charts/external-secrets/templates/webhook-secret.yaml @@ -45,10 +45,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook --- @@ -4968,6 +4968,101 @@ spec: required: - secret type: object + template: + description: Template defines a blueprint for the created Secret resource. + properties: + data: + additionalProperties: + type: string + type: object + engineVersion: + default: v2 + description: EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. + enum: + - v1 + - v2 + type: string + mergePolicy: + default: Replace + enum: + - Replace + - Merge + type: string + metadata: + description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint. + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + templateFrom: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + literal: + type: string + secret: + properties: + items: + items: + properties: + key: + type: string + templateAs: + default: Values + enum: + - Values + - KeysAndValues + type: string + required: + - key + type: object + type: array + name: + type: string + required: + - items + - name + type: object + target: + default: Data + enum: + - Data + - Annotations + - Labels + type: string + type: object + type: array + type: + type: string + type: object required: - secretStoreRefs - selector @@ -8531,10 +8626,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8598,10 +8693,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8707,10 +8802,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-view labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true" @@ -8747,10 +8842,10 @@ kind: ClusterRole metadata: name: common-golang-external-secrets-edit labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" @@ -8791,10 +8886,10 @@ metadata: name: common-golang-external-secrets-servicebindings labels: servicebinding.io/controller: "true" - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8812,10 +8907,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-cert-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8832,10 +8927,10 @@ kind: ClusterRoleBinding metadata: name: common-golang-external-secrets-controller labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8868,10 +8963,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm rules: - apiGroups: @@ -8907,10 +9002,10 @@ metadata: name: common-golang-external-secrets-leaderelection namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm roleRef: apiGroup: rbac.authorization.k8s.io @@ -8928,10 +9023,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm external-secrets.io/component: webhook spec: @@ -8952,10 +9047,10 @@ metadata: name: common-golang-external-secrets-cert-controller namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -8967,10 +9062,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-cert-controller app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: external-secrets-cert-controller @@ -8985,7 +9080,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - certcontroller @@ -9015,10 +9110,10 @@ metadata: name: common-golang-external-secrets namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9030,10 +9125,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: serviceAccountName: common-golang-external-secrets @@ -9048,7 +9143,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - --concurrent=1 @@ -9065,10 +9160,10 @@ metadata: name: common-golang-external-secrets-webhook namespace: "default" labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: replicas: 1 @@ -9080,10 +9175,10 @@ spec: template: metadata: labels: - helm.sh/chart: external-secrets-0.9.10 + helm.sh/chart: external-secrets-0.9.11 app.kubernetes.io/name: external-secrets-webhook app.kubernetes.io/instance: common-golang-external-secrets - app.kubernetes.io/version: "v0.9.10" + app.kubernetes.io/version: "v0.9.11" app.kubernetes.io/managed-by: Helm spec: hostNetwork: false @@ -9098,7 +9193,7 @@ spec: - ALL readOnlyRootFilesystem: true runAsNonRoot: true - image: "ghcr.io/external-secrets/external-secrets:v0.9.10-ubi" + image: "ghcr.io/external-secrets/external-secrets:v0.9.11-ubi" imagePullPolicy: IfNotPresent args: - webhook