59 lines
2.1 KiB
YAML
59 lines
2.1 KiB
YAML
{{- if or (and .Values.grafana.enabled .Values.grafana.sidecar.datasources.enabled ) .Values.grafana.forceDeployDatasource }}
|
|
{{- $ctx := dict "helm" . }}
|
|
{{- $grafanaOperator := .Values.defaultDatasources.grafanaOperator }}
|
|
{{- $fullname := include "vm.fullname" $ctx }}
|
|
{{- $output := include "vm.data.sources" . | fromYaml }}
|
|
{{- if $grafanaOperator.enabled }}
|
|
{{- range $ds := $output.datasources }}
|
|
---
|
|
apiVersion: grafana.integreatly.org/v1beta1
|
|
kind: GrafanaDatasource
|
|
metadata:
|
|
namespace: {{ include "vm.namespace" $ }}
|
|
name: {{ $fullname }}-{{ regexReplaceAll "[-]+" (regexReplaceAll "[^\\w]" (lower $ds.name) "-") "-" | trimSuffix "-" }}
|
|
labels: {{ include "vm.labels" $ctx | nindent 4 }}
|
|
{{- with $grafanaOperator.annotations }}
|
|
annotations:
|
|
{{- range $key, $val := . }}
|
|
{{ $key }}: {{ $val | quote }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $spec := deepCopy $grafanaOperator.spec }}
|
|
{{- $_ := set $spec "datasource" $ds }}
|
|
{{- $_ := set $ctx "ds" $ds }}
|
|
{{- if eq (include "vm.data.source.enabled" $ctx) "false" -}}
|
|
{{- $_ := set $spec "plugins" (list (dict "name" $ds.type "version" $ds.version)) }}
|
|
{{- end }}
|
|
{{- $_ := unset $ds "version" }}
|
|
spec: {{ toYaml $spec | nindent 2 }}
|
|
{{- end }}
|
|
{{- else }}
|
|
{{- $datasources := default list }}
|
|
{{- range $ds := $output.datasources }}
|
|
{{- $_ := set $ctx "ds" $ds }}
|
|
{{- if eq (include "vm.data.source.enabled" $ctx) "true" -}}
|
|
{{- $_ := unset $ds "version" }}
|
|
{{- $datasources = append $datasources $ds }}
|
|
{{- end -}}
|
|
{{- end }}
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ $fullname }}-grafana-ds
|
|
namespace: {{ include "vm.namespace" $ }}
|
|
{{- with $.Values.grafana.sidecar.datasources.annotations }}
|
|
annotations: {{ toYaml $ | nindent 4 }}
|
|
{{- end }}
|
|
labels:
|
|
{{ $.Values.grafana.sidecar.datasources.label }}: "1"
|
|
{{- $app := ((printf "%s-grafana" (include "vm.name" $ctx)) | trunc 63 | trimSuffix "-") }}
|
|
app: {{ $app }}
|
|
{{- include "vm.labels" $ctx | nindent 4 }}
|
|
data:
|
|
datasource.yaml: |-
|
|
apiVersion: 1
|
|
datasources: {{ toYaml $datasources | nindent 6 }}
|
|
{{- end }}
|
|
{{- end }}
|