From 87294826b8d836a836cb6b3d7e83bbc5efb3abc2 Mon Sep 17 00:00:00 2001 From: jfrazx Date: Fri, 12 Jan 2024 15:37:04 -0800 Subject: [PATCH] fix(kitchenowl): assign backend environment variables (#17050) --- charts/stable/kitchenowl/Chart.yaml | 2 +- .../kitchenowl/templates/_configmap.tpl | 10 -- .../stable/kitchenowl/templates/_secrets.tpl | 17 ++-- .../stable/kitchenowl/templates/common.yaml | 6 -- charts/stable/kitchenowl/values.yaml | 94 +++++++++++-------- 5 files changed, 63 insertions(+), 66 deletions(-) delete mode 100644 charts/stable/kitchenowl/templates/_configmap.tpl diff --git a/charts/stable/kitchenowl/Chart.yaml b/charts/stable/kitchenowl/Chart.yaml index b0fed0ab175..8a1886a7944 100644 --- a/charts/stable/kitchenowl/Chart.yaml +++ b/charts/stable/kitchenowl/Chart.yaml @@ -1,7 +1,7 @@ kubeVersion: ">=1.24.0-0" apiVersion: v2 name: kitchenowl -version: 8.2.2 +version: 8.3.0 appVersion: latest description: KitchenOwl is a smart self-hosted grocery list and recipe manager. home: https://truecharts.org/charts/stable/kitchenowl diff --git a/charts/stable/kitchenowl/templates/_configmap.tpl b/charts/stable/kitchenowl/templates/_configmap.tpl deleted file mode 100644 index 619cf789f89..00000000000 --- a/charts/stable/kitchenowl/templates/_configmap.tpl +++ /dev/null @@ -1,10 +0,0 @@ -{{/* Define the configmap */}} -{{- define "kitchenowl.configmap" -}} - -{{- $fullname := (include "tc.v1.common.lib.chart.names.fullname" $) -}} - -enabled: true -data: - BACK_URL: {{ printf "%v-backend:%v" $fullname .Values.service.backend.ports.backend.port }} - -{{- end -}} diff --git a/charts/stable/kitchenowl/templates/_secrets.tpl b/charts/stable/kitchenowl/templates/_secrets.tpl index a006f45cdde..5e19352d50d 100644 --- a/charts/stable/kitchenowl/templates/_secrets.tpl +++ b/charts/stable/kitchenowl/templates/_secrets.tpl @@ -1,15 +1,14 @@ {{/* Define the secrets */}} {{- define "kitchenowl.secrets" -}} -{{- $secretName := (printf "%s-secrets" (include "tc.v1.common.lib.chart.names.fullname" $)) }} -{{- $kitchenowlprevious := lookup "v1" "Secret" .Release.Namespace $secretName }} + +{{- $secretName := printf "%s-kitchenowl-secrets" (include "tc.v1.common.lib.chart.names.fullname" $) }} + +{{- $jwt := randAlphaNum 50 -}} +{{- with lookup "v1" "Secret" .Release.Namespace $secretName -}} + {{- $jwt = index .data "JWT_SECRET_KEY" | b64dec -}} +{{- end }} enabled: true data: - {{- if $kitchenowlprevious }} - JWT_SECRET_KEY: {{ index $kitchenowlprevious.data "JWT_SECRET_KEY" | b64dec }} - {{- else }} - {{- $jwtsecret := randAlphaNum 50 }} - JWT_SECRET_KEY: {{ $jwtsecret }} - {{- end }} - + JWT_SECRET_KEY: {{ $jwt }} {{- end -}} diff --git a/charts/stable/kitchenowl/templates/common.yaml b/charts/stable/kitchenowl/templates/common.yaml index e233b9249b7..609f9b36292 100644 --- a/charts/stable/kitchenowl/templates/common.yaml +++ b/charts/stable/kitchenowl/templates/common.yaml @@ -6,10 +6,4 @@ {{- $_ := set .Values.secret "kitchenowl-secrets" $secrets -}} {{- end -}} -{{/* Render configmap for Kitchenowl */}} -{{- $configmap := include "kitchenowl.configmap" . | fromYaml -}} -{{- if $configmap -}} - {{- $_ := set .Values.configmap "kitchenowl-config" $configmap -}} -{{- end -}} - {{ include "tc.v1.common.loader.apply" . }} diff --git a/charts/stable/kitchenowl/values.yaml b/charts/stable/kitchenowl/values.yaml index 44e15fcc8da..6187064caef 100644 --- a/charts/stable/kitchenowl/values.yaml +++ b/charts/stable/kitchenowl/values.yaml @@ -6,82 +6,66 @@ backendImage: repository: tombursch/kitchenowl pullPolicy: IfNotPresent tag: latest@sha256:0a4ae56f82b25a9e6362689af500b3f7f6248e898db7e4c5fcbd1b42bfa9b119 + service: main: enabled: true - targetSelector: main + # Target frontend pod + targetSelector: frontend ports: main: enabled: true - targetSelector: main + # Target frontend container + targetSelector: frontend protocol: http targetPort: 80 port: 10246 backend: enabled: true - targetSelector: backend + # Target main(backend) pod + targetSelector: main ports: backend: enabled: true - targetSelector: backend + # Target main(backend) container + targetSelector: main protocol: http targetPort: 5000 port: 10247 + persistence: data: enabled: true targetSelector: - backend: - backend: + main: + main: mountPath: /data + portal: open: enabled: true + securityContext: container: readOnlyRootFilesystem: false runAsNonRoot: false runAsUser: 0 runAsGroup: 0 + workload: main: + enabled: true + primary: true type: Deployment - strategy: RollingUpdate - replicas: 1 podSpec: containers: main: - enabled: true - primary: true - envFrom: - - configMapRef: - name: kitchenowl-config - env: - FRONT_URL: "{{ .Values.workload.main.podSpec.containers.main.env.FRONT_URL }}" - probes: - liveness: - type: http - path: / - port: "{{ .Values.service.main.ports.main.targetPort }}" - readiness: - type: http - path: / - port: "{{ .Values.service.main.ports.main.targetPort }}" - startup: - type: http - path: / - port: "{{ .Values.service.main.ports.main.targetPort }}" - backend: - enabled: true - type: Deployment - podSpec: - containers: - backend: + # Backend enabled: true primary: true imageSelector: backendImage env: - FRONT_URL: "{{ .Values.workload.main.podSpec.containers.main.env.FRONT_URL }}" + FRONT_URL: "" OIDC_ISSUER: "" OIDC_CLIENT_ID: "" OIDC_CLIENT_SECRET: "" @@ -89,12 +73,11 @@ workload: APPLE_CLIENT_SECRET: "" GOOGLE_CLIENT_ID: "" GOOGLE_CLIENT_SECRET: "" - # Changed port to 10248 to avoid conflict with frontend - HTTP_PORT: "10248" JWT_SECRET_KEY: secretKeyRef: name: kitchenowl-secrets key: JWT_SECRET_KEY + STORAGE_PATH: "{{ .Values.persistence.data.targetSelector.main.main.mountPath }}" DB_DRIVER: "postgresql" DB_HOST: secretKeyRef: @@ -109,20 +92,51 @@ workload: probes: liveness: enabled: true - type: tcp + type: exec port: "{{ .Values.service.backend.ports.backend.targetPort }}" + command: + - uwsgi_curl + - localhost:5000 + - /api/health/8M4F88S8ooi4sMbLBfkkV7ctWwgibW6V readiness: enabled: true - type: tcp + type: exec port: "{{ .Values.service.backend.ports.backend.targetPort }}" + command: + - uwsgi_curl + - localhost:5000 + - /api/health/8M4F88S8ooi4sMbLBfkkV7ctWwgibW6V startup: enabled: true type: tcp port: "{{ .Values.service.backend.ports.backend.targetPort }}" + frontend: + enabled: true + type: Deployment + strategy: RollingUpdate + replicas: 1 + podSpec: + containers: + frontend: + enabled: true + primary: true + env: + BACK_URL: '{{ printf "%s-backend:%v" (include "tc.v1.common.lib.chart.names.fullname" $) .Values.service.backend.ports.backend.port }}' + probes: + liveness: + type: http + path: / + port: "{{ .Values.service.main.ports.main.targetPort }}" + readiness: + type: http + path: / + port: "{{ .Values.service.main.ports.main.targetPort }}" + startup: + type: tcp + port: "{{ .Values.service.main.ports.main.targetPort }}" # Enabled postgres cnpg: main: enabled: true user: kitchenowl database: kitchenowl -updated: true