dashboards-json-configmap.yaml 874 B

1234567891011121314151617181920212223242526272829303132333435
  1. {{- if .Values.dashboards }}
  2. {{ $files := .Files }}
  3. {{- range $provider, $dashboards := .Values.dashboards }}
  4. apiVersion: v1
  5. kind: ConfigMap
  6. metadata:
  7. name: {{ template "grafana.fullname" $ }}-dashboards-{{ $provider }}
  8. namespace: {{ template "grafana.namespace" $ }}
  9. labels:
  10. {{- include "grafana.labels" $ | nindent 4 }}
  11. dashboard-provider: {{ $provider }}
  12. {{- if $dashboards }}
  13. data:
  14. {{- $dashboardFound := false }}
  15. {{- range $key, $value := $dashboards }}
  16. {{- if (or (hasKey $value "json") (hasKey $value "file")) }}
  17. {{- $dashboardFound = true }}
  18. {{ print $key | indent 2 }}.json:
  19. {{- if hasKey $value "json" }}
  20. |-
  21. {{ $value.json | indent 6 }}
  22. {{- end }}
  23. {{- if hasKey $value "file" }}
  24. {{ toYaml ( $files.Get $value.file ) | indent 4}}
  25. {{- end }}
  26. {{- end }}
  27. {{- end }}
  28. {{- if not $dashboardFound }}
  29. {}
  30. {{- end }}
  31. {{- end }}
  32. ---
  33. {{- end }}
  34. {{- end }}