Skip to content

Commit f0abeaf

Browse files
main.libsonnet: Get grafanaDashboards mixin from all components (#2682)
Instead of hard-coding the list of components to get `mixin.grafanaDashboards` from, iterate over all components that define that mixin. Signed-off-by: Benoît Knecht <[email protected]>
2 parents d74d335 + 3404e76 commit f0abeaf

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

jsonnet/kube-prometheus/main.libsonnet

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,12 @@ local utils = import './lib/utils.libsonnet';
6969
version: $.values.common.versions.grafana,
7070
image: $.values.common.images.grafana,
7171
prometheusName: $.values.prometheus.name,
72-
// TODO(paulfantom) This should be done by iterating over all objects and looking for object.mixin.grafanaDashboards
73-
dashboards: $.nodeExporter.mixin.grafanaDashboards +
74-
$.prometheus.mixin.grafanaDashboards +
75-
$.kubernetesControlPlane.mixin.grafanaDashboards +
76-
$.alertmanager.mixin.grafanaDashboards +
77-
$.grafana.mixin.grafanaDashboards,
72+
dashboards: {
73+
[name]: $[component].mixin.grafanaDashboards[name]
74+
for component in std.objectFields($)
75+
if std.objectHasAll(std.get($[component], 'mixin', {}), 'grafanaDashboards')
76+
for name in std.objectFields($[component].mixin.grafanaDashboards)
77+
},
7878
mixin+: { ruleLabels: $.values.common.ruleLabels },
7979
},
8080
kubeStateMetrics: {

0 commit comments

Comments
 (0)