* Correctly encode default project response
* Make getGCEDefaultProject a method of Service and add test
* Handle error appropriately
* Update test and function definition
(cherry picked from commit ccb8888055)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
* grant data source reader to all users when running oss or enterprise
without license
* fix asserts in alerting tests
* add oss licensing service for test setup
* fix tests to pass in enterprise
* lint
* fix tests
* set setting.IsEnterprise flag for tests
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
(cherry picked from commit 1796a1d277)
* If GroupMemver.Read.All permissions is not configured return no groups
* fix log
(cherry picked from commit 624f8ef40d)
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
* Alerting: Fix access to alerts for viewer with editor permissions when RBAC is disabled (#49270)
* Add folder edit permission for users with Viewer role
* relax permissions required to create an alert when RBAC is disabled
(cherry picked from commit 3dfafbadef)
* fix backend conflict
* fixup
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
* introduce a fallback handler that checks that role is Viewer.
* update UI nav links to allow alerting tabs for anonymous user
* update rule api to check for Viewer role instead of SignedIn when RBAC is disabled
(cherry picked from commit f7f2253072)
* Update migration to migrate only alerts that belong to existing org\dashboard
(cherry picked from commit d87fdc1037)
Co-authored-by: Yuriy Tseretyan <yuriy.tseretyan@grafana.com>
* Use saved dashboard model to create library panel connections when importing
* Rename variables in dashboard import for clarity
(cherry picked from commit 71e1305364)
Co-authored-by: Josh Hunt <joshhunt@users.noreply.github.com>
* Alerting: Provisioning GET routes for mute timings (#49044)
* Define GET routes and run codegen
* Wire up forked and non-generated API
* Implement and wire
* Tests, authorization
* Fix linter error
(cherry picked from commit 9af30f6570)
* ErrorContains -> Error, then Contains
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
* Change dash permission check for dashboards that are moved to a different folder
(cherry picked from commit 6923b4c6c6)
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
* Alerting: Provisioning message templates (#48665)
* Generate API for writing templates
* Persist templates app logic layer
* Validate templates
* Extract logic, make set and delete methods
* Drop post route for templates
* Fix response details, wire up remainder of API
* Authorize routes
* Mirror some existing tests on new APIs
* Generate mock for prov store
* Wire up prov store mock, add tests using it
* Cover cases for both storage paths
* Add happy path tests and fix bugs if file contains no template section
* Normalize template content with define statement
* Tests for deletion
* Fix linter error
* Move provenance field to DTO
* empty commit
* ID to name
* Fix in auth too
(cherry picked from commit 0f56462fbe)
* ErrorContains -> Error then Contains
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
* AzureMonitor: Add support for not equals and startsWith operators when creating Azure Metrics dimension filters. (#48077)
* Allow dimension operator selection
- Add dimension operators and function to update the operator in the query
- Add logic to ensure the same dimension cannot be selected multiple times (Azure restriction)
- Add selection component
* Update backend logic to default operation and filter to eq '*'
- This must be done as the ne and sw operators do not work with the wildcard filter
* Add tests on dimension operators
* Correct placement of 'and' when building query
* Add comment and simplify filtering logic
* Allow multiSelect for eq and ne operators
- Pass PanelData to DimensionFields component
- Add logic to retrieve labels from PanelData
- Add MultiSelect component for relevant operators
- Update frontend types to allow filter to be an array of strings
- Update backend types to allow filter to be an array of strings
- Update filter string building
* Improve setting of labels
* Update go tests
* Update frontend tests
- Add panelData mock (to be expanded later)
- Update null check in DimensionFields
* Allow custom value and set default
* Add frontend test and fix lint issues
* Improved handling of options for sw operator
* Remove changes related to multiselect
* Add check on refId to ensure dimension labels are correct for query
* Extract custom hook for setting dimension labels
* Add documentation around Azure Monitor metrics dimensions
* Update MetricQueryEditor tests
- Add missing data prop
* Correctly set field values
* Add additional expect for onQueryChange
* Correctly set operators
- Simplify onFilterInputChange
* Ensure no duplicate filters appear
* Ensure that filters are displayed correctly for saved queries
* Update dimension filter test
* Include additional test around changing dimension labels
(cherry picked from commit d7c16e06d2)
# Conflicts:
# public/app/plugins/datasource/grafana-azure-monitor-datasource/components/MetricsQueryEditor/MetricsQueryEditor.test.tsx
# public/app/plugins/datasource/grafana-azure-monitor-datasource/components/NewMetricsQueryEditor/MetricsQueryEditor.test.tsx
# public/app/plugins/datasource/grafana-azure-monitor-datasource/components/NewMetricsQueryEditor/MetricsQueryEditor.tsx
# public/app/plugins/datasource/grafana-azure-monitor-datasource/components/QueryEditor/QueryEditor.tsx
* Update test for older testing-library version
* Alerting: add safeguard for migrations that might cause dataloss
* add test for panic
* add documentation
(cherry picked from commit 0a87ef06af)
Co-authored-by: Jean-Philippe Quéméner <JohnnyQQQQ@users.noreply.github.com>
* Get golang to find an open port for us
* Update pkg/tests/api/alerting/api_notification_channel_test.go
Co-authored-by: gotjosh <josue.abreu@gmail.com>
* Fix merge
Co-authored-by: gotjosh <josue.abreu@gmail.com>
(cherry picked from commit a96510d03c)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
* AzureAd Oauth: Fix strictMode to reject users without an assigned role
Signed-off-by: kyschouv <kyschouv@microsoft.com>
* AzureAd OAuth: Add test for strictMode auth when no role claims are returned
Signed-off-by: kyschouv <kyschouv@microsoft.com>
(cherry picked from commit 7b224adf9f)
Co-authored-by: Kyle Schouviller <kyschouv@microsoft.com>
* Alerting: Add provisioning GET routes for message templates (#48367)
* Template service
* Add GET routes and implement them
* Generate mock for persist layer
* Unit tests for reading templates
* Set up composition root and get integration tests working
* Fix prealloc issue
* Extract setup boilerplate
* Update AuthorizationTest
* Rebase and resolve
* Fix linter error
(cherry picked from commit 735822e48a)
* Avoid latest require features
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>