Add Makefile and suitable jsonnet files
This makes the mixins usable as abvertised. Signed-off-by: beorn7 <beorn@grafana.com>
This commit is contained in:
parent
e943803a3c
commit
ddfabda152
|
@ -0,0 +1,25 @@
|
||||||
|
JSONNET_FMT := jsonnet fmt -n 2 --max-blank-lines 2 --string-style s --comment-style s
|
||||||
|
|
||||||
|
all: fmt prometheus_alerts.yaml dashboards_out lint
|
||||||
|
|
||||||
|
fmt:
|
||||||
|
find . -name 'vendor' -prune -o -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
|
||||||
|
xargs -n 1 -- $(JSONNET_FMT) -i
|
||||||
|
|
||||||
|
prometheus_alerts.yaml: mixin.libsonnet config.libsonnet alerts.libsonnet
|
||||||
|
jsonnet -S alerts.jsonnet > $@
|
||||||
|
|
||||||
|
dashboards_out: mixin.libsonnet config.libsonnet dashboards.libsonnet
|
||||||
|
@mkdir -p dashboards_out
|
||||||
|
jsonnet -J vendor -m dashboards_out dashboards.jsonnet
|
||||||
|
|
||||||
|
lint: prometheus_alerts.yaml
|
||||||
|
find . -name 'vendor' -prune -o -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
|
||||||
|
while read f; do \
|
||||||
|
$(JSONNET_FMT) "$$f" | diff -u "$$f" -; \
|
||||||
|
done
|
||||||
|
|
||||||
|
promtool check rules prometheus_alerts.yaml
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf dashboards_out prometheus_alerts.yaml
|
|
@ -0,0 +1 @@
|
||||||
|
std.manifestYamlDoc((import 'mixin.libsonnet').prometheusAlerts)
|
|
@ -0,0 +1,6 @@
|
||||||
|
local dashboards = (import 'mixin.libsonnet').dashboards;
|
||||||
|
|
||||||
|
{
|
||||||
|
[name]: dashboards[name]
|
||||||
|
for name in std.objectFields(dashboards)
|
||||||
|
}
|
Loading…
Reference in New Issue