64 Commits

Author SHA1 Message Date
09895c26b6 Chore: Hacky first pass on generating composable kinds within grafana/schema (#64723)
* Super hacky first pass on gen types

* First sketchy pass at generated compo kinds in TS, grok-style

* Merge fix

* Create jenny for MajorsOrX for plugins

* Re-generate files with imports

* Delete invalid generated file

* Fix cue

* Update go.mod

* Update schemas

* Fix go-imports

* Regenerate cue files

---------

Co-authored-by: spinillos <selenepinillos@gmail.com>
2023-05-30 05:56:18 -07:00
cb83861630 Improve Dashboards schema docs (#68904)
Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
Co-authored-by: Alexandra Vargas <alexa1866@gmail.com>
Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
2023-05-29 15:15:28 +03:00
e7da2a179e Schema: Add schema for role+access policies (#68047) 2023-05-24 10:31:57 -07:00
323cbe1997 kindsys: Adapt to new flattened lineage syntax in Thema (#68034)
* Update all core kinds to flattened lineages

* Regen Go types, without any

* Regen Go types, s/interface{}/any/

* Update generated core typescript

* Update generate docs

* Fix defaults gen in veneer index jenny

* Flatten plugindef lineage

* Convert all plugin kinds to flattened form

* Switch back to interface{} for now

* Switch to fs.Sub in plugin DeclParser

* Mostly undesirable codegen changes, to be fixed

* Update mod and sum

* Update pfs tests to flattened lineages

* Update thema to latest, regen docs
2023-05-24 10:47:25 +02:00
2c75a51285 Schema: Move TeamDTO properties out of the resource (#68155) 2023-05-22 11:30:36 -07:00
108acee08e CloudMonitoring: Initial GCM Schema (#67739)
* Initial GCM schema work

- Split types for convenience
- Update conditionals where needed
- Update type references

* Add additional supporting types

* Add some more accessory and legacy types

* Add missing type

* Rename backend folder

* Add missing generated file

* Review
2023-05-22 17:19:54 +01:00
670c987409 Prometheus: Update schema with legendFormat and intervalFactor (#68687)
add legendFormat and intervalFactor to the schema
2023-05-22 16:20:15 +02:00
33fd83f7e3 kindsys: Adapt to new PanelCfg schema interface (#65297)
* kindsys: Adapt to new PanelCfg schema interface

* building locally

* Remove Panel prefix in cue files

* Regenerate

* Update imports

* fixup! Merge branch 'remove-panel-prefix' into sdboyer/redundant-panelcfg-prefixes

* Fix formatting

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Tania B <yalyna.ts@gmail.com>
2023-05-15 23:07:54 -04:00
dcb3b4d97a Codegen: Fix composable kinds docs generation (#68087)
* Fix plugins docs and regenerate

* fixup! Fix plugins docs and regenerate
2023-05-10 11:27:13 +02:00
881ed3b599 Schema: Add basic folder schema (#67561) 2023-05-03 13:07:39 -07:00
ca1f79b9ba Kindsys: Target k8s style resource definitions (#67008)
Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-04-27 23:32:38 +03:00
9452c0d718 Annotations: Support filtering the target panels (#66325)
Co-authored-by: Adela Almasan <adela.almasan@grafana.com>
Co-authored-by: nmarrs <nathanielmarrs@gmail.com>
2023-04-18 15:39:30 -05:00
0409cfd116 Docs: Add Default column to generated schema docs (#64550)
Docs: Add  column to generated schema docs
2023-03-22 18:42:28 +01:00
1328a32a31 Chore: Fix times in schemas (#64906)
* Fix times in schemas

* Fix frontend lints
2023-03-21 10:42:19 +01:00
18385bfb0e Revert "Stat: Add ability to remove default single-color background gradient" (#65002)
Revert "Stat: Add ability to remove default single-color background gradient (#64353)"

This reverts commit de901560d7f31d040b0c61dec70036da341f104b.
2023-03-20 14:17:51 +01:00
de901560d7 Stat: Add ability to remove default single-color background gradient (#64353)
* baldm0mma/feature/solidOption/ update cue and ts types

* baldm0mma/feature/solidOption/ update data structures

* baldm0mma/feature/solidOption/ vizrepeater investigation

* baldm0mma/feature/solidOption/ add buildGradientBackground

* baldm0mma/feature/solidOption/ remove conlogs from fieldDisplay.ts

* baldm0mma/feature/solidOption/ rem destruct in fielddisplay.ts

* baldm0mma/feature/solidOption/ rem conlogs from bivaluelayout.tsx

* baldm0mma/feature/solidOption/ rem conlogs in visrepeater

* baldm0mma/feature/solidOption/ rem conlogs from statpanel.tsx

* baldm0mma/feature/solidOption/ add annotations in BigValue.tsx

* baldm0mma/feature/solidOption/ update cue

* baldm0mma/feature/solidOption/ remove unused anno

* baldm0mma/feature/solidOption/ update with toggle conditinal

* Update module.tsx

update anno

* baldm0mma/feature/solidOption/ update annos

* baldm0mma/feature/solidOption/ undo change

* baldm0mma/featurew/solidOption/ add anno for boolean toggle in stat module

* baldm0mma/featurew/solidOption/ update anno in BigValue.tsx for hasGradient

* baldm0mma/featurew/solidOption/ updart default logic in bigValueLayout.tsx
2023-03-14 08:59:54 -06:00
73ce20ab48 Table Panel: Add ability to use text color for value or hide value in gauge cell (#61477)
* BarGauge: New value options

* Fix typings for cell options, add new value mode option for bar gauge cells

* Add BarGauge panel option, tests, and update test dashboard

* Updated

* Added default

* Goodbye trusty console.log

* Update

* Merge changes from main

* Update docs

* Add valuemode doc changes

* Update gdev dashboard

* Update valueMode symbol name to valueDisplayMode

* Use Enums as Opposed to literals, don't calculate values when hidden

* Remove double import

* Fix tests

* One more test fix

* Remove erroneous targets field, fix type of maxDataPoints

* Strip nulls and add index field to Thresholds

* Gen cue

* remove bad targets again

* Fixes

---------

Co-authored-by: Kyle Cunningham <kyle@codeincarnate.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-03-10 14:41:46 +01:00
548a5054ad Table: Introduce sparkline cell type (#63182) 2023-03-10 14:41:06 +02:00
68b588b912 Prometheus schematization (#63878)
* Schematize prometheus

* revert changes

* close response body

* Update report.json

* Update pkg/tsdb/prometheus/models/query.go

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Use without pointers

* remove unused

* Specify query format

* Rename

* Clean up schema

* Update public/app/plugins/datasource/prometheus/dataquery.cue

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Update pkg/tsdb/prometheus/models/query.go

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* Clean up tests

* Update public/app/plugins/datasource/prometheus/dataquery.cue

Co-authored-by: sam boyer <sdboyer@grafana.com>

* make gen-cue

* Add comments

* Make linter happy

* Remove editormode override

* Update

---------

Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2023-03-09 11:26:15 +01:00
4b94c7e5d2 Schema: Remove key from root DataQuery type (#64467) 2023-03-08 16:52:31 -05:00
4c30403904 Elastic Search: Fix BasePipelineMetricAggregation schema type (#64335)
* Fix type

* Tweak BaseBucketAggregation type

* Remove comment
2023-03-08 13:12:44 +02:00
fd37ff29b5 Tempo: New Search UI using TraceQL (#63808)
* WIP of creating new components to support the Search tab using TraceQL

* Search fields now require an ID. Added duration fields to new Search UI

* Distinguish static from dynamic fields. Added dynamic tags input

* Moved new search behind traceqlSearch feature flag. Added handling of different types of values to accurately wrap them in quotes when generating query.

* Hold search state in TempoQuery to leverage state in URL. Moved types to schema file

* Use a read only monaco editor to render a syntax highlighted generated query. Added tooltip to duration. Added query options section

* Support multiple values using the regex operator and multi input

* Delete dynamic filters

* Automatically select the regex op when multiple values are selected. Revert to previous operator when only one value is selected

* Added tests for SearchField component

* Added tests for the TraceQLSearch component

* Added tests for function that generates the query

* Fix merge conflicts

* Update test

* Replace Search tab when traceqlSearch feature flag is enabled. Limit operators for both name fields to =,!=,=~

* Disable clear button for values

* Changed delete and add buttons to AccessoryButton. Added descriptions to operators

* Remove duplicate test

* Added a prismjs grammar for traceql. Replaced read only query editor with syntax highlighted query. Removed spaces between tag operator and value when generating query.

* Fix support for custom values when isMulti is enabled in Select

* Use toOption function
2023-03-06 16:31:08 +00:00
40ba848bf5 Codegen: Render disjunctions in docs (#63590)
* Codegen: Render disjunctions in docs

* Fix references

* Regenerate docs
2023-03-03 17:48:25 +01:00
a91e0a49c9 Migrate table to cue model (#61852)
* WIP table cue model

* WIP table types migration

* refactor

* WIP table cue

* docs

* veneer fix, docs

* docs
2023-03-01 17:48:36 +02:00
e1bc3fad83 Heatmap: Migrate to CUE (#62173)
* IP migrate heatmap to cue

* WIP

* refactor

* change usages and refactor panelcfg

* CR modifications and docs

* refactor, enable heatmap cue generation, overwrite enum values in types.ts

* small refactor

* refactor types.ts

* cr modifications

* docs
2023-03-01 17:47:21 +02:00
5ad074ff2c Logs Panel: Generate types from schema (#63716) 2023-02-27 13:56:35 +02:00
6ca9e5b440 Schema: fix dashboard revision docs (#63284) 2023-02-11 15:25:03 -08:00
f0333ac41f Codegen: Render constraints in generated docs (#63196)
* Add constraints rendering

* Generate docs

* Fix constraint format

* Add type alias

* Compare numbers as strings

* fixup! Compare numbers as strings

* Add missing return
2023-02-10 06:40:50 -05:00
d660e3acb9 Geomap: Update to panelcfg (#63169)
* Geomap: Update to panelcfg

* Generate geomappanelcfg docs

---------

Co-authored-by: Tania B <yalyna.ts@gmail.com>
2023-02-09 14:38:06 +02:00
25756b49a3 Codegen: Remove duplicated sections from generated docs (#62965)
* Remove duplicated sections

* Regenerate docs

* Refactor schema.sections func (#63079)

* Refactor schema.sections func

* Small refactors

---------

Co-authored-by: Joan López de la Franca Beltran <5459617+joanlopez@users.noreply.github.com>
2023-02-08 06:07:00 -05:00
7384ec0c3d Chore: Update Parca data query docs (#63011) 2023-02-07 11:39:22 +00:00
0fcc864bbb Docs: Add Schema maturity docs (#61963)
* Docs: Add Schema maturity docs

* Remove 'which category' section from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Maturity process guides from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Defaults and Field optionality from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove MaybeRemove section from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Remove Milestone 3 and 4 from maturity.md

Co-authored-by: sam boyer <sdboyer@grafana.com>

* Rearrange schema maturity docs

* Regenerate schema docs after merge with main

* Update Maturity docs headers, keep single h1

* Update wording in Schema docs

Co-authored-by: Tania <yalyna.ts@gmail.com>

* Regenerate docs after merge with main

---------

Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Tania <yalyna.ts@gmail.com>
2023-02-07 11:02:05 +01:00
121260e0dd Parca: Use data query schema (#62840)
* Parca data query schema

* Remove groupBy
2023-02-07 09:56:21 +00:00
84a6671911 Cloudwatch: generate types (#61770)
* New pfs impl

* Reached codegen parity with old system

* Update all models.cue inputs

* Rename all models.cue files

* Remove unused prefixfs

* Changes Queries->DataQuery schema interface

* Recodegen

* All tests passing, nearly good now

* Add SchemaInterface to kindsys props

* Add pascal name deriver

* Relocate plugin cue files again

* Clarify use of injected fields

* Remove unnecessary aliasing

* Move DataQuery into mudball

* Allow forcing ExpandReferences on go type generation

* Move DataQuery def into kindsys, add generator to copy it to common

* Fix copy generator to replace package name correctly

* Setup Cloudwatch data query schema

* Add go file

* Re-generate types

* Re-generate types

* Add missing files

* Re-generate docs

* Add MetricStat

* Add CloudWatchAnnotationQuery

* Remove DataQuery extension

* Fixes

* Sync with main

* Update report

---------

Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-02-03 15:27:48 -05:00
20ec54f1f9 Elasticsearch: Use generated types in data source (#62753)
* Use generated types in frontend

* Export missing MetricAggregationWithMeta

* Remove not needed changes

* Update

* Fix lint

* Update comments
2023-02-03 12:04:12 -05:00
d7f7cd1e61 Schema: Initial Azure Monitor query schema (#62018)
* Initial schema

- Add types based off of current frontend

* Rename and field-level comments

* Update report and regenerate files

* Rename frontend Azure folder

- Doing this for consistency and to ensure code-generation works
- Update betterer results due to file renames

* Remove default and add back enum vals that I deleted

* Set workspace prop as optional

* Replace template variable types

* Connect frontend query types

- Keep properties optional for now to avoid major changes
- Rename AzureMetricResource
- Correctly use ResultFormat

* Add TSVeneer decorator

* Update schema

* Update type

* Update CODEOWNERS

* Fix gen-cue issue

* Fix backend test

* Fix e2e test

* Update code coverage

* Remove references to old Azure Monitor path

* Review

* Regen files
2023-02-03 16:06:54 +00:00
29212c9a3f Chore: Update generated schema files (#62862)
* chore(schema): update generated files

* empty commit
2023-02-03 07:41:46 -05:00
5815a37f47 Debug Panel: Introduce schema types (#62094)
* feat(debugpanel): schematizing debug panel plugin

* delete old types and update imports to new generated schema

* update to experimental

* derived counters, fix options key name

* num to int

* chore(debugpanel): update ts imports post type rename

* chore(kindsys): refresh report.json

* migrate UpdateCounters back to runtime

* merge with main

---------

Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
2023-02-03 11:57:04 +01:00
48a374f50b loki: implement schema for loki query (#62114)
* loki: implement schema for loki query

* removed forgotten code

* better types

* adjust cue-maturity-level

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* sync docs to schema change

* removed forgotten go code

* updated schema docs

Co-authored-by: J Stickler <julie.stickler@grafana.com>

* updated schema docs

Co-authored-by: J Stickler <julie.stickler@grafana.com>

* update schema docs

Co-authored-by: J Stickler <julie.stickler@grafana.com>

* update schema docs

Co-authored-by: J Stickler <julie.stickler@grafana.com>

* updated schema docs

Co-authored-by: J Stickler <julie.stickler@grafana.com>

* updated schema docs

* add documentation to the resolution field

* move direction-field to schema

* loki: cue: moved deprecated fields to the bottom

---------

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: J Stickler <julie.stickler@grafana.com>
2023-02-02 16:18:30 +00:00
19ed9181e1 Kindsys: Extend DocsJenny with support for 'allOf' (#62558)
* Kindsys: Extend DocsJenny with support for 'allOf'

* Update generated docs

* Multiple refinements

* Minor fixes

* Undo undesired changes

* Fix

* Fix linter complains

---------

Co-authored-by: Tania B <yalyna.ts@gmail.com>
2023-02-02 16:12:31 +01:00
3c01ae2c9e Docs: Render map type fields in generated docs (#62022)
* Render map type in docs

* Generate

* Clenaup rendering properties

* Minor updates

* Update maps rendering
2023-02-02 13:02:29 +01:00
ccfa9a4ef0 Elasticsearch: Implement schema for query (#62147)
* Elasticsearch: Implement schema for query

* Comment out types I am not sure how to do

* Manually fix typing for PipelineMetricAggregationWithMultipleBucketPaths and BasePipelineMetricAggregation

* Import types to types.ts to have single source of truth

* Cleanup, reorder

* Remove unnecesary Schema.

* Fix test

* Refactor
2023-02-02 09:01:02 +01:00
f3c5e85559 Phlare: Use data query schema (#62112)
* Create cue file and gen ts/go types

* Use generated schema in ts/go

* Run make den-cue to update report

* Manually extend Phlare query

* Updates

* Add default queryType

* Run make gen-cue to Update report.json
2023-02-01 09:29:25 +00:00
850d5141cf Tempo: DataQuery type as a schema (#62119)
* Tempo data query wip

* Replace TempoQuery with new type from schema

* Added some documentation for each DataQuery field

* Change limit type from number to int64

* Use TempoDataQuery instead of local model in the backend

* Update report.json
2023-01-31 11:29:50 +00:00
0d2a786816 Schema: Add schema for library panels (#62169) 2023-01-30 04:14:12 +00:00
d4015602ca Dashboard schema: Update default value for timezone (#62340) 2023-01-27 15:43:13 +00:00
83199c4bf5 Dashboard schema: Review and mature timezone property (#62090)
* Review and mature timezone property of Dashboard kind

* Update timezone type
2023-01-27 07:13:33 -08:00
1464dd4095 Re-add RowHeight option to StatusHistory (#62293) 2023-01-27 12:52:32 +02:00
039b30b1ea NodeGraph: Schema for panel options (#62121) 2023-01-26 18:02:41 +01:00
42732539ed TestData: Introduce schema types (#62130)
* schematize data query

* add the stuff you dingus

* feat(testdatasource): add scenario to generated types

* use generated testdata query in frontend

* update code owners

* Add path exception for testdata datasource

* use specific numeric data types

* fix test

* fix e2e smoketest

* add test data query type

* use test data query type

* fix betterer

* Fix typo

* move to experimental

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: sam boyer <sdboyer@grafana.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2023-01-26 15:31:34 +00:00