93 lines
3.6 KiB
YAML
93 lines
3.6 KiB
YAML
|
{{- $selector := dict -}}
|
||
|
{{- range $name := (list "main" "nextcloud-cron" "preview-cron") -}}
|
||
|
{{/* creates main: {} */}}
|
||
|
{{- $_ := set $selector $name dict -}}
|
||
|
{{/* sets main: {} to main: { main: {} } */}}
|
||
|
{{- $_ := set (get $selector $name) $name dict -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{- range $item := .Values.persistenceList -}}
|
||
|
{{- $_ := set $item "targetSelector" $selector -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Make sure all variables are set properly */}}
|
||
|
{{- include "tc.v1.common.loader.init" . -}}
|
||
|
|
||
|
{{- include "nextcloud.validation" $ -}}
|
||
|
|
||
|
{{/* Render configmaps for all pods */}}
|
||
|
{{- $configmaps := include "nextcloud.configmaps" . | fromYaml -}}
|
||
|
{{- if $configmaps -}}
|
||
|
{{- $_ := mustMergeOverwrite .Values.configmap $configmaps -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Create hostAliases (resolve ingress host to Node/LB IP) */}}
|
||
|
{{- $hostAlias := (list (dict
|
||
|
"ip" .Values.nextcloud.general.accessIP
|
||
|
"hostnames" (
|
||
|
list (include "nextcloud.accesshost" $)
|
||
|
)
|
||
|
)) -}}
|
||
|
|
||
|
{{/* Add [hostAliases] to nextcloud and collabora pod */}}
|
||
|
{{- $_ := set .Values.workload.main.podSpec "hostAliases" $hostAlias -}}
|
||
|
{{- $_ := set .Values.workload.collabora.podSpec "hostAliases" $hostAlias -}}
|
||
|
|
||
|
{{/* Add [init perms] container to nextcloud */}}
|
||
|
{{- if not (get .Values.workload.main.podSpec "initContainers") -}}
|
||
|
{{- $_ := set .Values.workload.main.podSpec "initContainers" dict -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{- $initPerms := (include "nextcloud.init.perms" . | fromYaml) -}}
|
||
|
{{- $_ := set .Values.workload.main.podSpec.initContainers "init-perms" $initPerms -}}
|
||
|
|
||
|
{{/* Add [wait nextcloud] container to nginx */}}
|
||
|
{{- if not (get .Values.workload.nginx.podSpec "initContainers") -}}
|
||
|
{{- $_ := set .Values.workload.nginx.podSpec "initContainers" dict -}}
|
||
|
{{- end -}}
|
||
|
{{- $waitNextcloud := (include "nextcloud.wait.nextcloud" . | fromYaml) -}}
|
||
|
{{- $_ := set .Values.workload.nginx.podSpec.initContainers "wait-nextcloud" $waitNextcloud -}}
|
||
|
|
||
|
{{/* Disable [notify push] if requested */}}
|
||
|
{{- if not .Values.nextcloud.notify_push.enabled -}}
|
||
|
{{- $_ := set .Values.workload.notify "enabled" false -}}
|
||
|
{{- $_ := set .Values.service.notify "enabled" false -}}
|
||
|
{{- else -}}
|
||
|
{{/* Add [wait nextcloud] container to notify push */}}
|
||
|
{{- if not (get .Values.workload.notify.podSpec "initContainers") -}}
|
||
|
{{- $_ := set .Values.workload.notify.podSpec "initContainers" dict -}}
|
||
|
{{- end -}}
|
||
|
{{- $waitNextcloud := (include "nextcloud.wait.nextcloud" . | fromYaml) -}}
|
||
|
{{- $_ := set .Values.workload.notify.podSpec.initContainers "wait-nextcloud" $waitNextcloud -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Disable [clamav] if requested */}}
|
||
|
{{- if not .Values.nextcloud.clamav.enabled -}}
|
||
|
{{- $_ := set .Values.workload.clamav "enabled" false -}}
|
||
|
{{- $_ := set .Values.service.clamav "enabled" false -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Disable [previews] if requested */}}
|
||
|
{{- if or (not .Values.nextcloud.previews.imaginary) (not .Values.nextcloud.previews.enabled) -}}
|
||
|
{{- $_ := set .Values.workload.imaginary "enabled" false -}}
|
||
|
{{- $_ := set .Values.service.imaginary "enabled" false -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Disable [collabora] if requested */}}
|
||
|
{{- if not .Values.nextcloud.collabora.enabled -}}
|
||
|
{{- $_ := set .Values.workload.collabora "enabled" false -}}
|
||
|
{{- $_ := set .Values.service.collabora "enabled" false -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* Create [cronjobs] defined */}}
|
||
|
{{- $cronjobs := include "nextcloud.cronjobs" . | fromYaml -}}
|
||
|
{{- if $cronjobs -}}
|
||
|
{{- $_ := mustMergeOverwrite .Values.workload $cronjobs -}}
|
||
|
{{- end -}}
|
||
|
|
||
|
{{/* TODO: Do we have to cleanup when something (eg Collabora) is disabled? */}}
|
||
|
{{- include "nextcloud.ingressInjector" $ -}}
|
||
|
|
||
|
{{/* Render the templates */}}
|
||
|
{{- include "tc.v1.common.loader.apply" . -}}
|