{{- if and .Values.nfs .Values.nfs.enabled .Values.nfs.servers }} {{- range $k, $v := .Values.nfs.servers }} --- apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: "{{ $.Values.cluster.name }}-nfs-{{ $k }}" labels: cluster: {{ $.Values.cluster.name | quote }} app: nfs namespace: argocd annotations: {{- toYaml $.Values.notifications | nindent 4 }} spec: project: {{ $.Values.cluster.name }} destination: server: {{ $.Values.cluster.url }} namespace: "nfs-{{ $k }}" syncPolicy: {{- if $.Values.sync }} automated: prune: true selfHeal: true allowEmpty: false {{- end }} syncOptions: - CreateNamespace=true source: repoURL: https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/ chart: nfs-subdir-external-provisioner targetRevision: {{ $.Values.nfs.version | quote }} helm: version: v3 releaseName: "nfs-{{ $k }}" values: | image: repository: kooper/nfs-subdir-external-provisioner tag: v4.0.3 storageClass: name: nfs-{{ $k }} archiveOnDelete: false reclaimPolicy: Retain {{- if $v.defaultClass }} defaultClass: {{ $v.defaultClass }} {{- end }} {{- if and $v $v.pathPattern }} pathPattern: {{ $v.pathPattern | quote }} {{- else if $.Values.nfs.pathPattern }} pathPattern: {{ $.Values.nfs.pathPattern | quote }} {{- end }} nfs: {{- if eq $k "taiga" }} server: taiga-nfs.ncsa.illinois.edu path: {{ (printf "/taiga/ncsa/radiant/%s" $.Values.openstack.project) | quote }} {{- else }} server: {{ $v.server | quote }} path: {{ $v.path | quote }} {{- end }} {{- end }} {{- end }}