Chore: Move dev-dashboards jsonnet into separate directory (#58619)

This commit is contained in:
Todd Treece 2022-11-11 04:19:29 -05:00 committed by GitHub
parent 5fac98bcfd
commit c090de9ed9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 119 additions and 119 deletions

View File

@ -75,7 +75,7 @@ gen-go: $(WIRE) gen-cue
$(WIRE) gen -tags $(WIRE_TAGS) ./pkg/server ./pkg/cmd/grafana-cli/runner
gen-jsonnet:
go generate ./devenv/dev-dashboards
go generate ./devenv/jsonnet
build-go: $(MERGED_SPEC_TARGET) gen-go ## Build all Go binaries.
@echo "build go files"

View File

@ -1,12 +0,0 @@
include ../../.bingo/Variables.mk
DASHBOARDS = $(shell find ./ -type f -name '*.json')
TEMPLATES = $(shell find ./ -type f -name '*.tmpl')
vendor: jsonnetfile.json jsonnetfile.lock.json
$(JB) install
gen.libsonnet: $(DASHBOARDS) $(TEMPLATES) vendor gen.go
go generate ./
main.libsonnet: gen.libsonnet

View File

@ -2,8 +2,5 @@ package dev_dashboards
import "embed"
// generate gen.libsonnet
//go:generate go run gen.go
//go:embed *.json */*.json
var DevDashboardFS embed.FS

View File

@ -1 +0,0 @@
(import 'gen.libsonnet')

12
devenv/jsonnet/Makefile Normal file
View File

@ -0,0 +1,12 @@
include ../../.bingo/Variables.mk
DASHBOARDS = $(shell find ../dev-dashboards -type f -name '*.json')
TEMPLATES = $(shell find ./ -type f -name '*.tmpl')
vendor: jsonnetfile.json jsonnetfile.lock.json
$(JB) install
dev-dashboards.libsonnet: $(DASHBOARDS) $(TEMPLATES) vendor dev-dashboards.go
go generate ./
main.libsonnet: dev-dashboards.libsonnet

View File

@ -18,7 +18,7 @@ import (
)
var (
OUTPUT_PATH = "gen.libsonnet"
OUTPUT_PATH = "dev-dashboards.libsonnet"
EXCLUDE = map[string]struct{}{
"jsonnetfile.json": {},
"jsonnetfile.lock.json": {},

View File

@ -9,700 +9,700 @@ local dashboard = grafana.dashboard;
{
folders: [grafana.folder.new('dev-dashboards', 'dev-dashboards')],
dashboards: [
dashboard.new('Repeating-Kitchen-Sink', import 'e2e-repeats/Repeating-Kitchen-Sink.json') +
dashboard.new('Repeating-Kitchen-Sink', import '../dev-dashboards/e2e-repeats/Repeating-Kitchen-Sink.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-panel-horizontally', import 'e2e-repeats/Repeating-a-panel-horizontally.json') +
dashboard.new('Repeating-a-panel-horizontally', import '../dev-dashboards/e2e-repeats/Repeating-a-panel-horizontally.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-panel-vertically', import 'e2e-repeats/Repeating-a-panel-vertically.json') +
dashboard.new('Repeating-a-panel-vertically', import '../dev-dashboards/e2e-repeats/Repeating-a-panel-vertically.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import 'e2e-repeats/Repeating-a-row-with-a-non-repeating-panel-and-horizontal-repeating-panel.json') +
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import '../dev-dashboards/e2e-repeats/Repeating-a-row-with-a-non-repeating-panel-and-horizontal-repeating-panel.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import 'e2e-repeats/Repeating-a-row-with-a-non-repeating-panel-and-vertical-repeating-panel.json') +
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import '../dev-dashboards/e2e-repeats/Repeating-a-row-with-a-non-repeating-panel-and-vertical-repeating-panel.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import 'e2e-repeats/Repeating-a-row-with-a-non-repeating-panel.json') +
dashboard.new('Repeating-a-row-with-a-non-repeating-pan', import '../dev-dashboards/e2e-repeats/Repeating-a-row-with-a-non-repeating-panel.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-row-with-a-repeating-horizon', import 'e2e-repeats/Repeating-a-row-with-a-repeating-horizontal-panel.json') +
dashboard.new('Repeating-a-row-with-a-repeating-horizon', import '../dev-dashboards/e2e-repeats/Repeating-a-row-with-a-repeating-horizontal-panel.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-a-row-with-a-repeating-vertica', import 'e2e-repeats/Repeating-a-row-with-a-repeating-vertical-panel.json') +
dashboard.new('Repeating-a-row-with-a-repeating-vertica', import '../dev-dashboards/e2e-repeats/Repeating-a-row-with-a-repeating-vertical-panel.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('Repeating-an-empty-row', import 'e2e-repeats/Repeating-an-empty-row.json') +
dashboard.new('Repeating-an-empty-row', import '../dev-dashboards/e2e-repeats/Repeating-an-empty-row.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('all-panels', import 'all-panels.json') +
dashboard.new('all-panels', import '../dev-dashboards/all-panels.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('auto_decimals', import 'panel-common/auto_decimals.json') +
dashboard.new('auto_decimals', import '../dev-dashboards/panel-common/auto_decimals.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('bar-gauge-demo2', import 'datasource-testdata/bar-gauge-demo2.json') +
dashboard.new('bar-gauge-demo2', import '../dev-dashboards/datasource-testdata/bar-gauge-demo2.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('bar_gauge_demo', import 'panel-bargauge/bar_gauge_demo.json') +
dashboard.new('bar_gauge_demo', import '../dev-dashboards/panel-bargauge/bar_gauge_demo.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('barchart-autosizing', import 'panel-barchart/barchart-autosizing.json') +
dashboard.new('barchart-autosizing', import '../dev-dashboards/panel-barchart/barchart-autosizing.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('barchart-thresholds-mappings', import 'panel-barchart/barchart-thresholds-mappings.json') +
dashboard.new('barchart-thresholds-mappings', import '../dev-dashboards/panel-barchart/barchart-thresholds-mappings.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('candlestick', import 'panel-candlestick/candlestick.json') +
dashboard.new('candlestick', import '../dev-dashboards/panel-candlestick/candlestick.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('canvas-examples', import 'panel-canvas/canvas-examples.json') +
dashboard.new('canvas-examples', import '../dev-dashboards/panel-canvas/canvas-examples.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('color_modes', import 'panel-common/color_modes.json') +
dashboard.new('color_modes', import '../dev-dashboards/panel-common/color_modes.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('config-from-query', import 'transforms/config-from-query.json') +
dashboard.new('config-from-query', import '../dev-dashboards/transforms/config-from-query.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('demo1', import 'datasource-testdata/demo1.json') +
dashboard.new('demo1', import '../dev-dashboards/datasource-testdata/demo1.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('elasticsearch_compare', import 'datasource-elasticsearch/elasticsearch_compare.json') +
dashboard.new('elasticsearch_compare', import '../dev-dashboards/datasource-elasticsearch/elasticsearch_compare.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('elasticsearch_v7', import 'datasource-elasticsearch/elasticsearch_v7.json') +
dashboard.new('elasticsearch_v7', import '../dev-dashboards/datasource-elasticsearch/elasticsearch_v7.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('elasticsearch_v7_filebeat', import 'datasource-elasticsearch/elasticsearch_v7_filebeat.json') +
dashboard.new('elasticsearch_v7_filebeat', import '../dev-dashboards/datasource-elasticsearch/elasticsearch_v7_filebeat.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('gauge-multi-series', import 'panel-gauge/gauge-multi-series.json') +
dashboard.new('gauge-multi-series', import '../dev-dashboards/panel-gauge/gauge-multi-series.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('gauge_tests', import 'panel-gauge/gauge_tests.json') +
dashboard.new('gauge_tests', import '../dev-dashboards/panel-gauge/gauge_tests.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('geomap-color-field', import 'panel-geomap/geomap-color-field.json') +
dashboard.new('geomap-color-field', import '../dev-dashboards/panel-geomap/geomap-color-field.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('geomap-photo-layer', import 'panel-geomap/geomap-photo-layer.json') +
dashboard.new('geomap-photo-layer', import '../dev-dashboards/panel-geomap/geomap-photo-layer.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('geomap-spatial-operations-transformer', import 'panel-geomap/geomap-spatial-operations-transformer.json') +
dashboard.new('geomap-spatial-operations-transformer', import '../dev-dashboards/panel-geomap/geomap-spatial-operations-transformer.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('geomap-v91', import 'panel-geomap/geomap-v91.json') +
dashboard.new('geomap-v91', import '../dev-dashboards/panel-geomap/geomap-v91.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('geomap_multi-layers', import 'panel-geomap/geomap_multi-layers.json') +
dashboard.new('geomap_multi-layers', import '../dev-dashboards/panel-geomap/geomap_multi-layers.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('global-variables-and-interpolation', import 'feature-templating/global-variables-and-interpolation.json') +
dashboard.new('global-variables-and-interpolation', import '../dev-dashboards/feature-templating/global-variables-and-interpolation.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('graph-gradient-area-fills', import 'panel-graph/graph-gradient-area-fills.json') +
dashboard.new('graph-gradient-area-fills', import '../dev-dashboards/panel-graph/graph-gradient-area-fills.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('graph-shared-tooltips', import 'panel-graph/graph-shared-tooltips.json') +
dashboard.new('graph-shared-tooltips', import '../dev-dashboards/panel-graph/graph-shared-tooltips.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('graph-time-regions', import 'panel-graph/graph-time-regions.json') +
dashboard.new('graph-time-regions', import '../dev-dashboards/panel-graph/graph-time-regions.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('graph_tests', import 'panel-graph/graph_tests.json') +
dashboard.new('graph_tests', import '../dev-dashboards/panel-graph/graph_tests.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('graph_y_axis', import 'panel-graph/graph_y_axis.json') +
dashboard.new('graph_y_axis', import '../dev-dashboards/panel-graph/graph_y_axis.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('heatmap-calculate-log', import 'panel-heatmap/heatmap-calculate-log.json') +
dashboard.new('heatmap-calculate-log', import '../dev-dashboards/panel-heatmap/heatmap-calculate-log.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('heatmap-legacy', import 'panel-heatmap/heatmap-legacy.json') +
dashboard.new('heatmap-legacy', import '../dev-dashboards/panel-heatmap/heatmap-legacy.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('histogram_tests', import 'panel-histogram/histogram_tests.json') +
dashboard.new('histogram_tests', import '../dev-dashboards/panel-histogram/histogram_tests.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('home', import 'home.json') +
dashboard.new('home', import '../dev-dashboards/home.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('influxdb-logs', import 'datasource-influxdb/influxdb-logs.json') +
dashboard.new('influxdb-logs', import '../dev-dashboards/datasource-influxdb/influxdb-logs.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('influxdb-templated', import 'datasource-influxdb/influxdb-templated.json') +
dashboard.new('influxdb-templated', import '../dev-dashboards/datasource-influxdb/influxdb-templated.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('join-by-field', import 'transforms/join-by-field.json') +
dashboard.new('join-by-field', import '../dev-dashboards/transforms/join-by-field.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('join-by-labels', import 'transforms/join-by-labels.json') +
dashboard.new('join-by-labels', import '../dev-dashboards/transforms/join-by-labels.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('lazy_loading', import 'panel-common/lazy_loading.json') +
dashboard.new('lazy_loading', import '../dev-dashboards/panel-common/lazy_loading.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('linked-viz', import 'panel-common/linked-viz.json') +
dashboard.new('linked-viz', import '../dev-dashboards/panel-common/linked-viz.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('loki_fakedata', import 'datasource-loki/loki_fakedata.json') +
dashboard.new('loki_fakedata', import '../dev-dashboards/datasource-loki/loki_fakedata.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('mssql_fakedata', import 'datasource-mssql/mssql_fakedata.json') +
dashboard.new('mssql_fakedata', import '../dev-dashboards/datasource-mssql/mssql_fakedata.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('mssql_unittest', import 'datasource-mssql/mssql_unittest.json') +
dashboard.new('mssql_unittest', import '../dev-dashboards/datasource-mssql/mssql_unittest.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('mysql_fakedata', import 'datasource-mysql/mysql_fakedata.json') +
dashboard.new('mysql_fakedata', import '../dev-dashboards/datasource-mysql/mysql_fakedata.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('mysql_unittest', import 'datasource-mysql/mysql_unittest.json') +
dashboard.new('mysql_unittest', import '../dev-dashboards/datasource-mysql/mysql_unittest.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('new_features_in_v62', import 'datasource-testdata/new_features_in_v62.json') +
dashboard.new('new_features_in_v62', import '../dev-dashboards/datasource-testdata/new_features_in_v62.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('new_features_in_v74', import 'datasource-testdata/new_features_in_v74.json') +
dashboard.new('new_features_in_v74', import '../dev-dashboards/datasource-testdata/new_features_in_v74.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('new_features_in_v8', import 'datasource-testdata/new_features_in_v8.json') +
dashboard.new('new_features_in_v8', import '../dev-dashboards/datasource-testdata/new_features_in_v8.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('opentsdb', import 'datasource-opentsdb/opentsdb.json') +
dashboard.new('opentsdb', import '../dev-dashboards/datasource-opentsdb/opentsdb.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('opentsdb_v23', import 'datasource-opentsdb/opentsdb_v23.json') +
dashboard.new('opentsdb_v23', import '../dev-dashboards/datasource-opentsdb/opentsdb_v23.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panel-geomap', import 'panel-geomap/panel-geomap.json') +
dashboard.new('panel-geomap', import '../dev-dashboards/panel-geomap/panel-geomap.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panel-stat-tests', import 'panel-stat/panel-stat-tests.json') +
dashboard.new('panel-stat-tests', import '../dev-dashboards/panel-stat/panel-stat-tests.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panel_test_piechart', import 'panel-piechart/panel_test_piechart.json') +
dashboard.new('panel_test_piechart', import '../dev-dashboards/panel-piechart/panel_test_piechart.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panel_tests_bar_gauge', import 'panel-bargauge/panel_tests_bar_gauge.json') +
dashboard.new('panel_tests_bar_gauge', import '../dev-dashboards/panel-bargauge/panel_tests_bar_gauge.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panel_tests_bar_gauge2', import 'panel-bargauge/panel_tests_bar_gauge2.json') +
dashboard.new('panel_tests_bar_gauge2', import '../dev-dashboards/panel-bargauge/panel_tests_bar_gauge2.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('panels_without_title', import 'panel-common/panels_without_title.json') +
dashboard.new('panels_without_title', import '../dev-dashboards/panel-common/panels_without_title.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('polystat_test', import 'panel-polystat/polystat_test.json') +
dashboard.new('polystat_test', import '../dev-dashboards/panel-polystat/polystat_test.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('postgres_fakedata', import 'datasource-postgres/postgres_fakedata.json') +
dashboard.new('postgres_fakedata', import '../dev-dashboards/datasource-postgres/postgres_fakedata.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('postgres_unittest', import 'datasource-postgres/postgres_unittest.json') +
dashboard.new('postgres_unittest', import '../dev-dashboards/datasource-postgres/postgres_unittest.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('reuse', import 'transforms/reuse.json') +
dashboard.new('reuse', import '../dev-dashboards/transforms/reuse.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('rows-to-fields', import 'transforms/rows-to-fields.json') +
dashboard.new('rows-to-fields', import '../dev-dashboards/transforms/rows-to-fields.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('shared_queries', import 'panel-common/shared_queries.json') +
dashboard.new('shared_queries', import '../dev-dashboards/panel-common/shared_queries.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('slow_queries_and_annotations', import 'scenarios/slow_queries_and_annotations.json') +
dashboard.new('slow_queries_and_annotations', import '../dev-dashboards/scenarios/slow_queries_and_annotations.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('table_pagination', import 'panel-table/table_pagination.json') +
dashboard.new('table_pagination', import '../dev-dashboards/panel-table/table_pagination.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('table_tests', import 'panel-table/table_tests.json') +
dashboard.new('table_tests', import '../dev-dashboards/panel-table/table_tests.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('table_tests_new', import 'panel-table/table_tests_new.json') +
dashboard.new('table_tests_new', import '../dev-dashboards/panel-table/table_tests_new.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('templating-dashboard-links-and-variables', import 'feature-templating/templating-dashboard-links-and-variables.json') +
dashboard.new('templating-dashboard-links-and-variables', import '../dev-dashboards/feature-templating/templating-dashboard-links-and-variables.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('templating-textbox-e2e-scenarios', import 'feature-templating/templating-textbox-e2e-scenarios.json') +
dashboard.new('templating-textbox-e2e-scenarios', import '../dev-dashboards/feature-templating/templating-textbox-e2e-scenarios.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-datalinks', import 'feature-templating/testdata-datalinks.json') +
dashboard.new('testdata-datalinks', import '../dev-dashboards/feature-templating/testdata-datalinks.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-nested-variables', import 'feature-templating/testdata-nested-variables.json') +
dashboard.new('testdata-nested-variables', import '../dev-dashboards/feature-templating/testdata-nested-variables.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-nested-variables-drilldown', import 'feature-templating/testdata-nested-variables-drilldown.json') +
dashboard.new('testdata-nested-variables-drilldown', import '../dev-dashboards/feature-templating/testdata-nested-variables-drilldown.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-repeating', import 'feature-templating/testdata-repeating.json') +
dashboard.new('testdata-repeating', import '../dev-dashboards/feature-templating/testdata-repeating.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-test-variable-output', import 'feature-templating/testdata-test-variable-output.json') +
dashboard.new('testdata-test-variable-output', import '../dev-dashboards/feature-templating/testdata-test-variable-output.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-variables-textbox', import 'feature-templating/testdata-variables-textbox.json') +
dashboard.new('testdata-variables-textbox', import '../dev-dashboards/feature-templating/testdata-variables-textbox.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata-variables-that-update-on-time-c', import 'feature-templating/testdata-variables-that-update-on-time-change.json') +
dashboard.new('testdata-variables-that-update-on-time-c', import '../dev-dashboards/feature-templating/testdata-variables-that-update-on-time-change.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('testdata_alerts', import 'alerting/testdata_alerts.json') +
dashboard.new('testdata_alerts', import '../dev-dashboards/alerting/testdata_alerts.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('text-options', import 'panel-text/text-options.json') +
dashboard.new('text-options', import '../dev-dashboards/panel-text/text-options.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('time_zone_support', import 'scenarios/time_zone_support.json') +
dashboard.new('time_zone_support', import '../dev-dashboards/scenarios/time_zone_support.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeline-demo', import 'panel-timeline/timeline-demo.json') +
dashboard.new('timeline-demo', import '../dev-dashboards/panel-timeline/timeline-demo.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeline-modes', import 'panel-timeline/timeline-modes.json') +
dashboard.new('timeline-modes', import '../dev-dashboards/panel-timeline/timeline-modes.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries', import 'panel-timeseries/timeseries.json') +
dashboard.new('timeseries', import '../dev-dashboards/panel-timeseries/timeseries.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-by-value-color-schemes', import 'panel-timeseries/timeseries-by-value-color-schemes.json') +
dashboard.new('timeseries-by-value-color-schemes', import '../dev-dashboards/panel-timeseries/timeseries-by-value-color-schemes.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-gradient-area', import 'panel-timeseries/timeseries-gradient-area.json') +
dashboard.new('timeseries-gradient-area', import '../dev-dashboards/panel-timeseries/timeseries-gradient-area.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-hue-gradients', import 'panel-timeseries/timeseries-hue-gradients.json') +
dashboard.new('timeseries-hue-gradients', import '../dev-dashboards/panel-timeseries/timeseries-hue-gradients.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-nulls', import 'panel-timeseries/timeseries-nulls.json') +
dashboard.new('timeseries-nulls', import '../dev-dashboards/panel-timeseries/timeseries-nulls.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-out-of-rage', import 'panel-timeseries/timeseries-out-of-rage.json') +
dashboard.new('timeseries-out-of-rage', import '../dev-dashboards/panel-timeseries/timeseries-out-of-rage.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-shared-tooltip-cursor-positio', import 'panel-timeseries/timeseries-shared-tooltip-cursor-position.json') +
dashboard.new('timeseries-shared-tooltip-cursor-positio', import '../dev-dashboards/panel-timeseries/timeseries-shared-tooltip-cursor-position.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-soft-limits', import 'panel-timeseries/timeseries-soft-limits.json') +
dashboard.new('timeseries-soft-limits', import '../dev-dashboards/panel-timeseries/timeseries-soft-limits.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-stacking', import 'panel-timeseries/timeseries-stacking.json') +
dashboard.new('timeseries-stacking', import '../dev-dashboards/panel-timeseries/timeseries-stacking.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-stacking2', import 'panel-timeseries/timeseries-stacking2.json') +
dashboard.new('timeseries-stacking2', import '../dev-dashboards/panel-timeseries/timeseries-stacking2.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-thresholds', import 'panel-timeseries/timeseries-thresholds.json') +
dashboard.new('timeseries-thresholds', import '../dev-dashboards/panel-timeseries/timeseries-thresholds.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-time', import 'panel-timeseries/timeseries-time.json') +
dashboard.new('timeseries-time', import '../dev-dashboards/panel-timeseries/timeseries-time.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-y-ticks-zero-decimals', import 'panel-timeseries/timeseries-y-ticks-zero-decimals.json') +
dashboard.new('timeseries-y-ticks-zero-decimals', import '../dev-dashboards/panel-timeseries/timeseries-y-ticks-zero-decimals.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {
id: 0,
}
},
dashboard.new('timeseries-yaxis-ticks', import 'panel-timeseries/timeseries-yaxis-ticks.json') +
dashboard.new('timeseries-yaxis-ticks', import '../dev-dashboards/panel-timeseries/timeseries-yaxis-ticks.json') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {

3
devenv/jsonnet/gen.go Normal file
View File

@ -0,0 +1,3 @@
package jsonnet
//go:generate go run dev-dashboards.go

View File

@ -0,0 +1 @@
(import 'dev-dashboards.libsonnet')

View File

@ -9,7 +9,7 @@ local dashboard = grafana.dashboard;
{
folders: [grafana.folder.new('dev-dashboards', 'dev-dashboards')],
dashboards: [{{range .Dashboards}}
dashboard.new('{{.Name}}', import '{{.Path}}') +
dashboard.new('{{.Name}}', import '../dev-dashboards/{{.Path}}') +
resource.addMetadata('folder', 'dev-dashboards') +
{
spec+: {