_configuration.tpl 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. {{- define "immich.configuration" -}}
  2. {{- $fullname := (include "ix.v1.common.lib.chart.names.fullname" $) -}}
  3. {{- $dbHost := (printf "%s-postgres" $fullname) -}}
  4. {{- $dbUser := "immich" -}}
  5. {{- $dbName := "immich" -}}
  6. {{- $dbPass := randAlphaNum 32 -}}
  7. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-postgres-creds" $fullname)) -}}
  8. {{- $dbPass = ((index .data "POSTGRES_PASSWORD") | b64dec) -}}
  9. {{- end -}}
  10. {{/* Temporary set dynamic db details on values,
  11. so we can print them on the notes */}}
  12. {{- $_ := set .Values "immichDbPass" $dbPass -}}
  13. {{- $_ := set .Values "immichDbHost" $dbHost -}}
  14. {{- $redisHost := (printf "%s-redis" $fullname) -}}
  15. {{- $redisPass := randAlphaNum 32 -}}
  16. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-redis-creds" $fullname)) -}}
  17. {{- $redisPass = ((index .data "REDIS_PASSWORD") | b64dec) -}}
  18. {{- end -}}
  19. {{- $dbURL := (printf "postgres://%s:%s@%s:5432/%s?sslmode=disable" $dbUser $dbPass $dbHost $dbName) -}}
  20. {{- $mlURL := printf "http://%v-machinelearning:%v" $fullname .Values.immichNetwork.machinelearningPort }}
  21. secret:
  22. postgres-creds:
  23. enabled: true
  24. data:
  25. POSTGRES_USER: {{ $dbUser }}
  26. POSTGRES_DB: {{ $dbName }}
  27. POSTGRES_PASSWORD: {{ $dbPass }}
  28. POSTGRES_HOST: {{ $dbHost }}
  29. POSTGRES_URL: {{ $dbURL }}
  30. redis-creds:
  31. enabled: true
  32. data:
  33. ALLOW_EMPTY_PASSWORD: "no"
  34. REDIS_PASSWORD: {{ $redisPass }}
  35. REDIS_HOST: {{ $redisHost }}
  36. {{/* Server */}}
  37. immich-creds:
  38. enabled: true
  39. data:
  40. IMMICH_MACHINE_LEARNING_ENABLED: {{ .Values.immichConfig.enableML | quote }}
  41. {{- if .Values.immichConfig.enableML }}
  42. IMMICH_MACHINE_LEARNING_URL: {{ $mlURL | quote }}
  43. {{- end }}
  44. DB_USERNAME: {{ $dbUser }}
  45. DB_PASSWORD: {{ $dbPass }}
  46. DB_HOSTNAME: {{ $dbHost }}
  47. DB_DATABASE_NAME: {{ $dbName }}
  48. DB_PORT: "5432"
  49. REDIS_HOSTNAME: {{ $redisHost }}
  50. REDIS_PASSWORD: {{ $redisPass }}
  51. REDIS_PORT: "6379"
  52. REDIS_DBINDEX: "0"
  53. configmap:
  54. server-config:
  55. enabled: true
  56. data:
  57. IMMICH_LOG_LEVEL: {{ .Values.immichConfig.logLevel | default "log" }}
  58. NODE_ENV: production
  59. IMMICH_PORT: {{ .Values.immichNetwork.webuiPort | quote }}
  60. {{- if .Values.immichConfig.enableML }}
  61. ml-config:
  62. enabled: true
  63. data:
  64. NODE_ENV: production
  65. IMMICH_LOG_LEVEL: {{ .Values.immichConfig.logLevel | default "log" }}
  66. {{- if .Values.immichConfig.huggingFaceEndpoint }}
  67. HF_ENDPOINT: {{ .Values.immichConfig.huggingFaceEndpoint }}
  68. {{- end }}
  69. IMMICH_PORT: {{ .Values.immichNetwork.machinelearningPort | quote }}
  70. MACHINE_LEARNING_CACHE_FOLDER: /mlcache
  71. TRANSFORMERS_CACHE: /mlcache
  72. {{- end }}
  73. {{- with .Values.immichGPU }}
  74. scaleGPU:
  75. {{- range $key, $value := . }}
  76. - gpu:
  77. {{ $key }}: {{ $value }}
  78. targetSelector:
  79. {{- if $.Values.immichGPUContainers.server }}
  80. server:
  81. - server
  82. {{- end }}
  83. {{- if $.Values.immichGPUContainers.machinelearning }}
  84. machinelearning:
  85. - machinelearning
  86. {{- end }}
  87. {{- end -}}
  88. {{- end -}}
  89. {{- end -}}