_configuration.tpl 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. {{- define "nextcloud.configuration" -}}
  2. {{- $fullname := (include "ix.v1.common.lib.chart.names.fullname" $) -}}
  3. {{- $dbHost := (printf "%s-postgres" $fullname) -}}
  4. {{- $dbUser := "nextcloud" -}}
  5. {{- $dbName := "nextcloud" -}}
  6. {{- $dbPass := (randAlphaNum 32) -}}
  7. {{/* Fetch secrets from pre-migration secret */}}
  8. {{- with (lookup "v1" "Secret" .Release.Namespace "db-details") -}}
  9. {{- $dbUser = ((index .data "db-user") | b64dec) -}}
  10. {{- $dbPass = ((index .data "db-password") | b64dec) -}}
  11. {{- end -}}
  12. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-postgres-creds" $fullname)) -}}
  13. {{- $dbUser = ((index .data "POSTGRES_USER") | b64dec) -}}
  14. {{- $dbPass = ((index .data "POSTGRES_PASSWORD") | b64dec) -}}
  15. {{- end -}}
  16. {{- $redisHost := (printf "%s-redis" $fullname) -}}
  17. {{- $redisPass := randAlphaNum 32 -}}
  18. {{- with (lookup "v1" "Secret" .Release.Namespace (printf "%s-redis-creds" $fullname)) -}}
  19. {{- $redisPass = ((index .data "REDIS_PASSWORD") | b64dec) -}}
  20. {{- end -}}
  21. {{/* Temporary set dynamic db details on values,
  22. so we can print them on the notes */}}
  23. {{- $_ := set .Values "ncDbPass" $dbPass | quote -}}
  24. {{- $_ := set .Values "ncDbHost" $dbHost | quote -}}
  25. {{- $_ := set .Values "ncDbName" $dbName | quote -}}
  26. {{- $_ := set .Values "ncDbUser" $dbUser | quote -}}
  27. {{- $dbURL := (printf "postgres://%s:%s@%s:5432/%s?sslmode=disable" $dbUser $dbPass $dbHost $dbName) }}
  28. secret:
  29. postgres-creds:
  30. enabled: true
  31. data:
  32. POSTGRES_USER: {{ $dbUser }}
  33. POSTGRES_DB: {{ $dbName }}
  34. POSTGRES_PASSWORD: {{ $dbPass }}
  35. POSTGRES_HOST: {{ $dbHost }}
  36. POSTGRES_URL: {{ $dbURL }}
  37. redis-creds:
  38. enabled: true
  39. data:
  40. ALLOW_EMPTY_PASSWORD: "no"
  41. REDIS_PASSWORD: {{ $redisPass }}
  42. REDIS_HOST: {{ $redisHost }}
  43. nextcloud-creds:
  44. enabled: true
  45. data:
  46. POSTGRES_HOST: {{ $dbHost }}:5432
  47. POSTGRES_DB: {{ $dbName }}
  48. POSTGRES_USER: {{ $dbUser }}
  49. POSTGRES_PASSWORD: {{ $dbPass }}
  50. REDIS_HOST: {{ $redisHost }}
  51. REDIS_HOST_PORT: "6379"
  52. REDIS_HOST_PASSWORD: {{ $redisPass }}
  53. NEXTCLOUD_DATA_DIR: {{ .Values.ncConfig.dataDir }}
  54. PHP_UPLOAD_LIMIT: {{ printf "%vG" .Values.ncConfig.maxUploadLimit | default 3 }}
  55. PHP_MEMORY_LIMIT: {{ printf "%vM" .Values.ncConfig.phpMemoryLimit | default 512 }}
  56. {{- $host := "127.0.0.1" -}}
  57. {{- if .Values.ncConfig.host -}}
  58. {{- $host = printf "%v:%v" .Values.ncConfig.host .Values.ncNetwork.webPort -}}
  59. {{- if contains ":" $host -}} {{/* Make sure it always contains a port https://ixsystems.atlassian.net/browse/TNCHARTS-1016 */}}
  60. {{- $host = .Values.ncConfig.host -}}
  61. {{- end -}}
  62. {{- end }}
  63. NEXTCLOUD_TRUSTED_DOMAINS: {{ list $host "127.0.0.1" "localhost" (printf "%v-*" $fullname) $fullname | mustUniq | join " " | quote }}
  64. NEXTCLOUD_ADMIN_USER: {{ .Values.ncConfig.adminUser | quote }}
  65. NEXTCLOUD_ADMIN_PASSWORD: {{ .Values.ncConfig.adminPassword | quote }}
  66. {{- if .Values.ncNetwork.certificateID }}
  67. {{- $svcCidr := "" -}}
  68. {{- $clusterCidr := "" -}}
  69. {{- if .Values.global.ixChartContext -}}
  70. {{- $svcCidr = .Values.global.ixChartContext.kubernetes_config.service_cidr -}}
  71. {{- $clusterCidr = .Values.global.ixChartContext.kubernetes_config.cluster_cidr -}}
  72. {{- end }}
  73. APACHE_DISABLE_REWRITE_IP: "1"
  74. OVERWRITEPROTOCOL: "https"
  75. TRUSTED_PROXIES: {{ list $svcCidr $clusterCidr "127.0.0.1" | mustUniq | join " " | quote }}
  76. {{- if .Values.ncConfig.host }}
  77. {{- $overwritehost := printf "%v:%v" .Values.ncConfig.host .Values.ncNetwork.webPort -}}
  78. {{- if .Values.ncNetwork.nginx.useDifferentAccessPort -}}
  79. {{ $overwritehost = printf "%v:%v" .Values.ncConfig.host .Values.ncNetwork.nginx.externalAccessPort -}}
  80. {{- if contains ":" .Values.ncConfig.host -}}
  81. {{- $overwritehost = .Values.ncConfig.host -}}
  82. {{- end -}}
  83. {{- end }}
  84. OVERWRITEHOST: {{ $overwritehost }}
  85. {{- end }}
  86. {{- end }}
  87. {{- if eq (include "nextcloud.is-migration" $) "true" }}
  88. postgres-backup-creds:
  89. enabled: true
  90. annotations:
  91. helm.sh/hook: "pre-upgrade"
  92. helm.sh/hook-delete-policy: "hook-succeeded"
  93. helm.sh/hook-weight: "1"
  94. data:
  95. POSTGRES_USER: {{ $dbUser }}
  96. POSTGRES_DB: {{ $dbName }}
  97. POSTGRES_PASSWORD: {{ $dbPass }}
  98. POSTGRES_HOST: {{ $dbHost }}
  99. POSTGRES_URL: {{ printf "postgres://%s:%s@%s:5432/%s?sslmode=disable" $dbUser $dbPass $dbHost $dbName }}
  100. {{- end }}
  101. {{- end -}}