From 8279616c837b41da6bc7709c7874f23d1cc3c207 Mon Sep 17 00:00:00 2001 From: itumi Date: Wed, 11 Feb 2026 09:40:26 +0200 Subject: [PATCH] feat: add declarative dashboard provisioning to grafana --- grafana.yaml | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/grafana.yaml b/grafana.yaml index 841ce41..338ca5d 100644 --- a/grafana.yaml +++ b/grafana.yaml @@ -6,7 +6,7 @@ metadata: apiVersion: v1 kind: ConfigMap metadata: - name: grafana-datasources + name: grafana-provisioning namespace: memelord-jake data: datasources.yaml: | @@ -21,6 +21,26 @@ data: type: loki access: proxy url: http://loki.monitoring.svc.cluster.local:3100 + dashboards.yaml: | + apiVersion: 1 + providers: + - name: 'Default' + orgId: 1 + folder: '' + type: file + disableDeletion: false + editable: true + options: + path: /var/lib/grafana/dashboards +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: grafana-dashboards + namespace: memelord-jake +data: + log-aggregator.json: | + # PASTE YOUR DASHBOARD JSON HERE --- apiVersion: apps/v1 kind: StatefulSet @@ -109,8 +129,16 @@ spec: volumeMounts: - name: grafana-storage mountPath: /var/lib/grafana - - name: grafana-datasources - mountPath: /etc/grafana/provisioning/datasources + - name: grafana-provisioning + mountPath: /etc/grafana/provisioning/datasources/datasources.yaml + subPath: datasources.yaml + readOnly: true + - name: grafana-provisioning + mountPath: /etc/grafana/provisioning/dashboards/dashboards.yaml + subPath: dashboards.yaml + readOnly: true + - name: grafana-dashboards + mountPath: /var/lib/grafana/dashboards readOnly: true readinessProbe: httpGet: @@ -125,9 +153,12 @@ spec: initialDelaySeconds: 30 periodSeconds: 10 volumes: - - name: grafana-datasources + - name: grafana-provisioning configMap: - name: grafana-datasources + name: grafana-provisioning + - name: grafana-dashboards + configMap: + name: grafana-dashboards volumeClaimTemplates: - metadata: name: grafana-storage