diff --git a/Chart.yaml b/Chart.yaml index 2ea20b5..d766a80 100644 --- a/Chart.yaml +++ b/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 appVersion: '1.0' description: A chart to manage the application secrets -name: custom-pod +name: secrets version: 0.1.0 dependencies: - name: common diff --git a/templates/secret.yaml b/templates/secret.yaml index 831f88d..c1603dd 100644 --- a/templates/secret.yaml +++ b/templates/secret.yaml @@ -8,6 +8,12 @@ metadata: type: generic data: {{- range $key, $value := . }} - {{ $key }}: {{ $value | b64enc }} +{{- if eq ( default "value" $value.type ) "value" }} + {{ $key }}: {{ $value.value | b64enc }} +{{- else }} +{{- if eq $value.type "basicAuth" }} + {{ $key }}: {{ ( printf "Basic %s" ( printf "%s:%s" $value.user $value.password ) | b64enc ) | b64enc | quote }} +{{- end }} +{{- end }} {{- end }} {{- end }} diff --git a/tests/expected.yaml b/tests/expected.yaml index b210c5a..9395281 100644 --- a/tests/expected.yaml +++ b/tests/expected.yaml @@ -1,33 +1,34 @@ --- -# Source: custom-pod/templates/dockerhub-secret.yaml +# Source: secrets/templates/dockerhub-secret.yaml apiVersion: v1 kind: Secret metadata: - name: custom-custom-pod-dockerregistry + name: custom-secrets-dockerregistry labels: - helm.sh/chart: custom-pod-0.1.0 + helm.sh/chart: secrets-0.1.0 app.kubernetes.io/version: "1.0" app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: custom-pod + app.kubernetes.io/name: secrets app.kubernetes.io/instance: custom app.kubernetes.io/component: main type: kubernetes.io/dockerconfigjson data: .dockerconfigjson: ewogICJhdXRocyI6IHsKICAgICJkb2NrZXIuaW8iOiB7CiAgICAgICJhdXRoIjogIll6SmpaMmx6WW05ME9qRXlNelE9IiwKICAgICAgInVzZXJuYW1lIjogImMyY2dpc2JvdCIsCiAgICAgICJwYXNzd29yZCI6ICIxMjM0IiwKICAgICAgImVtYWlsIjogImRvY2tlci1odWJAY2FtcHRvY2FtcC5jb20iCiAgICB9LAogICAgImdoY3IuaW8iOiB7CiAgICAgICJhdXRoIjogIll6SmpMV0p2ZEMxbmFYTXRZMms2TVRJek5BPT0iLAogICAgICAidXNlcm5hbWUiOiAiYzJjLWJvdC1naXMtY2kiLAogICAgICAicGFzc3dvcmQiOiAiMTIzNCIsCiAgICAgICJlbWFpbCI6ICJnZW9zcGF0aWFsLWJvdEBjYW1wdG9jYW1wLmNvbSIKICAgIH0sCiAgICAiaHR0cHM6Ly9pbmRleC5kb2NrZXIuaW8vdjEvIjogewogICAgICAiYXV0aCI6ICJZekpqWjJselltOTBPakV5TXpRPSIsCiAgICAgICJ1c2VybmFtZSI6ICJjMmNnaXNib3QiLAogICAgICAicGFzc3dvcmQiOiAiMTIzNCIsCiAgICAgICJlbWFpbCI6ICJkb2NrZXItaHViQGNhbXB0b2NhbXAuY29tIgogICAgfSwKICAgICJleGFtcGxlLmNvbSI6IHsiYXV0aCI6ICJibTl3WlRwdWIzQmwifQogIH0KfQ== --- -# Source: custom-pod/templates/secret.yaml +# Source: secrets/templates/secret.yaml apiVersion: v1 kind: Secret metadata: - name: custom-custom-pod + name: custom-secrets labels: - helm.sh/chart: custom-pod-0.1.0 + helm.sh/chart: secrets-0.1.0 app.kubernetes.io/version: "1.0" app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: custom-pod + app.kubernetes.io/name: secrets app.kubernetes.io/instance: custom app.kubernetes.io/component: main type: generic data: test: dG90bw== test2: dG90bzI= + test3: "UW1GemFXTWdKU0Z6S0R4dWFXdytLVHAwYjNSdg==" diff --git a/tests/values.yaml b/tests/values.yaml index 8b936de..ff618c8 100644 --- a/tests/values.yaml +++ b/tests/values.yaml @@ -13,5 +13,11 @@ dockerregistry: password: '1234' secrets: - test: toto - test2: toto2 + test: + value: toto + test2: + value: toto2 + test3: + type: basicAuth + username: toto + password: toto diff --git a/values.yaml b/values.yaml index 13908d2..b06a0d4 100644 --- a/values.yaml +++ b/values.yaml @@ -1,11 +1,16 @@ nameOverride: '' fullnameOverride: '' -# -#dockerregistry: + +dockerregistry: {} # registry-url: # email: docker-hub@camptocamp.com # username: dockerhubc2c # password: xxx -#secrets: -# key: value +secrets: {} +# key1: +# value: value +# key2: +# type: basicAuth +# username: value +# password: value