From dce6c9c63a8d120f728914afd9e0585d1f18c617 Mon Sep 17 00:00:00 2001 From: unitexe Date: Fri, 23 Jan 2026 00:28:57 -0600 Subject: Grafana quadlet with prometheus node exporter dashboard --- .../grafana-prometheus-datasource/files/datasource.yml | 8 ++++++++ .../grafana-prometheus-datasource.bb | 15 +++++++++++++++ .../packagegroups/packagegroup-grafana-dashboards.bb | 5 +++++ .../packagegroups/packagegroup-grafana-datasources.bb | 5 +++++ .../prometheus-node-exporter-dashboard_git.bb | 15 +++++++++++++++ 5 files changed, 48 insertions(+) create mode 100644 meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/files/datasource.yml create mode 100644 meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/grafana-prometheus-datasource.bb create mode 100644 meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-dashboards.bb create mode 100644 meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-datasources.bb create mode 100644 meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/prometheus-node-exporter-dashboard/prometheus-node-exporter-dashboard_git.bb (limited to 'meta-unit-core/dynamic-layers/virtualization-layer/recipes-support') diff --git a/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/files/datasource.yml b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/files/datasource.yml new file mode 100644 index 0000000..f0131f0 --- /dev/null +++ b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/files/datasource.yml @@ -0,0 +1,8 @@ +apiVersion: 1 + +datasources: + - name: Prometheus Node Exporter + type: prometheus + access: proxy + url: http://127.0.0.1:9090 + isDefault: true diff --git a/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/grafana-prometheus-datasource.bb b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/grafana-prometheus-datasource.bb new file mode 100644 index 0000000..1450fb9 --- /dev/null +++ b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/grafana-prometheus-datasource/grafana-prometheus-datasource.bb @@ -0,0 +1,15 @@ +SUMMARY = "Grafana prometheus data source drop-in" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${UNIT_CORE_LAYERDIR}/LICENSE;md5=38bf13be5d6979b28bd8adddb2f2f9b3" + +SRC_URI = "file://datasource.yml" + +ROOTLESS_USER_NAME ?= "svc" + +S = "${UNPACKDIR}" + +do_install() { + install -D -m 0644 ${S}/datasource.yml ${D}/home/${ROOTLESS_USER_NAME}/.config/containers/grafana/provisioning/datasources/prometheus.yml +} + +FILES:${PN} = "/home/${ROOTLESS_USER_NAME}/.config/containers/grafana/provisioning/datasources/prometheus.yml" diff --git a/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-dashboards.bb b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-dashboards.bb new file mode 100644 index 0000000..aca5c2a --- /dev/null +++ b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-dashboards.bb @@ -0,0 +1,5 @@ +SUMMARY = "Grafana provisionining support files" + +inherit packagegroup + +RDEPENDS:${PN}:append = " prometheus-node-exporter-dashboard" diff --git a/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-datasources.bb b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-datasources.bb new file mode 100644 index 0000000..73b4607 --- /dev/null +++ b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/packagegroups/packagegroup-grafana-datasources.bb @@ -0,0 +1,5 @@ +SUMMARY = "Grafana provisioning data sources" + +inherit packagegroup + +RDEPENDS:${PN}:append = " grafana-prometheus-datasource" diff --git a/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/prometheus-node-exporter-dashboard/prometheus-node-exporter-dashboard_git.bb b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/prometheus-node-exporter-dashboard/prometheus-node-exporter-dashboard_git.bb new file mode 100644 index 0000000..82944b6 --- /dev/null +++ b/meta-unit-core/dynamic-layers/virtualization-layer/recipes-support/prometheus-node-exporter-dashboard/prometheus-node-exporter-dashboard_git.bb @@ -0,0 +1,15 @@ +SUMMARY = "Node exporter grafana dashboard" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=dab0ea9d34dd9846f799c0fc52e5c58a" + +SRC_URI = "git://github.com/rfmoz/grafana-dashboards;branch=master;protocol=https" + +SRCREV = "0ea0f0652e41f73bd41b82769baa32912184152b" + +ROOTLESS_USER_NAME ?= "svc" + +do_install() { + install -D -m 0644 ${S}/prometheus/node-exporter-full.json ${D}/home/${ROOTLESS_USER_NAME}/.config/containers/grafana/provisioning/dashboards/prometheus-node-exporter.json +} + +FILES:${PN} = "/home/${ROOTLESS_USER_NAME}/.config/containers/grafana/provisioning/dashboards/prometheus-node-exporter.json" -- cgit v1.2.3