* fix: mark `exploreMetricsUseExternalAppPlugin` as not frontend-only
* docs: explicitly show feature toggle in docs
* Revert "docs: explicitly show feature toggle in docs"
This reverts commit 292ce7f7e8.
* Initial API client for ScopesNavigation
* Display scopes navigation items and group them
* Remove refactored component
* Fix link highlighting
* Underline on focus
* Set icons based un URL path
* Remove explicit icon names
* Add links to copy
* Map dashboardbinding to scopeNavigation in folder generation
* Consolidate dashboardbindings and scopenavigations to a single way of handling
* Let fetchDashboards handle all fetching
* Move endpoint types to core
* Remove comments
* Fix import
* Rename name to id
* Update translation
* Add feature toggle
* Fix tests
* Fix go.mod for some reason
---------
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
* Unified Storage: Don't read before create
* test: use the existing test infra
* fix: support pq
We use pgx, but it seems to be wrapped in a pq driver shim, causing the errors to be remapped to pq's type. Weird
situation.
* feat: support CDK backend
* revert: there is a postgres_tests block
* fix(CDK): only check existence on ADDED updates
* fix(CDK): use ReadResource to deal with deleted files
* Move to new repository
* Rename it to dual writer
* Rename the function
* Rename the methods
* Rename to exportResource
* Clean up logic in migrate and add TODOs
* Add TODOs
* Use generic client for unprovisioned
* ForEachResource
* More consolidation
* Refactor more around client
* Consolidate constants
* ForEachFolder
* More use of constants
* Add FIXME notes
* Use more constant
* Remove Dashboard
* Pass tree to folder manager
* Replicate tree
* Reduce export complexity
* More refactoring
* Use the ForEach for loading users
* Limit in-memory folders
* Isolate the object
* Improve the export function
* Move resources to resources package
* Move delete operation
* Move more logic
* More consolidation
* More renaming
* Fix more issues
* Ensure path exists when created a resource
* Simply append error
* Fix receiver lint issue
* Fix cyclomatic complexity
* Fix linting
* Remove folder path creation
* Improve data source error message when stackID
* Update comment
* Revert "Update comment"
This reverts commit 48922bc552.
* Revert "Improve data source error message when stackID"
This reverts commit 4bf0a2f7b7.
* Make public messagic configurable based on context
* Update, simplify
* Update
* Update getting stack
* Update pkg/plugins/errors.go
Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
* Refactor test to test for when context has stack value
* Remove duplicated test
* Fix error checking logic
---------
Co-authored-by: Andres Martinez Gotor <andres.martinez@grafana.com>
* implement sorting
* swagger gen
* minor fixes
* clean up param reading
* add todo
* add errors only prop
* codegen stuff
* fix copy paste error
* forgot the api gen
* cleanup
* remove tests that are obe
* fix test
* Create ListByIdOrUID in user service
* create UnstructuredToLegacyFolderList
* update GetFolders to use list parser
* update GetDescendants to use list parser
* update UnstructuredToLegacyFolder to also make a single call to the user service
---------
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
* Tracing: chore: make insecure option configurable
In case of insecure set to false, default system cert pool will be used to create otlpgrpc client.
* test: add tracing/insecure config checks
This is to verify whether insecure configuration is properly parsed.
* chore: update configura Grafana docs with new setting
* chore: also update comment in the ini files
---------
Co-authored-by: Matheus Macabu <macabu.matheus@gmail.com>
* placeholder commit
* Complete function in api_convert_prometheus.go
* MVP before extensive testing
* Cleanup
* Updated tests
* cleanup
* Fix random logs and lint
* Remove comment
* Fix errors after rebase
* Update test
* Update swagger
* swagger
* Refactor to accept groups in body
* Fix auth tests and some cleanup
* Some cleanup before refactoring
* Remove unnecessary fields
* Also refactor RouteConvertPrometheusPostRuleGroup
* Remove unused code
* Rebase + cleanup
* Update authorization_test
* address comments
* Regen swagger files
* Remove namespace and group filters
* Final comments
* add column guid to alert rule table and rule_guid to rule version table
+ populate the new field with UUID
* update storage and domain models
* patch GUID
* ignore GUID in fingerprint tests
* get alert rule versions by GUID
* update rule delete to reset uid in history instead of deleting rows
* add test
* Update delete rule to require UserUID, remove all versions and create "delete" version
that holds information about who and when deleted the rule
* update usages of the delete method
* add list deleted rules to store
* list api to support deleted query parameter
* add list deleted rules to store
^ Conflicts:
^ pkg/services/ngalert/store/alert_rule_test.go
* list api to support deleted query parameter
* Restore deleted rules
* fix recovering manually recording rules
* update role control for the trash route
* add alertingRuleRecoverDeleted feature toggle enabled by default
* fix access control for trash menu item in the navtree
* Add alertingRuleRecoverDeleted feature toggle,
add Delete permanently alert rule menu option
* hide remove permanently functionality in the UI until we have the api available for it
* discard wrong changes after merging
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* Reverted changes in go.work.sum after fixing conflicts
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* Reverted changes in pkg/services/ngalert/models/alert_rule.go after fixing conflicts
* Reverted changes in pkg/apis/dashboard_manifest.go after fixing conflicts
* restore delete permanently and add the queryparam for it
* update snapshots
* fix translations
* protect trash route by the feature toggles
* use the new rulerRuleType for checks
* revert ability to delete permanently and alert rule from the ui
* remove unnecessary update after reverting
* fix ff
* add tracking
* use recently deleted instead of trash
* create isRecoverDeletedRulesEnabled for checking ffs
* address pr feedback 1
* include alert rule uid in getRowId
* use RulerGrafanaRulesConfigDTO for deleted rules response
* use isLoading in the AlertingPageWrapper
* fix wrong check for recording rules type
* add test for restoring manually through the alert rule form
* add test for restoring deleted rule
* use importAlertingComponent
* udpate mock
* address pr feedback
* update translations
* address feedback
* address feedback 2
* address feedback 3
* address feedback 4
* move transformation of the response to the endpoint
* fix typo
* refactor grafanaRuleDtoToFormValues
* update translations
* use guid for identifying rows
* prettier
* use ONLY the guid for identifying rows
* Add provides/invalidates tags for deleted rules
---------
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
We should not write after the context is cancelled. This causes tests to fail as they are trying to clean up. To try to
accommodate this, we'll need to listen to the context in any loop where we don't immediately get other instructions from
e.g. trying to do an HTTP request.