From 230a884bc11a4eb8f76931c64d2afb16d6d370b0 Mon Sep 17 00:00:00 2001 From: Pierre Ugaz Date: Wed, 7 Oct 2020 16:46:16 -0300 Subject: [PATCH 1/2] define uri for migrations, migration job --- charts/konga/Chart.yaml | 4 +-- charts/konga/templates/configmap.yaml | 29 ++++++++++++++--- charts/konga/templates/deployment.yaml | 6 ++-- charts/konga/templates/migrations.yaml | 44 ++++++++++++++++++++++++++ charts/konga/values.yaml | 4 ++- 5 files changed, 78 insertions(+), 9 deletions(-) create mode 100644 charts/konga/templates/migrations.yaml diff --git a/charts/konga/Chart.yaml b/charts/konga/Chart.yaml index e9e2fe0ba..7d4f0dd4b 100644 --- a/charts/konga/Chart.yaml +++ b/charts/konga/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v1 -appVersion: "1.0" +appVersion: "0.14.9" description: A Helm chart for Kubernetes name: konga -version: 1.0.0 +version: 1.0.1 diff --git a/charts/konga/templates/configmap.yaml b/charts/konga/templates/configmap.yaml index 233b7e64a..6d97a946b 100644 --- a/charts/konga/templates/configmap.yaml +++ b/charts/konga/templates/configmap.yaml @@ -11,26 +11,47 @@ data: {{- if .Values.config }} PORT: "{{ default 1337 .Values.config.port }}" NODE_ENV: {{ default "development" .Values.config.node_env }} + {{- if not ( empty .Values.config.ssl_key_path ) }} SSL_KEY_PATH: {{ .Values.config.ssl_key_path }} + {{- end }} + {{- if not ( empty .Values.config.ssl_crt_path )}} SSL_CRT_PATH: {{ .Values.config.ssl_crt_path }} + {{- end }} KONGA_HOOK_TIMEOUT: "{{ default 60000 .Values.config.konga_hook_timeout }}" DB_ADAPTER: {{ default "postgres" .Values.config.db_adapter }} - DB_URI: {{ .Values.config.db_uri }} - DB_HOST: {{ default "localhost" .Values.config.db_host }} - DB_PORT: "{{ default 5432 .Values.config.db_port }}" + {{- if and ( eq .Values.config.db_adapter "postgres" ) ( empty .Values.config.db_uri) }} + {{- $dburi := ( print "postgresql://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 5432 .Values.config.db_port ) "/" .Values.config.db_database ) }} + DB_URI: {{ $dburi | quote }} + {{- else if and ( eq .Values.config.db_adapter "mysql" ) ( empty .Values.config.db_uri) }} + {{- $dburi := ( print .Values.config.db_adapter "://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 3306 .Values.config.db_port ) "/" .Values.config.db_database ) }} + DB_URI: {{ $dburi | quote }} + {{- else if and ( eq .Values.config.db_adapter "mongo" ) ( empty .Values.config.db_uri ) }} + {{- $dburi := ( print "mongodb://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 27017 .Values.config.db_port ) "/" .Values.config.db_database ) }} + DB_URI: {{ $dburi | quote }} + {{- end }} + DB_HOST: {{ .Values.config.db_host }} + DB_PORT: {{ .Values.config.db_port | quote }} DB_USER: {{ .Values.config.db_user }} DB_PASSWORD: {{ .Values.config.db_password }} DB_DATABASE: {{ default "konga_database" .Values.config.db_database }} + {{- if eq .Values.config.db_adapter "postgres" }} DB_PG_SCHEMA: {{ default "public" .Values.config.db_pg_schema }} + {{- end}} {{- if eq .Values.config.node_env "development" }} KONGA_LOG_LEVEL: {{ default "debug" .Values.config.log_level }} - {{ else if eq .Values.config.node_env "production" }} + {{- else if eq .Values.config.node_env "production" }} KONGA_LOG_LEVEL: {{ default "warn" .Values.config.log_level }} {{- end }} + {{- if not ( empty .Values.config.token_secret ) }} TOKEN_SECRET: {{ .Values.config.token_secret }} + {{- end }} + {{- if not ( empty .Values.config.konga_node_data ) }} KONGA_SEED_KONG_NODE_DATA_SOURCE_FILE: "{{ .Values.config.konga_node_data }}" + {{- end }} + {{- if not ( empty .Values.config.konga_user_data ) }} KONGA_SEED_USER_DATA_SOURCE_FILE: "{{ .Values.config.konga_user_data }}" {{- end }} + {{- end }} {{- if .Values.ldap }} KONGA_AUTH_PROVIDER: {{ default "local" .Values.ldap.auth_provider }} diff --git a/charts/konga/templates/deployment.yaml b/charts/konga/templates/deployment.yaml index 3ff770f23..20565df29 100644 --- a/charts/konga/templates/deployment.yaml +++ b/charts/konga/templates/deployment.yaml @@ -19,8 +19,8 @@ spec: app.kubernetes.io/name: {{ include "konga.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} spec: - volumes: {{- if .Values.extraVolumes }} + volumes: {{ toYaml .Values.extraVolumes | indent 8 }} {{- end }} containers: @@ -42,10 +42,12 @@ spec: envFrom: - configMapRef: name: {{ include "konga.fullname" . }}-config + {{- if .Values.resources }} resources: {{- toYaml .Values.resources | nindent 12 }} - volumeMounts: + {{- end }} {{- if .Values.extraVolumeMounts }} + volumeMounts: {{ toYaml .Values.extraVolumeMounts | nindent 12 }} {{- end }} {{- with .Values.nodeSelector }} diff --git a/charts/konga/templates/migrations.yaml b/charts/konga/templates/migrations.yaml new file mode 100644 index 000000000..03c526f26 --- /dev/null +++ b/charts/konga/templates/migrations.yaml @@ -0,0 +1,44 @@ +{{- if and .Values.runMigrations ( ne .Values.config.db_adapter "mongo" ) }} +apiVersion: batch/v1 +kind: Job +metadata: + name: {{ include "konga.name" . }}-migrations + labels: + app: {{ include "konga.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service }} + component: init-db-migrations +spec: + template: + metadata: + name: {{ include "konga.name" . }}-migrations + labels: + app.kubernetes.io/name: {{ include "konga.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version }} + helm.sh/chart: {{ include "konga.chart" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/managed-by: {{ .Release.Service }} + spec: + containers: + - name: {{ .Chart.Name }}-migrations + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + command: + - "/app/start.sh" + args: + - "-c" + - "prepare" + {{- if and ( eq .Values.config.db_adapter "postgres" ) ( empty .Values.config.db_uri) }} + {{- $dburi := ( print "postgresql://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 5432 .Values.config.db_port ) "/" .Values.config.db_database ) }} + - {{ .Values.config.db_adapter | quote }} + - -u + - {{ $dburi | quote }} + {{- else if and ( eq .Values.config.db_adapter "mysql" ) ( empty .Values.config.db_uri) }} + {{- $dburi := ( print .Values.config.db_adapter "://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 3306 .Values.config.db_port ) "/" .Values.config.db_database ) }} + - {{ .Values.config.db_adapter | quote }} + - -u + - {{ $dburi | quote }} +{{- end }} + restartPolicy: Never + backoffLimit: 20 +{{- end }} diff --git a/charts/konga/values.yaml b/charts/konga/values.yaml index 688391f2a..99b87b898 100644 --- a/charts/konga/values.yaml +++ b/charts/konga/values.yaml @@ -6,7 +6,7 @@ replicaCount: 1 image: repository: pantsel/konga - tag: latest + tag: 0.14.9 pullPolicy: IfNotPresent nameOverride: "" @@ -89,3 +89,5 @@ nodeSelector: {} tolerations: [] affinity: {} + +runMigrations: false From aaa18bfb8ae0dd8092e5cb3382d9daa1d0f913a9 Mon Sep 17 00:00:00 2001 From: Julian Veliz Date: Thu, 15 Apr 2021 12:03:23 -0500 Subject: [PATCH 2/2] chore: fix call to adapter on migration jobs --- charts/konga/templates/migrations.yaml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/charts/konga/templates/migrations.yaml b/charts/konga/templates/migrations.yaml index 03c526f26..162610077 100644 --- a/charts/konga/templates/migrations.yaml +++ b/charts/konga/templates/migrations.yaml @@ -28,17 +28,18 @@ spec: args: - "-c" - "prepare" + - "a" {{- if and ( eq .Values.config.db_adapter "postgres" ) ( empty .Values.config.db_uri) }} {{- $dburi := ( print "postgresql://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 5432 .Values.config.db_port ) "/" .Values.config.db_database ) }} - {{ .Values.config.db_adapter | quote }} - - -u + - "-u" - {{ $dburi | quote }} {{- else if and ( eq .Values.config.db_adapter "mysql" ) ( empty .Values.config.db_uri) }} {{- $dburi := ( print .Values.config.db_adapter "://" .Values.config.db_user ":" .Values.config.db_password "@" ( default "localhost" .Values.config.db_host ) ":" ( default 3306 .Values.config.db_port ) "/" .Values.config.db_database ) }} - {{ .Values.config.db_adapter | quote }} - - -u + - "-u" - {{ $dburi | quote }} -{{- end }} + {{- end }} restartPolicy: Never backoffLimit: 20 {{- end }}