_configuration.tpl 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. {{- define "planka.configuration" -}}
  2. {{- $fullname := (include "ix.v1.common.lib.chart.names.fullname" $) -}}
  3. {{- $secretKey := randAlphaNum 32 -}}
  4. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-planka" $fullname)) -}}
  5. {{- $secretKey = ((index .data "SECRET_KEY") | b64dec) -}}
  6. {{- end -}}
  7. {{- $dbHost := (printf "%s-postgres" $fullname) -}}
  8. {{- $dbUser := "planka" -}}
  9. {{- $dbName := "planka" -}}
  10. {{- $dbPass := (randAlphaNum 32) -}}
  11. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-postgres-creds" $fullname)) -}}
  12. {{- $dbPass = ((index .data "POSTGRES_PASSWORD") | b64dec) -}}
  13. {{- end -}}
  14. {{- $dbURL := (printf "%s:%s@%s:5432/%s?sslmode=disable" $dbUser $dbPass $dbHost $dbName) -}}
  15. {{/* Temporary set dynamic db details on values,
  16. so we can print them on the notes */}}
  17. {{- $_ := set .Values "plankaDbPass" $dbPass -}}
  18. {{- $_ := set .Values "plankaDbHost" $dbHost }}
  19. secret:
  20. planka:
  21. enabled: true
  22. data:
  23. SECRET_KEY: {{ $secretKey }}
  24. DATABASE_URL: {{ printf "postgresql://%s" $dbURL }}
  25. {{- if .Values.plankaConfig.defaultAdminEmail }}
  26. DEFAULT_ADMIN_EMAIL: {{ .Values.plankaConfig.defaultAdminEmail }}
  27. DEFAULT_ADMIN_PASSWORD: {{ .Values.plankaConfig.defaultAdminPassword }}
  28. DEFAULT_ADMIN_NAME: {{ .Values.plankaConfig.defaultAdminName }}
  29. DEFAULT_ADMIN_USERNAME: {{ .Values.plankaConfig.defaultAdminUsername }}
  30. {{- end }}
  31. postgres-creds:
  32. enabled: true
  33. data:
  34. POSTGRES_USER: {{ $dbUser }}
  35. POSTGRES_DB: {{ $dbName }}
  36. POSTGRES_PASSWORD: {{ $dbPass }}
  37. POSTGRES_HOST: {{ $dbHost }}
  38. POSTGRES_URL: {{ printf "postgres://%s" $dbURL }}
  39. {{- if and
  40. (not (hasPrefix "http://" .Values.plankaConfig.baseURL))
  41. (not (hasPrefix "https://" .Values.plankaConfig.baseURL)) -}}
  42. {{- fail "Planka - Expected [Base URL] to start with [http://] or [https://]" -}}
  43. {{- end }}
  44. configmap:
  45. planka:
  46. enabled: true
  47. data:
  48. NODE_ENV: production
  49. BASE_URL: {{ .Values.plankaConfig.baseURL }}
  50. TRUST_PROXY: {{ ternary "1" "0" .Values.plankaConfig.trustProxy | quote }}
  51. {{- end -}}