_configuration.tpl 4.6 KB

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