{{- if .Values.dashboards }} {{ $files := .Files }} {{- range $provider, $dashboards := .Values.dashboards }} --- apiVersion: v1 kind: ConfigMap metadata: name: {{ template "grafana.fullname" $ }}-dashboards-{{ $provider }} labels: app: {{ template "grafana.name" $ }} chart: {{ template "grafana.chart" $ }} release: {{ $.Release.Name }} heritage: {{ $.Release.Service }} dashboard-provider: {{ $provider }} data: {{- range $key, $value := $dashboards }} {{- if (or (hasKey $value "json") (hasKey $value "file")) }} {{ print $key | indent 2 }}.json: |- {{- if hasKey $value "json" }} {{ $value.json | indent 4 }} {{- end }} {{- if hasKey $value "file" }} {{ toYaml ( $files.Get $value.file ) | indent 4}} {{- end }} {{- end }} {{- end }} {{- end }} {{- end }}