What
This commit refactors the logic to restore a dashboard from a version.
The logic is moved from the API handler to the dashboard versions service,
which now supports restoring dashboards of different API versions.
Why
To make sure that dashboard version restoration works with v2 dashboards
API, as well as future API versions.
Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
* AuthZ: Create without scope for resources outside of folders
* Make it explicit that create requires a scope check
* Update pkg/services/authz/rbac/service.go
* Use skipScope instead of ReqScope
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* Explain why there is no need to skip scope for roles
---------
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* Remove support for initMinSize.
Remove support for searchAfterWrite option, now it defaults to true.
* Remove reference to deprecated feature toggle.
* Remove feature toggle completely.
* Remove code related to indexing on watch events.
* Fix compilation error.
* Remove unused field.
* wip; public dashboards and snapshots work
* Chore: Fix example of major release (#110007)
baldm0mma/ fix example of major release
* CI: Push docker images to dockerhub on merges to main (#110056)
* support extracting queries in schema V2
* fix lint and test
* fix test
* clean up
* clean up
* apply feedback about early returns
* fix url issue when clicking open original dashboard in v1
* refactor to early returns
* fix api version comparison
---------
Co-authored-by: Jev Forsberg <46619047+baldm0mma@users.noreply.github.com>
Co-authored-by: Kevin Minehart <5140827+kminehart@users.noreply.github.com>
* added supported functions and alerting/recording rules
* added more to alerting and recording
* added LLM integration info, cleaned up some other language
* cleaned up some passive voice
* ran prettier
* added requested update to alert/recording rules
* added RefID definition
* Update docs/sources/panels-visualizations/query-transform-data/sql-expressions/index.md
Co-authored-by: Alex Spencer <52186778+alexjonspencer1@users.noreply.github.com>
* updates based on feedback
* updates based on feedback
* ran prettier
---------
Co-authored-by: Alex Spencer <52186778+alexjonspencer1@users.noreply.github.com>
* feat/add_observability_landing
* Add check for observability path
* Fix existing tests
* Test that we're rendering the component when in the correct path
* Reset all mocks after testing
* Check for extension only on observability route
* Undo changes to tests
* Extract strings to constants
* Remove unused validator
* Remove unnecesary ObservabilityLanding component
* Update subtitle for Observability section
* Use proper '
* Expose extension point, allow plugins to hook into it, and render received components
* Fix and test
* Remove no longer needed unit tests
* Readd validation checks, allow for regex like paths
* refactor(extensions): extract dynamic extension point ids to a separate enum
* Undo unwanted const to let change
* Update extension point id to better transmit intent and use
---------
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
This lets the prometheus api respect NoGroup query logic and treat non-grouped rules consistently.
Co-authored-by: William Wernert <william.wernert@grafana.com>
Rules created in the new api makes the rule have no group in the database, but the rule is returned in the old group api with a sentinel group name formatted with the rule uid for compatiblity with the old api.
This makes the UI continue to work with the rules without a group, and the ruler will continue to work with the rules without a group.
Rules are not allowed to be created in the provisioning api with a NoGroup sentinel mask, but NoGroup rules can be manipulated through both the new and old apis.
Co-authored-by: William Wernert <william.wernert@grafana.com>
The first version of the app platform apis for alerting rules, including AlertRule and RecordingRule definitions.
Co-authored-by: William Wernert <william.wernert@grafana.com>
* Add feature toggle and extension point
* Update ff name for enrichment per rule
* update translations
* wip
* remove wrong duplication after merging from main
* manage enrichments per rule drawer: add ruleUid to extension component
* remove folder
* move drawer to the list page
* update translations
* remove unused import
* add client cfg for containers
* remove unused code
* add field for skip host env for proto client
* add docker to Swagger ignore
* add to enterprise swagger gen
* undo go.mod changes
* pass container image
* propagate container image field
* WIP: List
* make toV0ResourcePermissions work with an ordered list of assignments to ensure consistency in the results
* Test templates
* Split list query in two. I clearly need scopePatterns
* Add pagination with offsets
* Remove unecessary comment
* implement listiterator
* add listiterator tests
* return the correct resource version
* use SkipIntegrationTestInShortMode
* No need for the extra check on pagination being correctly set
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* Spec is out of date
* Remove wrong comment
* Add a test for the pagination token
---------
Co-authored-by: mohammad-hamid <mohammad.hamid@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>