[bitnami/discourse] Add SMTP variables (#6652)

* Add SMTP variables to [bitnami/discourse] helm chart

* Update description for 'discourse.smtp.password.enabled' in _helpers.tpl for [bitnami/discourse]

* PR review feedback changes

Co-authored-by: Alejandro Moreno <amorenoc@vmware.com>
This commit is contained in:
Elliot Dobson
2021-06-17 22:04:16 +12:00
committed by GitHub
parent e45b8aaa7d
commit 3cb886ef78
7 changed files with 127 additions and 35 deletions

View File

@@ -33,6 +33,15 @@ Return the proper Docker image registry secret names
{{ include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) }}
{{- end -}}
{{/*
Return true if a secret object for Discourse should be created
*/}}
{{- define "discourse.createSecret" -}}
{{- if or (not .Values.discourse.existingSecret) (and (not .Values.discourse.smtp.existingSecret) .Values.discourse.smtp.password .Values.discourse.smtp.enabled) }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/*
Return the Discourse secret name
*/}}
@@ -44,6 +53,26 @@ Return the Discourse secret name
{{- end -}}
{{- end -}}
{{/*
Return the Discourse SMTP secret name
*/}}
{{- define "discourse.smtp.secretName" -}}
{{- if .Values.discourse.smtp.existingSecret }}
{{- printf "%s" .Values.discourse.smtp.existingSecret -}}
{{- else -}}
{{- printf "%s-discourse" (include "common.names.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/*
Return true if Discourse SMTP uses password authentication
*/}}
{{- define "discourse.smtp.password.enabled" -}}
{{- if and (or .Values.discourse.smtp.password .Values.discourse.smtp.existingSecret) .Values.discourse.smtp.enabled }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/*
Get the user defined LoadBalancerIP for this release
Note, returns 127.0.0.1 if using ClusterIP.

View File

@@ -22,6 +22,19 @@ data:
DISCOURSE_DATABASE_PORT_NUMBER: {{ template "discourse.databasePort" . }}
DISCOURSE_DATABASE_NAME: {{ template "discourse.databaseName" . }}
DISCOURSE_DATABASE_USER: {{ template "discourse.databaseUser" . }}
{{- if .Values.discourse.smtp.enabled }}
DISCOURSE_SMTP_HOST: {{ .Values.discourse.smtp.host | quote }}
DISCOURSE_SMTP_PORT: {{ .Values.discourse.smtp.port | quote }}
{{- if .Values.discourse.smtp.user }}
DISCOURSE_SMTP_USER: {{ .Values.discourse.smtp.user | quote }}
{{- end }}
{{- if .Values.discourse.smtp.protocol }}
DISCOURSE_SMTP_PROTOCOL: {{ .Values.discourse.smtp.protocol | quote }}
{{- end }}
{{- if .Values.discourse.smtp.auth }}
DISCOURSE_SMTP_AUTH: {{ .Values.discourse.smtp.auth | quote }}
{{- end }}
{{- end }}
{{- if or .Values.postgresql.enabled .Values.externalDatabase.create }}
POSTGRESQL_CLIENT_DATABASE_HOST: {{ template "discourse.databaseHost" . }}
POSTGRESQL_CLIENT_DATABASE_PORT_NUMBER: {{ template "discourse.databasePort" . }}

View File

@@ -116,6 +116,13 @@ spec:
name: {{ include "discourse.redis.secretName" . }}
key: {{ include "discourse.redis.secretPasswordKey" . }}
{{- end }}
{{- if (include "discourse.smtp.password.enabled" .) }}
- name: DISCOURSE_SMTP_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "discourse.smtp.secretName" . }}
key: smtp-password
{{- end }}
{{- if .Values.discourse.extraEnvVars }}
{{- include "common.tplvalues.render" (dict "value" .Values.discourse.extraEnvVars "context" $) | nindent 12 }}
{{- end }}
@@ -196,6 +203,13 @@ spec:
name: {{ include "discourse.redis.secretName" . }}
key: {{ include "discourse.redis.secretPasswordKey" . }}
{{- end }}
{{- if (include "discourse.smtp.password.enabled" .) }}
- name: DISCOURSE_SMTP_PASSWORD
valueFrom:
secretKeyRef:
name: {{ include "discourse.smtp.secretName" . }}
key: smtp-password
{{- end }}
{{- if .Values.sidekiq.extraEnvVars }}
{{- include "common.tplvalues.render" (dict "value" .Values.sidekiq.extraEnvVars "context" $) | nindent 12 }}
{{- end }}

View File

@@ -1,4 +1,4 @@
{{- if not .Values.discourse.existingSecret }}
{{- if (include "discourse.createSecret" .) }}
apiVersion: v1
kind: Secret
metadata:
@@ -12,9 +12,12 @@ metadata:
{{- end }}
type: Opaque
data:
{{- if .Values.discourse.password }}
{{- if and (.Values.discourse.password) (not .Values.discourse.existingSecret) }}
discourse-password: {{ .Values.discourse.password | b64enc | quote }}
{{- else }}
{{- else if not .Values.discourse.existingSecret }}
discourse-password: {{ randAlphaNum 10 | b64enc | quote }}
{{- end }}
{{- if and (.Values.discourse.smtp.password) (.Values.discourse.smtp.enabled) (not .Values.discourse.smtp.existingSecret) }}
smtp-password: {{ .Values.discourse.smtp.password | b64enc | quote }}
{{- end }}
{{- end }}