support datastore password secret created by external resources (#464)

This allows the datastore secret object to be created by external agents
such as https://github.com/external-secrets/external-secrets

---------

Signed-off-by: grameshtwilio <[email protected]>
Co-authored-by: Faisal Memon <[email protected]>
This commit is contained in:
grameshtwilio
2023-08-22 16:08:52 -07:00
committed by GitHub
co-authored by Faisal Memon
parent 71ac5afa11
commit c817dd2411
5 changed files with 33 additions and 0 deletions
@@ -1,4 +1,14 @@
{{- if and (.Values.dataStore.sql.externalSecret.enabled) (ne .Values.dataStore.sql.password "") }}
{{- fail "dataStore.sql.password should not be set when dataStore.sql.externalSecret is enabled" }}
{{- end }}
{{- if and (.Values.dataStore.sql.externalSecret.enabled) (eq .Values.dataStore.sql.externalSecret.name "") }}
{{- fail "dataStore.sql.externalSecret.name cannot be empty string when dataStore.sql.externalSecret is enabled" }}
{{- end }}
{{- if and (.Values.dataStore.sql.externalSecret.enabled) (eq .Values.dataStore.sql.externalSecret.key "") }}
{{- fail "dataStore.sql.externalSecret.key cannot be empty string when dataStore.sql.externalSecret is enabled" }}
{{- end }}
{{- if ne .Values.dataStore.sql.databaseType "sqlite3" }}
{{- if not .Values.dataStore.sql.externalSecret.enabled }}
apiVersion: v1
kind: Secret
metadata:
@@ -7,3 +17,4 @@ metadata:
data:
DBPW: {{ .Values.dataStore.sql.password | b64enc }}
{{- end }}
{{- end }}
@@ -83,12 +83,20 @@ spec:
- name: PATH
value: "/opt/spire/bin:/bin"
{{- if ne .Values.dataStore.sql.databaseType "sqlite3" }}
{{- if .Values.dataStore.sql.externalSecret.enabled }}
- name: DBPW
valueFrom:
secretKeyRef:
name: {{ .Values.dataStore.sql.externalSecret.name }}
key: {{ .Values.dataStore.sql.externalSecret.key }}
{{- else }}
- name: DBPW
valueFrom:
secretKeyRef:
name: {{ $fullname }}-dbpw
key: DBPW
{{- end }}
{{- end }}
{{- if ne .Values.keyManager.awsKMS.accessKeyID "" }}
- name: AWS_KMS_ACCESS_KEY_ID
valueFrom: