From 580a7ab95266f2f025a3ca1ac44feda9314c71eb Mon Sep 17 00:00:00 2001
From: Mart van Santen <mart@greenhost.nl>
Date: Wed, 8 Dec 2021 02:57:48 +0100
Subject: [PATCH] Go dry

---
 .../single-sign-on/templates/_helpers.tpl     | 17 +++++++++++++-
 .../templates/deployment-login.yaml           | 15 +-----------
 .../templates/job-create-admin.yaml           | 23 ++++---------------
 3 files changed, 22 insertions(+), 33 deletions(-)

diff --git a/helmchart/single-sign-on/templates/_helpers.tpl b/helmchart/single-sign-on/templates/_helpers.tpl
index 1f32059..684bb6e 100644
--- a/helmchart/single-sign-on/templates/_helpers.tpl
+++ b/helmchart/single-sign-on/templates/_helpers.tpl
@@ -76,4 +76,19 @@ Create a secret name which can be overridden.
 {{ include "single-sign-on.fullname" . }}
 {{- end -}}
 {{- end -}}
-
+{{- define "flask.env" -}}
+- name: FLASK_RUN_HOST
+  value: 0.0.0.0
+- name: HYDRA_ADMIN_URL
+  value: http://{{ .Release.Name }}-hydra-admin:4445
+- name: KRATOS_ADMIN_URL
+  value: http://{{ .Release.Name }}-kratos-admin:80
+- name: KRATOS_PUBLIC_URL
+  value: https://{{ .Values.singleSignOnHost }}/api
+- name: PUBLIC_URL
+  value: https://{{ .Values.singleSignOnHost }}/login
+- name: DATABASE_URL
+  value: postgresql://{{ .Values.login.db.user }}:{{ .Values.login.db.password }}@{{ .Release.Name }}-postgresql/{{ .Values.login.db.database }}
+- name: APP_SETTINGS
+  value: config.DevelopmentConfig
+{{- end }}
diff --git a/helmchart/single-sign-on/templates/deployment-login.yaml b/helmchart/single-sign-on/templates/deployment-login.yaml
index 5900a56..6926e96 100644
--- a/helmchart/single-sign-on/templates/deployment-login.yaml
+++ b/helmchart/single-sign-on/templates/deployment-login.yaml
@@ -21,20 +21,7 @@ spec:
           image: {{ .Values.login.image.repository }}:{{ .Values.login.image.tag }}
           imagePullPolicy: {{ .Values.login.image.pullPolicy }}
           env:
-            - name: FLASK_RUN_HOST
-              value: 0.0.0.0
-            - name: HYDRA_ADMIN_URL
-              value: http://{{ .Release.Name }}-hydra-admin:4445
-            - name: KRATOS_ADMIN_URL
-              value: http://{{ .Release.Name }}-kratos-admin:80
-            - name: KRATOS_PUBLIC_URL
-              value: https://{{ .Values.singleSignOnHost }}/api
-            - name: PUBLIC_URL
-              value: https://{{ .Values.singleSignOnHost }}/login
-            - name: DATABASE_URL
-              value: postgresql://stackspin:stackspin@{{ .Release.Name }}-postgresql/stackspin
-            - name: APP_SETTINGS
-              value: config.DevelopmentConfig
+            {{ include "flask.env" . | nindent 12 }}
           ports:
             - name: login-http
               containerPort: 5000
diff --git a/helmchart/single-sign-on/templates/job-create-admin.yaml b/helmchart/single-sign-on/templates/job-create-admin.yaml
index 3439959..d1bbf42 100644
--- a/helmchart/single-sign-on/templates/job-create-admin.yaml
+++ b/helmchart/single-sign-on/templates/job-create-admin.yaml
@@ -22,24 +22,11 @@ spec:
         image: {{ .Values.login.image.repository }}:{{ .Values.login.image.tag }}
         imagePullPolicy: {{ .Values.login.image.pullPolicy }}
         env:
-        - name: FLASK_RUN_HOST
-          value: 0.0.0.0
-        - name: HYDRA_ADMIN_URL
-          value: http://{{ .Release.Name }}-hydra-admin:4445
-        - name: KRATOS_ADMIN_URL
-          value: http://{{ .Release.Name }}-kratos-admin:80
-        - name: KRATOS_PUBLIC_URL
-          value: https://{{ .Values.singleSignOnHost }}/api
-        - name: PUBLIC_URL
-          value: https://{{ .Values.singleSignOnHost }}/login
-        - name: DATABASE_URL
-          value: postgresql://{{ .Values.login.db.user }}:{{ .Values.login.db.password }}@{{ .Release.Name }}-postgresql/{{ .Values.login.db.database }}
-        - name: APP_SETTINGS
-          value: config.DevelopmentConfig
-        - name: SETUP_USER
-          value: {{ .Values.login.user }}
-        - name: SETUP_PASSWORD
-          value: {{ .Values.login.password }}
+          {{ include "flask.env" . | nindent 10 }}
+          - name: SETUP_USER
+            value: {{ .Values.login.user }}
+          - name: SETUP_PASSWORD
+            value: {{ .Values.login.password }}
         command: ["/bin/bash", "-c"]
         args:
           - flask user create $SETUP_USER;
-- 
GitLab