Files
grafana/apps/dashboard/pkg/migration/schemaversion/v25.go
T
Haris Rozajac 6ca8c6c6da Dashboard Migrations: v25 & v24; migrate angular table (#108826)
* Dashboard Migrations: V31 LabelsToFields-Merge Migration

* Dashboard Migrations: V32 No-op migration

* simplify

* Refactor to reduce nesting

* Dashboard Migrations: V30 value mappings and tooltip options

* Do not automigrate since graph is migrated in v27

* Refactor to reduce nesting

* Add test case for invalid mapping

* migrate to v29

* wip

* Fix tests

* fix output

* wip

* fix min version issue

* fix wire

* ignore gauge logic as it never get's executed

* add panel migration to test

* improvements

* update

* cleanup

* address mappings inconsistencies

* cleanup

* fix lint issues

* add cfg when initializing

* v27 migration

* migrate to v26

* preallocate array

* remove logic for grafana-singlestat because it's shared with stat logic; improve error handling and testing

* fix go lint

* don't preallocate; cleanup comments

* cleanup

* wip

* run internal provider function when getting a single panel

* clean up; add tests

* add tests for panel plugin service

* remove obsolete mock for getting panel plugin

* add tests for the whole pipeline

* fix test and lint

* fix test

* Fix missing scenarios

---------

Co-authored-by: Ivan Ortega <ivanortegaalba@gmail.com>
2025-08-07 14:14:39 -06:00

50 lines
1.1 KiB
Go

package schemaversion
// V25 migration is a no-op migration
// It only updates the schema version to 25
// It's created to keep the migration history consistent with frontend migrator
// Variable tag removal is handled in v28 migration
// Example before migration:
// {
// "templating": {
// "list": [
// {
// "name": "tags should not be removed",
// "type": "query",
// "datasource": "prometheus",
// "tags": ["tags should not be removed"],
// "tagsQuery": "tag should not be removed",
// "tagValuesQuery": "tag should not be removed",
// "useTags": true,
// "options": []
// }
// ]
// }
// }
// Example after migration:
// {
// "templating": {
// "list": [
// {
// "name": "tags should not be removed",
// "type": "query",
// "datasource": "prometheus",
// "tags": ["tags should not be removed"],
// "tagsQuery": "tag should not be removed",
// "tagValuesQuery": "tag should not be removed",
// "useTags": true,
// "options": []
// }
// ]
// }
// }
func V25(dashboard map[string]interface{}) error {
dashboard["schemaVersion"] = int(25)
return nil
}