@intentius/chant-lexicon-grafana 0.98.0 → 0.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -8
- package/dist/actions/grafana.d.ts +24 -0
- package/dist/actions/grafana.d.ts.map +1 -0
- package/dist/actions/index.d.ts +2 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/alerting-build.d.ts +128 -0
- package/dist/alerting-build.d.ts.map +1 -0
- package/dist/alerting.d.ts +273 -0
- package/dist/alerting.d.ts.map +1 -0
- package/dist/annotations.d.ts +61 -0
- package/dist/annotations.d.ts.map +1 -0
- package/dist/api/apply.d.ts +160 -0
- package/dist/api/apply.d.ts.map +1 -0
- package/dist/api/bind.d.ts +32 -0
- package/dist/api/bind.d.ts.map +1 -0
- package/dist/api/client.d.ts +76 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/converge.d.ts +33 -0
- package/dist/api/converge.d.ts.map +1 -0
- package/dist/api/dashboards.d.ts +102 -0
- package/dist/api/dashboards.d.ts.map +1 -0
- package/dist/api/datasources.d.ts +26 -0
- package/dist/api/datasources.d.ts.map +1 -0
- package/dist/api/fake-grafana-writes.d.ts +41 -0
- package/dist/api/fake-grafana-writes.d.ts.map +1 -0
- package/dist/api/fake-grafana.d.ts +63 -0
- package/dist/api/fake-grafana.d.ts.map +1 -0
- package/dist/api/folders.d.ts +146 -0
- package/dist/api/folders.d.ts.map +1 -0
- package/dist/api/library-panels.d.ts +52 -0
- package/dist/api/library-panels.d.ts.map +1 -0
- package/dist/build.d.ts +55 -6
- package/dist/build.d.ts.map +1 -1
- package/dist/catalog.d.ts +1 -1
- package/dist/catalog.d.ts.map +1 -1
- package/dist/codegen/docs.d.ts.map +1 -1
- package/dist/codegen/generate.d.ts +7 -1
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/schema-types.d.ts +3 -3
- package/dist/codegen/schema-types.d.ts.map +1 -1
- package/dist/composites/agent-dashboard.d.ts.map +1 -1
- package/dist/composites/catalog.d.ts.map +1 -1
- package/dist/composites/index.d.ts +4 -2
- package/dist/composites/index.d.ts.map +1 -1
- package/dist/composites/red-dashboard.d.ts +21 -2
- package/dist/composites/red-dashboard.d.ts.map +1 -1
- package/dist/composites/shared.d.ts +11 -3
- package/dist/composites/shared.d.ts.map +1 -1
- package/dist/composites/slo-alert-rules.d.ts +92 -0
- package/dist/composites/slo-alert-rules.d.ts.map +1 -0
- package/dist/config.d.ts +111 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/contact-point-secrets.d.ts +17 -0
- package/dist/contact-point-secrets.d.ts.map +1 -0
- package/dist/dashboard.d.ts +51 -9
- package/dist/dashboard.d.ts.map +1 -1
- package/dist/datasource-refs.d.ts +99 -0
- package/dist/datasource-refs.d.ts.map +1 -0
- package/dist/datasource-settings.d.ts +834 -0
- package/dist/datasource-settings.d.ts.map +1 -0
- package/dist/datasource.d.ts +82 -11
- package/dist/datasource.d.ts.map +1 -1
- package/dist/deep-observe-hooks.d.ts +64 -0
- package/dist/deep-observe-hooks.d.ts.map +1 -0
- package/dist/deep-observe.d.ts +47 -0
- package/dist/deep-observe.d.ts.map +1 -0
- package/dist/describe-resources.d.ts +50 -0
- package/dist/describe-resources.d.ts.map +1 -0
- package/dist/detect.d.ts +32 -3
- package/dist/detect.d.ts.map +1 -1
- package/dist/export-resources.d.ts +38 -0
- package/dist/export-resources.d.ts.map +1 -0
- package/dist/folder.d.ts +68 -0
- package/dist/folder.d.ts.map +1 -0
- package/dist/import/alerting.d.ts +40 -0
- package/dist/import/alerting.d.ts.map +1 -0
- package/dist/import/edits.d.ts +47 -0
- package/dist/import/edits.d.ts.map +1 -0
- package/dist/import/embedded.d.ts +14 -0
- package/dist/import/embedded.d.ts.map +1 -0
- package/dist/import/generator.d.ts +60 -0
- package/dist/import/generator.d.ts.map +1 -0
- package/dist/import/live-export.d.ts +108 -0
- package/dist/import/live-export.d.ts.map +1 -0
- package/dist/import/mappings.d.ts +89 -0
- package/dist/import/mappings.d.ts.map +1 -0
- package/dist/import/model.d.ts +105 -0
- package/dist/import/model.d.ts.map +1 -0
- package/dist/import/normalize-alerting.d.ts +26 -0
- package/dist/import/normalize-alerting.d.ts.map +1 -0
- package/dist/import/normalize.d.ts +74 -0
- package/dist/import/normalize.d.ts.map +1 -0
- package/dist/import/parser.d.ts +125 -0
- package/dist/import/parser.d.ts.map +1 -0
- package/dist/import/report.d.ts +26 -0
- package/dist/import/report.d.ts.map +1 -0
- package/dist/import/testdata/fixtures.d.ts +41 -0
- package/dist/import/testdata/fixtures.d.ts.map +1 -0
- package/dist/import/v2.d.ts +73 -0
- package/dist/import/v2.d.ts.map +1 -0
- package/dist/index.d.ts +31 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/init-templates.d.ts +27 -0
- package/dist/init-templates.d.ts.map +1 -0
- package/dist/integrity.json +22 -12
- package/dist/k8s.d.ts +107 -0
- package/dist/k8s.d.ts.map +1 -0
- package/dist/lint/audit-catalog.d.ts +2 -1
- package/dist/lint/audit-catalog.d.ts.map +1 -1
- package/dist/lint/post-synth/graf101.d.ts +2 -2
- package/dist/lint/post-synth/graf102.d.ts +1 -1
- package/dist/lint/post-synth/graf104.d.ts +2 -2
- package/dist/lint/post-synth/graf106.d.ts +2 -2
- package/dist/lint/post-synth/graf107.d.ts +1 -1
- package/dist/lint/post-synth/graf108.d.ts +8 -0
- package/dist/lint/post-synth/graf108.d.ts.map +1 -0
- package/dist/lint/post-synth/graf109.d.ts +8 -0
- package/dist/lint/post-synth/graf109.d.ts.map +1 -0
- package/dist/lint/post-synth/graf110.d.ts +8 -0
- package/dist/lint/post-synth/graf110.d.ts.map +1 -0
- package/dist/lint/post-synth/graf111.d.ts +8 -0
- package/dist/lint/post-synth/graf111.d.ts.map +1 -0
- package/dist/lint/post-synth/graf112.d.ts +8 -0
- package/dist/lint/post-synth/graf112.d.ts.map +1 -0
- package/dist/lint/post-synth/graf113.d.ts +8 -0
- package/dist/lint/post-synth/graf113.d.ts.map +1 -0
- package/dist/lint/post-synth/graf114.d.ts +8 -0
- package/dist/lint/post-synth/graf114.d.ts.map +1 -0
- package/dist/lint/post-synth/graf115.d.ts +8 -0
- package/dist/lint/post-synth/graf115.d.ts.map +1 -0
- package/dist/lint/post-synth/grafana-helpers.d.ts +7 -5
- package/dist/lint/post-synth/grafana-helpers.d.ts.map +1 -1
- package/dist/lint/post-synth/index.d.ts.map +1 -1
- package/dist/lint/rules/literal-secret.d.ts +7 -3
- package/dist/lint/rules/literal-secret.d.ts.map +1 -1
- package/dist/lsp/hover.d.ts.map +1 -1
- package/dist/manifest.json +1 -1
- package/dist/members.d.ts +27 -0
- package/dist/members.d.ts.map +1 -0
- package/dist/meta.json +205 -0
- package/dist/okf/index.md +53 -4
- package/dist/okf/rules/GRAF002.md +3 -2
- package/dist/okf/rules/GRAF101.md +3 -2
- package/dist/okf/rules/GRAF102.md +1 -0
- package/dist/okf/rules/GRAF104.md +2 -2
- package/dist/okf/rules/GRAF106.md +2 -2
- package/dist/okf/rules/GRAF108.md +11 -0
- package/dist/okf/rules/GRAF109.md +15 -0
- package/dist/okf/rules/GRAF110.md +11 -0
- package/dist/okf/rules/GRAF111.md +11 -0
- package/dist/okf/rules/GRAF112.md +16 -0
- package/dist/okf/rules/GRAF113.md +16 -0
- package/dist/okf/rules/GRAF114.md +11 -0
- package/dist/okf/rules/GRAF115.md +11 -0
- package/dist/okf/types/AdhocVariable.md +9 -0
- package/dist/okf/types/AlertListPanel.md +9 -0
- package/dist/okf/types/AlertQuery.md +9 -0
- package/dist/okf/types/AlertRule.md +9 -0
- package/dist/okf/types/AlertRuleGroup.md +9 -0
- package/dist/okf/types/AzureMonitorQuery.md +9 -0
- package/dist/okf/types/BarChartPanel.md +9 -0
- package/dist/okf/types/BarGaugePanel.md +9 -0
- package/dist/okf/types/BigQueryQuery.md +9 -0
- package/dist/okf/types/CanvasPanel.md +9 -0
- package/dist/okf/types/ClassicConditionsExpression.md +9 -0
- package/dist/okf/types/CloudMonitoringQuery.md +9 -0
- package/dist/okf/types/CloudWatchQuery.md +9 -0
- package/dist/okf/types/ContactPoint.md +14 -0
- package/dist/okf/types/Dashboard.md +2 -1
- package/dist/okf/types/Datasource.md +3 -2
- package/dist/okf/types/DatasourceProvisioning.md +9 -0
- package/dist/okf/types/ElasticsearchQuery.md +9 -0
- package/dist/okf/types/ExternalDatasource.md +15 -0
- package/dist/okf/types/FlameGraphPanel.md +9 -0
- package/dist/okf/types/Folder.md +9 -0
- package/dist/okf/types/GeomapPanel.md +9 -0
- package/dist/okf/types/GroupByVariable.md +9 -0
- package/dist/okf/types/HistogramPanel.md +9 -0
- package/dist/okf/types/MSSQLQuery.md +9 -0
- package/dist/okf/types/MathExpression.md +9 -0
- package/dist/okf/types/MuteTiming.md +13 -0
- package/dist/okf/types/MySQLQuery.md +9 -0
- package/dist/okf/types/NodeGraphPanel.md +9 -0
- package/dist/okf/types/NotificationPolicy.md +9 -0
- package/dist/okf/types/NotificationTemplate.md +9 -0
- package/dist/okf/types/PieChartPanel.md +9 -0
- package/dist/okf/types/PostgresQuery.md +9 -0
- package/dist/okf/types/PyroscopeQuery.md +9 -0
- package/dist/okf/types/ReduceExpression.md +9 -0
- package/dist/okf/types/ResampleExpression.md +9 -0
- package/dist/okf/types/SqlExpression.md +9 -0
- package/dist/okf/types/StateTimelinePanel.md +9 -0
- package/dist/okf/types/StatusHistoryPanel.md +9 -0
- package/dist/okf/types/SwitchVariable.md +9 -0
- package/dist/okf/types/ThresholdExpression.md +9 -0
- package/dist/okf/types/TrendPanel.md +9 -0
- package/dist/okf/types/XYChartPanel.md +9 -0
- package/dist/op/activities/grafana-apply.d.ts +86 -0
- package/dist/op/activities/grafana-apply.d.ts.map +1 -0
- package/dist/op/activities/index.d.ts +9 -0
- package/dist/op/activities/index.d.ts.map +1 -0
- package/dist/op/builders.d.ts +24 -0
- package/dist/op/builders.d.ts.map +1 -0
- package/dist/ownership.d.ts +78 -0
- package/dist/ownership.d.ts.map +1 -0
- package/dist/panel-options.d.ts +65 -0
- package/dist/panel-options.d.ts.map +1 -0
- package/dist/panels.d.ts +46 -9
- package/dist/panels.d.ts.map +1 -1
- package/dist/pin.d.ts +29 -7
- package/dist/pin.d.ts.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/promql-check.d.ts +51 -0
- package/dist/promql-check.d.ts.map +1 -0
- package/dist/query-models.d.ts +95 -0
- package/dist/query-models.d.ts.map +1 -0
- package/dist/query.d.ts +116 -18
- package/dist/query.d.ts.map +1 -1
- package/dist/rules/graf101.ts +3 -3
- package/dist/rules/graf102.ts +1 -1
- package/dist/rules/graf104.ts +3 -3
- package/dist/rules/graf106.ts +3 -3
- package/dist/rules/graf107.ts +1 -1
- package/dist/rules/graf108.ts +17 -0
- package/dist/rules/graf109.ts +17 -0
- package/dist/rules/graf110.ts +17 -0
- package/dist/rules/graf111.ts +17 -0
- package/dist/rules/graf112.ts +17 -0
- package/dist/rules/graf113.ts +17 -0
- package/dist/rules/graf114.ts +17 -0
- package/dist/rules/graf115.ts +17 -0
- package/dist/rules/grafana-helpers.ts +27 -10
- package/dist/rules/literal-secret.ts +60 -6
- package/dist/schema/azuremonitor.gen.d.ts +354 -0
- package/dist/schema/azuremonitor.gen.d.ts.map +1 -0
- package/dist/schema/barchart.gen.d.ts +198 -0
- package/dist/schema/barchart.gen.d.ts.map +1 -0
- package/dist/schema/bargauge.gen.d.ts +97 -0
- package/dist/schema/bargauge.gen.d.ts.map +1 -0
- package/dist/schema/bigquery.gen.d.ts +93 -0
- package/dist/schema/bigquery.gen.d.ts.map +1 -0
- package/dist/schema/canvas.gen.d.ts +152 -0
- package/dist/schema/canvas.gen.d.ts.map +1 -0
- package/dist/schema/cloudwatch.gen.d.ts +394 -0
- package/dist/schema/cloudwatch.gen.d.ts.map +1 -0
- package/dist/schema/dashboard.gen.d.ts +196 -21
- package/dist/schema/dashboard.gen.d.ts.map +1 -1
- package/dist/schema/elasticsearch.gen.d.ts +444 -0
- package/dist/schema/elasticsearch.gen.d.ts.map +1 -0
- package/dist/schema/expr.gen.d.ts +606 -0
- package/dist/schema/expr.gen.d.ts.map +1 -0
- package/dist/schema/gauge.gen.d.ts.map +1 -1
- package/dist/schema/geomap.gen.d.ts +100 -0
- package/dist/schema/geomap.gen.d.ts.map +1 -0
- package/dist/schema/googlecloudmonitoring.gen.d.ts +312 -0
- package/dist/schema/googlecloudmonitoring.gen.d.ts.map +1 -0
- package/dist/schema/grafanapyroscope.gen.d.ts +60 -0
- package/dist/schema/grafanapyroscope.gen.d.ts.map +1 -0
- package/dist/schema/heatmap.gen.d.ts.map +1 -1
- package/dist/schema/histogram.gen.d.ts +132 -0
- package/dist/schema/histogram.gen.d.ts.map +1 -0
- package/dist/schema/index.d.ts +18 -0
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/logs.gen.d.ts +1 -0
- package/dist/schema/logs.gen.d.ts.map +1 -1
- package/dist/schema/loki.gen.d.ts.map +1 -1
- package/dist/schema/nodegraph.gen.d.ts +49 -0
- package/dist/schema/nodegraph.gen.d.ts.map +1 -0
- package/dist/schema/piechart.gen.d.ts +127 -0
- package/dist/schema/piechart.gen.d.ts.map +1 -0
- package/dist/schema/prometheus.gen.d.ts.map +1 -1
- package/dist/schema/stat.gen.d.ts.map +1 -1
- package/dist/schema/statetimeline.gen.d.ts +124 -0
- package/dist/schema/statetimeline.gen.d.ts.map +1 -0
- package/dist/schema/statushistory.gen.d.ts +114 -0
- package/dist/schema/statushistory.gen.d.ts.map +1 -0
- package/dist/schema/table.gen.d.ts +35 -3
- package/dist/schema/table.gen.d.ts.map +1 -1
- package/dist/schema/tempo.gen.d.ts.map +1 -1
- package/dist/schema/text.gen.d.ts.map +1 -1
- package/dist/schema/timeseries.gen.d.ts +5 -1
- package/dist/schema/timeseries.gen.d.ts.map +1 -1
- package/dist/schema/trend.gen.d.ts +180 -0
- package/dist/schema/trend.gen.d.ts.map +1 -0
- package/dist/schema/xychart.gen.d.ts +145 -0
- package/dist/schema/xychart.gen.d.ts.map +1 -0
- package/dist/schema-validate.d.ts +39 -4
- package/dist/schema-validate.d.ts.map +1 -1
- package/dist/serializer.d.ts +11 -3
- package/dist/serializer.d.ts.map +1 -1
- package/dist/skill-defs.d.ts.map +1 -1
- package/dist/skills/chant-grafana-alerting.md +49 -0
- package/dist/skills/chant-grafana-operations.md +108 -0
- package/dist/skills/chant-grafana-provisioning.md +3 -3
- package/dist/skills/chant-grafana.md +15 -8
- package/dist/spec/fetch-units-cli.d.ts +3 -0
- package/dist/spec/fetch-units-cli.d.ts.map +1 -0
- package/dist/spec/overlay.d.ts +43 -0
- package/dist/spec/overlay.d.ts.map +1 -0
- package/dist/spec/schemas.d.ts +21 -13
- package/dist/spec/schemas.d.ts.map +1 -1
- package/dist/spec/schemas.gen.d.ts +3 -0
- package/dist/spec/schemas.gen.d.ts.map +1 -0
- package/dist/spec/units.d.ts +35 -0
- package/dist/spec/units.d.ts.map +1 -0
- package/dist/spec/units.gen.d.ts +2 -0
- package/dist/spec/units.gen.d.ts.map +1 -0
- package/dist/transformations.d.ts +459 -0
- package/dist/transformations.d.ts.map +1 -0
- package/dist/util.d.ts +6 -0
- package/dist/util.d.ts.map +1 -1
- package/dist/validate-alerting.d.ts +65 -0
- package/dist/validate-alerting.d.ts.map +1 -0
- package/dist/validate-output.d.ts +62 -9
- package/dist/validate-output.d.ts.map +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validation.d.ts +14 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/variables.d.ts +109 -7
- package/dist/variables.d.ts.map +1 -1
- package/package.json +12 -4
- package/src/actions/actions.test.ts +24 -0
- package/src/actions/grafana.ts +40 -0
- package/src/actions/index.ts +1 -0
- package/src/alerting-build.ts +376 -0
- package/src/alerting.e2e.test.ts +212 -0
- package/src/alerting.test.ts +272 -0
- package/src/alerting.ts +435 -0
- package/src/annotations.ts +84 -0
- package/src/api/apply.test.ts +256 -0
- package/src/api/apply.ts +394 -0
- package/src/api/bind.ts +58 -0
- package/src/api/client.ts +148 -0
- package/src/api/converge.ts +63 -0
- package/src/api/dashboards.ts +247 -0
- package/src/api/datasources.ts +33 -0
- package/src/api/fake-grafana-writes.ts +201 -0
- package/src/api/fake-grafana.ts +190 -0
- package/src/api/folders.ts +339 -0
- package/src/api/library-panels.ts +101 -0
- package/src/build.test.ts +351 -10
- package/src/build.ts +294 -55
- package/src/catalog.ts +104 -2
- package/src/codegen/docs.ts +50 -10
- package/src/codegen/generate.ts +27 -1
- package/src/codegen/schema-types.ts +16 -6
- package/src/composites/agent-dashboard.ts +6 -3
- package/src/composites/catalog.test.ts +2 -2
- package/src/composites/catalog.ts +82 -0
- package/src/composites/composites.test.ts +73 -9
- package/src/composites/index.ts +4 -2
- package/src/composites/queries.e2e.test.ts +374 -0
- package/src/composites/red-dashboard.ts +83 -12
- package/src/composites/shared.ts +14 -2
- package/src/composites/slo-alert-rules.ts +149 -0
- package/src/config.test.ts +61 -0
- package/src/config.ts +138 -0
- package/src/contact-point-secrets.ts +63 -0
- package/src/dashboard.ts +68 -9
- package/src/datasource-refs.test.ts +56 -0
- package/src/datasource-refs.ts +213 -0
- package/src/datasource-settings.test.ts +106 -0
- package/src/datasource-settings.ts +941 -0
- package/src/datasource.ts +123 -11
- package/src/deep-observe-hooks.ts +267 -0
- package/src/deep-observe.test.ts +311 -0
- package/src/deep-observe.ts +187 -0
- package/src/describe-resources.test.ts +271 -0
- package/src/describe-resources.ts +244 -0
- package/src/detect.ts +82 -5
- package/src/export-resources.test.ts +129 -0
- package/src/export-resources.ts +84 -0
- package/src/folder.ts +118 -0
- package/src/generated/lexicon-grafana.json +205 -0
- package/src/import/alerting-roundtrip.test.ts +161 -0
- package/src/import/alerting.ts +500 -0
- package/src/import/edits.ts +95 -0
- package/src/import/embedded.test.ts +45 -0
- package/src/import/embedded.ts +47 -0
- package/src/import/generated-types.e2e.test.ts +130 -0
- package/src/import/generator.test.ts +210 -0
- package/src/import/generator.ts +463 -0
- package/src/import/live-export.ts +264 -0
- package/src/import/mappings.ts +336 -0
- package/src/import/model.ts +117 -0
- package/src/import/normalize-alerting.ts +101 -0
- package/src/import/normalize.test.ts +117 -0
- package/src/import/normalize.ts +393 -0
- package/src/import/parser.test.ts +516 -0
- package/src/import/parser.ts +1387 -0
- package/src/import/report.ts +62 -0
- package/src/import/roundtrip.test.ts +563 -0
- package/src/import/testdata/fixtures.ts +137 -0
- package/src/import/v2.test.ts +292 -0
- package/src/import/v2.ts +804 -0
- package/src/import.e2e.test.ts +31 -84
- package/src/import.test.ts +9 -3
- package/src/index.ts +308 -14
- package/src/init-templates.test.ts +74 -0
- package/src/init-templates.ts +349 -0
- package/src/k8s.test.ts +98 -0
- package/src/k8s.ts +197 -0
- package/src/lint/audit-catalog.ts +68 -3
- package/src/lint/core-lint.test.ts +43 -0
- package/src/lint/post-synth/graf101.ts +3 -3
- package/src/lint/post-synth/graf102.ts +1 -1
- package/src/lint/post-synth/graf104.ts +3 -3
- package/src/lint/post-synth/graf106.ts +3 -3
- package/src/lint/post-synth/graf107.ts +1 -1
- package/src/lint/post-synth/graf108.ts +17 -0
- package/src/lint/post-synth/graf109.ts +17 -0
- package/src/lint/post-synth/graf110.ts +17 -0
- package/src/lint/post-synth/graf111.ts +17 -0
- package/src/lint/post-synth/graf112.ts +17 -0
- package/src/lint/post-synth/graf113.ts +17 -0
- package/src/lint/post-synth/graf114.ts +17 -0
- package/src/lint/post-synth/graf115.ts +17 -0
- package/src/lint/post-synth/grafana-helpers.ts +27 -10
- package/src/lint/post-synth/index.ts +16 -0
- package/src/lint/post-synth/post-synth.test.ts +333 -12
- package/src/lint/rules/literal-secret.ts +60 -6
- package/src/lint/rules/rules.test.ts +27 -0
- package/src/load-cost.test.ts +35 -0
- package/src/lsp/completions.test.ts +5 -0
- package/src/lsp/hover.test.ts +7 -0
- package/src/lsp/hover.ts +8 -1
- package/src/members.ts +68 -0
- package/src/observe.e2e.test.ts +255 -0
- package/src/op/activities/grafana-apply.e2e.test.ts +184 -0
- package/src/op/activities/grafana-apply.test.ts +243 -0
- package/src/op/activities/grafana-apply.ts +197 -0
- package/src/op/activities/index.ts +8 -0
- package/src/op/builders.test.ts +40 -0
- package/src/op/builders.ts +34 -0
- package/src/ownership.ts +122 -0
- package/src/panel-options.ts +66 -0
- package/src/panels.test.ts +53 -0
- package/src/panels.ts +148 -10
- package/src/pin.ts +69 -6
- package/src/plugin.test.ts +12 -2
- package/src/plugin.ts +75 -0
- package/src/promql-check.test.ts +108 -0
- package/src/promql-check.ts +193 -0
- package/src/query-models.ts +94 -0
- package/src/query.test.ts +166 -0
- package/src/query.ts +190 -20
- package/src/schema/azuremonitor.gen.ts +381 -0
- package/src/schema/barchart.gen.ts +221 -0
- package/src/schema/bargauge.gen.ts +111 -0
- package/src/schema/bigquery.gen.ts +110 -0
- package/src/schema/canvas.gen.ts +176 -0
- package/src/schema/cloudwatch.gen.ts +423 -0
- package/src/schema/dashboard.gen.ts +206 -22
- package/src/schema/elasticsearch.gen.ts +508 -0
- package/src/schema/expr.gen.ts +618 -0
- package/src/schema/gauge.gen.ts +2 -1
- package/src/schema/geomap.gen.ts +112 -0
- package/src/schema/googlecloudmonitoring.gen.ts +330 -0
- package/src/schema/grafanapyroscope.gen.ts +66 -0
- package/src/schema/heatmap.gen.ts +2 -1
- package/src/schema/histogram.gen.ts +151 -0
- package/src/schema/index.ts +18 -0
- package/src/schema/logs.gen.ts +3 -1
- package/src/schema/loki.gen.ts +2 -1
- package/src/schema/nodegraph.gen.ts +58 -0
- package/src/schema/piechart.gen.ts +146 -0
- package/src/schema/prometheus.gen.ts +2 -1
- package/src/schema/stat.gen.ts +2 -1
- package/src/schema/statetimeline.gen.ts +143 -0
- package/src/schema/statushistory.gen.ts +132 -0
- package/src/schema/table.gen.ts +41 -4
- package/src/schema/tempo.gen.ts +2 -1
- package/src/schema/text.gen.ts +2 -1
- package/src/schema/timeseries.gen.ts +7 -2
- package/src/schema/trend.gen.ts +208 -0
- package/src/schema/xychart.gen.ts +167 -0
- package/src/schema-overlay.test.ts +282 -0
- package/src/schema-validate.ts +199 -57
- package/src/schema.test.ts +4 -2
- package/src/serializer.test.ts +13 -1
- package/src/serializer.ts +11 -3
- package/src/skill-defs.ts +34 -0
- package/src/skills/chant-grafana-alerting.md +49 -0
- package/src/skills/chant-grafana-operations.md +108 -0
- package/src/skills/chant-grafana-provisioning.md +3 -3
- package/src/skills/chant-grafana.md +15 -8
- package/src/spec/fetch-cli.ts +3 -3
- package/src/spec/fetch-units-cli.ts +37 -0
- package/src/spec/overlay/canvas.overlay.json +142 -0
- package/src/spec/overlay/dashboard.overlay.json +378 -0
- package/src/spec/overlay/expr.overlay.json +14 -0
- package/src/spec/overlay/geomap.overlay.json +35 -0
- package/src/spec/overlay/logs.overlay.json +14 -0
- package/src/spec/overlay/nodegraph.overlay.json +31 -0
- package/src/spec/overlay/piechart.overlay.json +17 -0
- package/src/spec/overlay/table.overlay.json +103 -0
- package/src/spec/overlay/timeseries.overlay.json +21 -0
- package/src/spec/overlay/trend.overlay.json +17 -0
- package/src/spec/overlay/xychart.overlay.json +16 -0
- package/src/spec/overlay.ts +105 -0
- package/src/spec/schemas/azuremonitor.jsonschema.json +679 -0
- package/src/spec/schemas/barchart.jsonschema.json +419 -0
- package/src/spec/schemas/bargauge.jsonschema.json +224 -0
- package/src/spec/schemas/bigquery.jsonschema.json +290 -0
- package/src/spec/schemas/canvas.jsonschema.json +356 -0
- package/src/spec/schemas/cloudwatch.jsonschema.json +721 -0
- package/src/spec/schemas/dashboardv2.jsonschema.json +3387 -0
- package/src/spec/schemas/elasticsearch.jsonschema.json +1695 -0
- package/src/spec/schemas/expr.jsonschema.json +987 -0
- package/src/spec/schemas/geomap.jsonschema.json +220 -0
- package/src/spec/schemas/googlecloudmonitoring.jsonschema.json +488 -0
- package/src/spec/schemas/grafanapyroscope.jsonschema.json +93 -0
- package/src/spec/schemas/histogram.jsonschema.json +308 -0
- package/src/spec/schemas/nodegraph.jsonschema.json +77 -0
- package/src/spec/schemas/piechart.jsonschema.json +275 -0
- package/src/spec/schemas/statetimeline.jsonschema.json +324 -0
- package/src/spec/schemas/statushistory.jsonschema.json +292 -0
- package/src/spec/schemas/trend.jsonschema.json +449 -0
- package/src/spec/schemas/xychart.jsonschema.json +428 -0
- package/src/spec/schemas.gen.ts +40 -0
- package/src/spec/schemas.ts +30 -16
- package/src/spec/units.gen.ts +281 -0
- package/src/spec/units.ts +77 -0
- package/src/transformations.test.ts +65 -0
- package/src/transformations.ts +574 -0
- package/src/util.ts +8 -0
- package/src/validate-alerting.test.ts +255 -0
- package/src/validate-alerting.ts +430 -0
- package/src/validate-output.ts +427 -104
- package/src/validate.ts +28 -0
- package/src/validation.ts +27 -0
- package/src/variables.ts +120 -8
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: GRAF112
|
|
4
|
+
description: An alert rule queries a datasource the build does not declare, or of another type
|
|
5
|
+
id: GRAF112
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: grafana
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/grafana/rules/
|
|
10
|
+
---
|
|
11
|
+
An alert rule queries a datasource the build does not declare, or of another type
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [Datasource](/types/Datasource.md)
|
|
16
|
+
- [ExternalDatasource](/types/ExternalDatasource.md)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: GRAF113
|
|
4
|
+
description: Alerting routes to a contact point or mute timing the build does not declare, or a policy matcher does not parse
|
|
5
|
+
id: GRAF113
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: grafana
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/grafana/rules/
|
|
10
|
+
---
|
|
11
|
+
Alerting routes to a contact point or mute timing the build does not declare, or a policy matcher does not parse
|
|
12
|
+
|
|
13
|
+
## Applies to
|
|
14
|
+
|
|
15
|
+
- [ContactPoint](/types/ContactPoint.md)
|
|
16
|
+
- [MuteTiming](/types/MuteTiming.md)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: GRAF114
|
|
4
|
+
description: An alerting uid, name, title or interval Grafana rejects, or one declared twice
|
|
5
|
+
id: GRAF114
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: grafana
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/grafana/rules/
|
|
10
|
+
---
|
|
11
|
+
An alerting uid, name, title or interval Grafana rejects, or one declared twice
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: post-synth-check
|
|
3
|
+
title: GRAF115
|
|
4
|
+
description: A panel unit Grafana doesn't know, which it shows as a literal suffix
|
|
5
|
+
id: GRAF115
|
|
6
|
+
severity: error
|
|
7
|
+
category: post-synth
|
|
8
|
+
lexicon: grafana
|
|
9
|
+
docs: https://intentius.io/chant/lexicons/grafana/rules/
|
|
10
|
+
---
|
|
11
|
+
A panel unit Grafana doesn't know, which it shows as a literal suffix
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: AdhocVariable
|
|
4
|
+
description: grafana resource type Grafana::Variable::adhoc
|
|
5
|
+
name: AdhocVariable
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Variable::adhoc
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Variable::adhoc`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: AlertListPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::alertlist
|
|
5
|
+
name: AlertListPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::alertlist
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::alertlist`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: AlertRuleGroup
|
|
4
|
+
description: grafana resource type Grafana::AlertRuleGroup
|
|
5
|
+
name: AlertRuleGroup
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::AlertRuleGroup
|
|
8
|
+
---
|
|
9
|
+
`Grafana::AlertRuleGroup`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: AzureMonitorQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::grafana-azure-monitor-datasource
|
|
5
|
+
name: AzureMonitorQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::grafana-azure-monitor-datasource
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::grafana-azure-monitor-datasource`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: BarChartPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::barchart
|
|
5
|
+
name: BarChartPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::barchart
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::barchart`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: BarGaugePanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::bargauge
|
|
5
|
+
name: BarGaugePanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::bargauge
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::bargauge`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: BigQueryQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::grafana-bigquery-datasource
|
|
5
|
+
name: BigQueryQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::grafana-bigquery-datasource
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::grafana-bigquery-datasource`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ClassicConditionsExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::classic_conditions
|
|
5
|
+
name: ClassicConditionsExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::classic_conditions
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::classic_conditions`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: CloudMonitoringQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::stackdriver
|
|
5
|
+
name: CloudMonitoringQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::stackdriver
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::stackdriver`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: CloudWatchQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::cloudwatch
|
|
5
|
+
name: CloudWatchQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::cloudwatch
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::cloudwatch`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ContactPoint
|
|
4
|
+
description: grafana resource type Grafana::ContactPoint
|
|
5
|
+
name: ContactPoint
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::ContactPoint
|
|
8
|
+
---
|
|
9
|
+
`Grafana::ContactPoint`, a resource type of the grafana lexicon.
|
|
10
|
+
|
|
11
|
+
## Governed by
|
|
12
|
+
|
|
13
|
+
- [GRAF002](/rules/GRAF002.md): a datasource or contact point secret written as a literal.
|
|
14
|
+
- [GRAF113](/rules/GRAF113.md): Alerting routes to a contact point or mute timing the build does not declare, or a policy matcher does not parse
|
|
@@ -11,4 +11,5 @@ resource_type: Grafana::Dashboard
|
|
|
11
11
|
## Governed by
|
|
12
12
|
|
|
13
13
|
- [GRAF001](/rules/GRAF001.md): a uid Grafana rejects, or a variable name queries cannot reference.
|
|
14
|
-
- [GRAF104](/rules/GRAF104.md): Two dashboards, datasources, panels, variables or queries share an id
|
|
14
|
+
- [GRAF104](/rules/GRAF104.md): Two dashboards, datasources, folders, panels, variables or queries share an id
|
|
15
|
+
- [GRAF109](/rules/GRAF109.md): Dashboard provisioning puts a dashboard somewhere other than its declared folder, or loads it twice
|
|
@@ -11,6 +11,7 @@ resource_type: Grafana::Datasource
|
|
|
11
11
|
## Governed by
|
|
12
12
|
|
|
13
13
|
- [GRAF001](/rules/GRAF001.md): a uid Grafana rejects, or a variable name queries cannot reference.
|
|
14
|
-
- [GRAF002](/rules/GRAF002.md): a datasource secret written as a literal.
|
|
15
|
-
- [GRAF101](/rules/GRAF101.md): A panel, query or
|
|
14
|
+
- [GRAF002](/rules/GRAF002.md): a datasource or contact point secret written as a literal.
|
|
15
|
+
- [GRAF101](/rules/GRAF101.md): A panel, query, variable or annotation uses a datasource no Datasource or ExternalDatasource in the build declares, or one the build deletes
|
|
16
16
|
- [GRAF102](/rules/GRAF102.md): A query is sent to a datasource of another plugin type
|
|
17
|
+
- [GRAF112](/rules/GRAF112.md): An alert rule queries a datasource the build does not declare, or of another type
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: DatasourceProvisioning
|
|
4
|
+
description: grafana resource type Grafana::DatasourceProvisioning
|
|
5
|
+
name: DatasourceProvisioning
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::DatasourceProvisioning
|
|
8
|
+
---
|
|
9
|
+
`Grafana::DatasourceProvisioning`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ElasticsearchQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::elasticsearch
|
|
5
|
+
name: ElasticsearchQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::elasticsearch
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::elasticsearch`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ExternalDatasource
|
|
4
|
+
description: grafana resource type Grafana::ExternalDatasource
|
|
5
|
+
name: ExternalDatasource
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::ExternalDatasource
|
|
8
|
+
---
|
|
9
|
+
`Grafana::ExternalDatasource`, a resource type of the grafana lexicon.
|
|
10
|
+
|
|
11
|
+
## Governed by
|
|
12
|
+
|
|
13
|
+
- [GRAF101](/rules/GRAF101.md): A panel, query, variable or annotation uses a datasource no Datasource or ExternalDatasource in the build declares, or one the build deletes
|
|
14
|
+
- [GRAF102](/rules/GRAF102.md): A query is sent to a datasource of another plugin type
|
|
15
|
+
- [GRAF112](/rules/GRAF112.md): An alert rule queries a datasource the build does not declare, or of another type
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: FlameGraphPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::flamegraph
|
|
5
|
+
name: FlameGraphPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::flamegraph
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::flamegraph`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: GroupByVariable
|
|
4
|
+
description: grafana resource type Grafana::Variable::groupby
|
|
5
|
+
name: GroupByVariable
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Variable::groupby
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Variable::groupby`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: HistogramPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::histogram
|
|
5
|
+
name: HistogramPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::histogram
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::histogram`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: MathExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::math
|
|
5
|
+
name: MathExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::math
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::math`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: MuteTiming
|
|
4
|
+
description: grafana resource type Grafana::MuteTiming
|
|
5
|
+
name: MuteTiming
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::MuteTiming
|
|
8
|
+
---
|
|
9
|
+
`Grafana::MuteTiming`, a resource type of the grafana lexicon.
|
|
10
|
+
|
|
11
|
+
## Governed by
|
|
12
|
+
|
|
13
|
+
- [GRAF113](/rules/GRAF113.md): Alerting routes to a contact point or mute timing the build does not declare, or a policy matcher does not parse
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: NodeGraphPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::nodeGraph
|
|
5
|
+
name: NodeGraphPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::nodeGraph
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::nodeGraph`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: NotificationPolicy
|
|
4
|
+
description: grafana resource type Grafana::NotificationPolicy
|
|
5
|
+
name: NotificationPolicy
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::NotificationPolicy
|
|
8
|
+
---
|
|
9
|
+
`Grafana::NotificationPolicy`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: NotificationTemplate
|
|
4
|
+
description: grafana resource type Grafana::NotificationTemplate
|
|
5
|
+
name: NotificationTemplate
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::NotificationTemplate
|
|
8
|
+
---
|
|
9
|
+
`Grafana::NotificationTemplate`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: PieChartPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::piechart
|
|
5
|
+
name: PieChartPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::piechart
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::piechart`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: PostgresQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::grafana-postgresql-datasource
|
|
5
|
+
name: PostgresQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::grafana-postgresql-datasource
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::grafana-postgresql-datasource`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: PyroscopeQuery
|
|
4
|
+
description: grafana resource type Grafana::Query::grafana-pyroscope-datasource
|
|
5
|
+
name: PyroscopeQuery
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Query::grafana-pyroscope-datasource
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Query::grafana-pyroscope-datasource`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ReduceExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::reduce
|
|
5
|
+
name: ReduceExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::reduce
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::reduce`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ResampleExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::resample
|
|
5
|
+
name: ResampleExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::resample
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::resample`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: SqlExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::sql
|
|
5
|
+
name: SqlExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::sql
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::sql`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: StateTimelinePanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::state-timeline
|
|
5
|
+
name: StateTimelinePanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::state-timeline
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::state-timeline`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: StatusHistoryPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::status-history
|
|
5
|
+
name: StatusHistoryPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::status-history
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::status-history`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: SwitchVariable
|
|
4
|
+
description: grafana resource type Grafana::Variable::switch
|
|
5
|
+
name: SwitchVariable
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Variable::switch
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Variable::switch`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: ThresholdExpression
|
|
4
|
+
description: grafana resource type Grafana::Expression::threshold
|
|
5
|
+
name: ThresholdExpression
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Expression::threshold
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Expression::threshold`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: resource-type
|
|
3
|
+
title: XYChartPanel
|
|
4
|
+
description: grafana resource type Grafana::Panel::xychart
|
|
5
|
+
name: XYChartPanel
|
|
6
|
+
lexicon: grafana
|
|
7
|
+
resource_type: Grafana::Panel::xychart
|
|
8
|
+
---
|
|
9
|
+
`Grafana::Panel::xychart`, a resource type of the grafana lexicon.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `grafanaApply`, the Op activity for the Grafana API applier (#2948), and
|
|
3
|
+
* `toApplyResult`, its projection onto core's apply envelope (#1446).
|
|
4
|
+
*
|
|
5
|
+
* It reads a build's output (the index the serializer writes as its primary
|
|
6
|
+
* output, and the dashboard files beside it), binds the environment's
|
|
7
|
+
* Grafana the way observe and export do (`grafana.profiles.<env>`, else
|
|
8
|
+
* `GRAFANA_URL`; ../../api/bind.ts), and hands the plan to `applyGrafana`
|
|
9
|
+
* (../../api/apply.ts), which holds the API decisions.
|
|
10
|
+
*
|
|
11
|
+
* The ownership marker is the project's: `ownership.stack` and
|
|
12
|
+
* `ownership.env` from `chant.config.ts`, or `stack`/`ownershipEnv` passed
|
|
13
|
+
* in. Without a stack the apply still runs, stamping only the managed-by
|
|
14
|
+
* label, and a prune declines (as `not-prunable`) rather than delete
|
|
15
|
+
* another stack's dashboards.
|
|
16
|
+
*/
|
|
17
|
+
import type { ChantConfig } from "@intentius/chant/config";
|
|
18
|
+
import type { OwnershipMarker } from "@intentius/chant/ownership";
|
|
19
|
+
import { type ApplyResult } from "@intentius/chant/apply";
|
|
20
|
+
import type { GrafanaHttp } from "../../api/client.js";
|
|
21
|
+
import { type BuiltDashboardInput, type GrafanaApplyOutcome } from "../../api/apply.js";
|
|
22
|
+
import type { FolderPlan } from "../../api/folders.js";
|
|
23
|
+
export type { GrafanaApplyOutcome } from "../../api/apply.js";
|
|
24
|
+
export interface GrafanaApplyArgs {
|
|
25
|
+
/**
|
|
26
|
+
* The build's primary output: the index the grafana serializer writes
|
|
27
|
+
* (`chant build -o dist/grafana.json`). The dashboard files it lists are
|
|
28
|
+
* read from the same directory. A combined multi-lexicon output works too;
|
|
29
|
+
* its `grafana` key is used.
|
|
30
|
+
*/
|
|
31
|
+
indexPath: string;
|
|
32
|
+
/** The chant environment, which selects `grafana.profiles.<environment>`. */
|
|
33
|
+
environment?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Delete this project's dashboards and folders that the build no longer
|
|
36
|
+
* declares: only those carrying its ownership marker, stack and env.
|
|
37
|
+
* Destructive, so off by default.
|
|
38
|
+
*/
|
|
39
|
+
prune?: boolean;
|
|
40
|
+
/** Ownership stack. Default: `ownership.stack` in `chant.config.ts`. */
|
|
41
|
+
stack?: string;
|
|
42
|
+
/** Ownership env. Default: `ownership.env` in `chant.config.ts` (a literal; a `{ param }` reference needs this). */
|
|
43
|
+
ownershipEnv?: string;
|
|
44
|
+
/** Project directory for `chant.config.ts`. Default: the working directory. */
|
|
45
|
+
cwd?: string;
|
|
46
|
+
}
|
|
47
|
+
/** What a test (or an embedding caller) may inject instead of the project's config, the process env and `fetch`. */
|
|
48
|
+
export interface GrafanaApplyDeps {
|
|
49
|
+
http?: GrafanaHttp;
|
|
50
|
+
config?: Pick<ChantConfig, "grafana" | "ownership">;
|
|
51
|
+
env?: Record<string, string | undefined>;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* The dashboards a build wrote, read from its index and the files beside
|
|
55
|
+
* it. Pure but for the file reads.
|
|
56
|
+
*/
|
|
57
|
+
export declare function readBuiltDashboards(indexPath: string, read?: (path: string) => string): BuiltDashboardInput[];
|
|
58
|
+
/**
|
|
59
|
+
* The dashboards a build wrote, with their folders, and the folders its
|
|
60
|
+
* index lists (every level of every folder, `Folder`s holding no dashboard
|
|
61
|
+
* included). An index written before folders were listed has none, and the
|
|
62
|
+
* plan derives them from the dashboards' paths.
|
|
63
|
+
*/
|
|
64
|
+
export declare function readBuiltIndex(indexPath: string, read?: (path: string) => string): {
|
|
65
|
+
dashboards: BuiltDashboardInput[];
|
|
66
|
+
folders: FolderPlan[];
|
|
67
|
+
};
|
|
68
|
+
/** The marker to stamp and prune by: the arguments, else the project's `ownership` config. */
|
|
69
|
+
export declare function resolveMarker(args: Pick<GrafanaApplyArgs, "stack" | "ownershipEnv">, config: Pick<ChantConfig, "ownership"> | undefined): OwnershipMarker | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Apply a grafana build to the environment's Grafana over its HTTP API.
|
|
72
|
+
* Dashboards and folders get chant's ownership labels; with `prune`, this
|
|
73
|
+
* project's dashboards and folders the build no longer has are deleted.
|
|
74
|
+
* A target that cannot be bound returns every resource as not attempted,
|
|
75
|
+
* with the binding's reason.
|
|
76
|
+
*/
|
|
77
|
+
export declare function grafanaApply(args: GrafanaApplyArgs, signal?: AbortSignal, deps?: GrafanaApplyDeps): Promise<GrafanaApplyOutcome>;
|
|
78
|
+
/**
|
|
79
|
+
* Project a grafana apply outcome onto core's apply envelope. The outcome
|
|
80
|
+
* keeps what the envelope has no room for (the request path, the API
|
|
81
|
+
* version, the binding's source); a kind the prune could not consider has no
|
|
82
|
+
* single resource name, so it is reported as `<kind>/*`, `not-prunable`,
|
|
83
|
+
* as the gcp applier does.
|
|
84
|
+
*/
|
|
85
|
+
export declare function toApplyResult(outcome: GrafanaApplyOutcome): ApplyResult;
|
|
86
|
+
//# sourceMappingURL=grafana-apply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grafana-apply.d.ts","sourceRoot":"","sources":["../../../src/op/activities/grafana-apply.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAIL,KAAK,WAAW,EAEjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAkE,KAAK,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACrJ,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oHAAoH;IACpH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,oHAAoH;AACpH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,WAAW,CAAC,CAAC;IACpD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC1C;AAQD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAuC,GAAG,mBAAmB,EAAE,CAE7I;AAUD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAuC,GAAG;IAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAA;CAAE,CAiB/K;AAWD,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAUrK;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsC1I;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CAOvE"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grafana Op activities, resolved by the core activity registry when a
|
|
3
|
+
* project's `chant.config.ts` lists the `grafana` lexicon. Contributes the
|
|
4
|
+
* API applier (`grafanaApply`, #2948) and its envelope projection
|
|
5
|
+
* (`toApplyResult`), which core's apply activity looks up by name.
|
|
6
|
+
*/
|
|
7
|
+
export { grafanaApply, toApplyResult, readBuiltDashboards, readBuiltIndex, resolveMarker } from "./grafana-apply.js";
|
|
8
|
+
export type { GrafanaApplyArgs, GrafanaApplyDeps, GrafanaApplyOutcome } from "./grafana-apply.js";
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/op/activities/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAClH,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC"}
|