_configuration.tpl 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  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 & Microservices */}}
  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. LOG_LEVEL: log
  58. NODE_ENV: production
  59. SERVER_PORT: {{ .Values.immichNetwork.webuiPort | quote }}
  60. micro-config:
  61. enabled: true
  62. data:
  63. LOG_LEVEL: log
  64. NODE_ENV: production
  65. MICROSERVICES_PORT: {{ .Values.immichNetwork.microservicesPort | quote }}
  66. REVERSE_GEOCODING_DUMP_DIRECTORY: /microcache
  67. {{- if .Values.immichConfig.enableML }}
  68. ml-config:
  69. enabled: true
  70. data:
  71. NODE_ENV: production
  72. MACHINE_LEARNING_PORT: {{ .Values.immichNetwork.machinelearningPort | quote }}
  73. MACHINE_LEARNING_CACHE_FOLDER: /mlcache
  74. TRANSFORMERS_CACHE: /mlcache
  75. {{- end }}
  76. {{- with .Values.immichGPU }}
  77. scaleGPU:
  78. {{- range $key, $value := . }}
  79. - gpu:
  80. {{ $key }}: {{ $value }}
  81. targetSelector:
  82. {{- if $.Values.immichGPUContainers.microservices }}
  83. microservices:
  84. - microservices
  85. {{- end }}
  86. {{- if $.Values.immichGPUContainers.machinelearning }}
  87. machinelearning:
  88. - machinelearning
  89. {{- end }}
  90. {{- end -}}
  91. {{- end -}}
  92. {{- end -}}