From 544e61fb34c7612c7454a045209a8fa2996cf037 Mon Sep 17 00:00:00 2001 From: Diego Rodriguez Date: Fri, 1 May 2020 16:08:46 +0200 Subject: [PATCH] helm: add mail service for development faces --- helm/configurations/values-dev.yaml | 8 +++++ helm/reana/templates/cronjobs.yaml | 6 ++-- helm/reana/templates/reana-mail.yaml | 44 ++++++++++++++++++++++++++ helm/reana/templates/reana-server.yaml | 20 ++++++++++++ 4 files changed, 74 insertions(+), 4 deletions(-) create mode 100644 helm/reana/templates/reana-mail.yaml diff --git a/helm/configurations/values-dev.yaml b/helm/configurations/values-dev.yaml index a5b5eabc..fff8ac45 100644 --- a/helm/configurations/values-dev.yaml +++ b/helm/configurations/values-dev.yaml @@ -16,3 +16,11 @@ components: image: reanahub/reana-message-broker reana_ui: image: reanahub/reana-ui + +notifications: + enabled: true + email_config: + # No login nor password as we use a dev mail service + receiver: team@reana.io + sender: notifications@reana.io + system_status: "*/5 * * * *" diff --git a/helm/reana/templates/cronjobs.yaml b/helm/reana/templates/cronjobs.yaml index c6d2cddc..75af8d25 100644 --- a/helm/reana/templates/cronjobs.yaml +++ b/helm/reana/templates/cronjobs.yaml @@ -5,7 +5,7 @@ kind: CronJob metadata: name: {{ include "reana.prefix" . }}-system-status spec: - schedule: {{ .Values.notifications.system_status }} + schedule: "{{ .Values.notifications.system_status }}" jobTemplate: spec: template: @@ -33,10 +33,8 @@ spec: {{- else }} - name: REANA_EMAIL_SMTP_SERVER value: {{ .Values.notifications.email_config.smtp_server }} - - name: REANA_SMTP_PORT + - name: REANA_EMAIL_SMTP_PORT value: {{ .Values.notifications.email_config.smpt_port }} - - name: REANA_EMAIL_SENDER - value: {{ .Values.notifications.email_config.sender }} - name: REANA_EMAIL_LOGIN valueFrom: secretKeyRef: diff --git a/helm/reana/templates/reana-mail.yaml b/helm/reana/templates/reana-mail.yaml new file mode 100644 index 00000000..032b0298 --- /dev/null +++ b/helm/reana/templates/reana-mail.yaml @@ -0,0 +1,44 @@ +{{- if .Values.debug.enabled }} +--- +apiVersion: v1 +kind: Service +metadata: + name: {{ include "reana.prefix" . }}-mail +spec: + type: "NodePort" + ports: + - port: 30025 + targetPort: 25 + nodePort: 30025 + name: "smtp" + protocol: TCP + - port: 32580 + targetPort: 80 + nodePort: 32580 + name: "ui" + protocol: TCP + selector: + app: {{ include "reana.prefix" . }}-mail +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "reana.prefix" . }}-mail +spec: + replicas: 1 + selector: + matchLabels: + app: {{ include "reana.prefix" . }}-mail + template: + metadata: + labels: + app: {{ include "reana.prefix" . }}-mail + spec: + containers: + - name: maildev + image: maildev/maildev + imagePullPolicy: IfNotPresent + ports: + - containerPort: 80 + - containerPort: 25 +{{- end }} diff --git a/helm/reana/templates/reana-server.yaml b/helm/reana/templates/reana-server.yaml index a0c868a1..7508e5a6 100644 --- a/helm/reana/templates/reana-server.yaml +++ b/helm/reana/templates/reana-server.yaml @@ -111,7 +111,25 @@ spec: value: "" - name: GIT_SSL_NO_VERIFY value: "true" + - name: REANA_EMAIL_SMTP_SERVER + value: {{ include "reana.prefix" . }}-mail + - name: REANA_EMAIL_SMTP_PORT + value: "30025" {{- else }} + - name: REANA_EMAIL_SMTP_SERVER + value: {{ .Values.notifications.email_config.smtp_server }} + - name: REANA_EMAIL_SMTP_PORT + value: {{ .Values.notifications.email_config.smpt_port }} + - name: REANA_EMAIL_LOGIN + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-mail-notification-sender-password + key: REANA_EMAIL_LOGIN + - name: REANA_EMAIL_PASSWORD + valueFrom: + secretKeyRef: + name: {{ include "reana.prefix" . }}-mail-notification-sender-password + key: REANA_EMAIL_PASSWORD - name: REANA_DB_USERNAME valueFrom: secretKeyRef: @@ -123,6 +141,8 @@ spec: name: {{ include "reana.prefix" . }}-db-secrets key: password {{- end }} + - name: REANA_EMAIL_SENDER + value: {{ .Values.notifications.email_config.sender }} - name: scheduler image: {{ .Values.components.reana_server.image }} imagePullPolicy: {{ .Values.components.reana_server.imagePullPolicy }}