Commit Graph
9951 Commits
Author SHA1 Message Date
owensmallwood c45a342303 Unified Storage Dashboard Provisioning: Wait for deleted dashboards to be updated in the indexer (#102243)
* wait for deleted dashboards to be updated in the indexer

* updates comment

* adds test

* make function private

* fix failing test - had to add a couple more mock Search calls
2025-03-17 16:46:26 -06:00
Dominik Broj f7e0f095a2 Alerting: use 'Grafana IRM' wording in alerting contact point (#102014)
* chore: use 'Grafana IRM' wording in alerting contact point

* revert temp condition change

* remove unneeded ts assertion

* more renaming

* use translations

* update test

* running make i18n-extract

* avoid "simple" word in copy
2025-03-17 23:38:44 +02:00
ismail simsek 07024c9bac Prometheus: Enable prometheusRunQueriesInParallel feature toggle by default (#102127)
enable prometheusRunQueriesInParallel by default
2025-03-17 22:13:59 +01:00
Stephanie Hingtgen 6019b21cc5 K8s: Dashboards: Fix multi-org provisioning flow (#102266) 2025-03-17 20:20:03 +02:00
Ryan McKinley fd4e08e318 K8s/Dashboards: Remove slug annotation (#102270) 2025-03-17 19:01:29 +02:00
Ryan McKinley 261d7db0e6 Live: Update centrifuge and remove unreleased "gitops" (#102256) 2025-03-17 18:55:00 +02:00
Peter Štibraný 11552e5c57 Speed up truncation of Spanner tables (used in integration tests) (#102278)
Speed up truncation of Spanner tables.
2025-03-17 15:05:01 +01:00
Jean-Philippe Quéméner 1700a8aa9f feat(unified-storage): prune history table based on limits (#101970) 2025-03-17 11:36:38 +01:00
Timur Olzhabayev f2518a2c45 Chore: Promote pluginsDetailsRightPanel to private preview (#102211)
promote FeatureStagePrivatePreview to private preview
2025-03-17 10:49:51 +01:00
Ryan McKinley bb881f38bb K8s/Dashboards: Remove uid+version from spec (#101992) 2025-03-16 20:46:12 -05:00
Stephanie Hingtgen 5c24312625 Dashboards: Fix duplicate provisioning when errors occur on title-only based provisioning (#102249)
Dashboards: fix title based provisioning
2025-03-15 21:12:48 -06:00
Yuri Tseretyan 309a2eb4e9 Alerting: Allow administrators delete rules permanently via UI (#101974)
* add query parameter to existing APIs to control the permanent deletion of rules
* add GUID to gettable rule
* add new endpoint /ruler/grafana/api/v1/trash/rule/guid/{RuleGUID} to delete rules from trash permanently

---------

Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2025-03-14 22:14:06 +02:00
Yuri Tseretyan e30034a42a Alerting: Remove feature flag alertingNoDataErrorExecution (#102156)
* remove feature flag

* remove feature flag in state manager

* make sure no data with empty results is handled

Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>

---------

Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2025-03-14 14:51:58 -04:00
Tom Ratcliffe ef9dca9ea3 Alerting: Add UI migration feature toggle (#102217)
Add UI migration feature toggle
2025-03-14 17:40:05 +01:00
Josh Hunt bf172dfd29 GrafanaUI: Add noBackdropBlur feature toggle (#102128)
* Create new noBackdropBlur feature toggle

* Disable backdrop blur with feature toggle
2025-03-14 15:21:35 +00:00
Syerikjan Kh b3452ae720 feat: datasourceconnectionsTab to private preview (#102200) 2025-03-14 11:05:27 -04:00
Eric Leijonmarck 56c896fa72 Revert "Config: Removes setting viewers_can_edit (#101767)" (#102191)
This reverts commit d3a9c04562.
2025-03-14 13:39:59 +00:00
ismail simsek d72b664981 Feature toggle: Introduce infinityRunQueriesInParallel feature toggle (#102129)
introduce infinityRunQueriesInParallel feature toggle
2025-03-14 13:54:04 +01:00
Will Assis 2456eeb69b fix(unified-storage): Improve test coverage on legacy searcher and parse result helper (#102147)
* include TotalHits when searching for provisioning information and improve tests

* return err when parsing search results with mismatch number of columns and cells and add tests for it
2025-03-14 08:25:59 -04:00
Peter Štibraný 9330ca5b54 Remove unused SigningKey struct. (#102041) 2025-03-14 10:41:10 +01:00
Karl Persson f1e4706f79 Authn: Concurrent updates to last seen at (#102122)
* Use singleflight for last seen update

* Run last seen update in a signelflight
2025-03-14 10:17:42 +01:00
Peter Štibraný 8625a6c131 Export SpannerConnectorConfigToClientOptions function (used by grafana-enterprise). (#102106)
* Export SpannerConnectorConfigToClientOptions function (used by grafana-enterprise).
2025-03-14 10:07:24 +01:00
Eric Leijonmarck d3a9c04562 Config: Removes setting viewers_can_edit (#101767)
Reapply "Authz: Removes setting `viewers_can_edit`" (#101528)

This reverts commit 5f6b00a72f.
2025-03-14 08:38:48 +00:00
Alexander Akhmetov ef5cc12b33 Alerting: Add HMAC signature config to the webhook integration (#100960)
Adds HMAC-SHA256 signature support to webhook notifications, providing a way to verify the authenticity and integrity of webhook requests. The implementation allows to specify the header in which the signature will be sent. The signature is calculated from the request body.

An optional timestamp header name can be provided. If set, the HMAC signature will be generated by concatenating the timestamp, a ":" and the request body: {timestamp}:{body}. The timestamp will also be sent in the provided header name.
2025-03-14 07:22:41 +01:00
Nick Richmond ae7cba3268 MetricsDrilldown: Advance exploreMetricsUseExternalAppPlugin feature toggle stage (#102137)
* chore: advance `exploreMetricsUseExternalAppPlugin` feature toggle stage

* fix: do not hide from docs
2025-03-13 17:50:37 -04:00
Peter Štibraný 1068568814 Spanner: Fix query for limiting query history. (#102132) 2025-03-13 18:39:49 +02:00
Peter Štibraný 4d5fd2cfb7 Spanner: Fix queries for deleting query history. (#102125) 2025-03-13 17:13:43 +01:00
Ieva 9264431c81 RBAC: Remove action set feature toggle (#101959)
* remove action set feature toggle

* don't pass feature toggles to action set service instantiation

* linting

* test fixes and frontend clean-up

* fix test
2025-03-13 15:18:23 +00:00
Andres Martinez Gotor a9634f9b12 Advisor: Skip plugin check for provisioned plugins (#101782) 2025-03-13 15:04:08 +01:00
Karl Persson 5d94293305 Authz: Fix namespace authorization when calling a cluster resource (#102110) 2025-03-13 14:54:35 +01:00
Igor Suleymanov 5d2ba10113 K8s/Dashboards: Extract Dashboard APIs to an app submodule (#102029)
* Move dashboard k8s APIs to a separate app

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>

* Copy dashboard code in Dockerfile

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>

* Fix conversion generation

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>

* Update OpenAPI snapshot for dashboard/v0alpha1

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>

---------

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
2025-03-13 11:05:01 +02:00
Steve Simpson 87638c0170 Alerting: Start splitting apart ngalert/api package. (#102075) 2025-03-13 09:28:35 +01:00
bfedf0b512 Dashboard: Redirect between v1alpha1 and v2alpha1 depending on stored version (#101292)
* wip: Create a proxy state manager to avoid complexity

* Read path redirecting

* add tests for unified dashboard API

* add tests

* Contemplate both formats in DashboardProxy

* Fix force old

* Fix tests for proxy

* catch errors

* Save as V2 when dynamic dashboard is enabled

* Improve tests

* Remove feature toggle

* Use kubernetesDashboards for e2e suite

* Fix issue when loading snapshots

* Fix typescript errors

* Integrate with backend conversion error

* Remove legacy annotation

* fix snapshot loading; lint

* Add missing hideTimeControls

* fix test

* make setupDashboardAPI to all suites

* refactor getDashboardAPI

* Add tests

* fix DashboardScenePage tests

* fix tests

* fix go tests

* Refactor to understand better the need of transforming to v2 to compare

* Fix detect changes logic

* yes status from schema gen

---------

Co-authored-by: alexandra vargas <alexa1866@gmail.com>
Co-authored-by: Haris Rozajac <haris.rozajac12@gmail.com>
2025-03-12 11:43:32 -06:00
Eric Leijonmarck 94020aa9cd Config: Remove setting editors_can_admin (#101607)
* Remove editors can admin

* delete file

* add ac_test back

* Add linting ignore

* more static ignore
2025-03-12 16:25:23 +00:00
Peter Štibraný abe6a3121c spanner: disable recursive queries (#102032) 2025-03-12 15:43:06 +01:00
Peter Štibraný 9e1e338c5b signingkeys: Change PrivateKey struct type to string, to match TEXT type of SQL column in signing_keys table. (#102016) 2025-03-12 15:40:39 +01:00
Peter Štibraný f3df64b7f4 Pass BOOL values as real types (int/bool) instead of strings to SQL parameters. (#101961)
* Pass BOOL values as real types (int/bool) instead of strings to SQL parameters.

Fixes following integration tests when running with Spanner:
* TestIntegrationDataAccess
    * GetDataSourcesByType/Get_prunable_data_sources
* TestIntegrationUserAuthToken:
    * expires_correctly
    * can_properly_rotate_tokens
    *  keeps_prev_token_valid_for_1_minute_after_it_is_confirmed

* Fix more places where "true" or "false" string was passed as query parameter instead of bool value.

* Removed unit test because it brought unwanted dependencies on xorm into multiple modules.
2025-03-12 15:40:11 +01:00
Georges ChaudyandKarl Persson 1f637d07eb unistore: check namespace (#102020)
* check namespace in unistore

* fix tests

* fix trace status

* Use capital letter

---------

Co-authored-by: Karl Persson <23356117+kalleep@users.noreply.github.com>
2025-03-12 14:37:17 +01:00
Yulia Shanyrova 3f2eb087ea Plugins: Update all core plugins with raise issue and docs links (#101929)
* update all core plugins with raise issue and docs links

* fix plugin loader test, run prettier

* fix test

* update test results for api plugin tests
2025-03-12 14:15:46 +01:00
Will Browne 5a2cba7b01 Plugins: Forward HTTP headers to plugin streaming calls (#101960)
* forward HTTP headers to plugin streaming calls

* fixup

* fix test based on feedback

* improve test assertions
2025-03-12 10:37:07 +00:00
Peter Štibraný ee23a7a7d9 Disable dashboard and folder synchronization when running on Spanner. (#102007) 2025-03-12 11:02:00 +01:00
Alexander Akhmetov 7dd6f52630 Alerting: Add MissingSeriesEvalsToResolve option to the AlertRule (#101184) 2025-03-11 22:12:06 +01:00
Yuri Tseretyan 943b73a682 Alerting: Add scheduled clean-up of deleted rules (#101963)
* add scheduled clean up of deleted rules


---------

Signed-off-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com>
2025-03-11 22:58:26 +02:00
Alexander Akhmetov 85b0b47efd Alerting: Allow disabling provenance in the Prometheus conversion API (#101573)
When creating Grafana-managed alerts from Prometheus rule definitions with mimirtool or cortextool, the rules are marked as "provisioned" and are not editable in the Grafana UI. This PR allows changing this by providing an extra header: --extra-header="X-Disable-Provenance=true".

When provenance is disabled, we do not keep the original rule definition in YAML, so it is impossible to read it back using the Prometheus conversion API (mimirtool/cortextool). This is intentional because if we did keep it and the rule was later changed in the UI, its Prometheus YAML definition would no longer reflect the latest version of the alert rule, as it would be unchanged.
2025-03-11 19:53:28 +01:00
Yuri Tseretyan 7e4beb2074 Alerting: API to return deleted rules (#101429) 2025-03-11 12:40:44 -04:00
Alexander Zobnin f6f6ae4496 Zanzana: Update docs with subresources description (#101948)
* Zanzana: Update docs with subresources description

* clarify resource name
2025-03-11 16:27:17 +01:00
Matthew Thorning d9cb6e632d Navigation: Add the IsNew badge to the IRM menu item (#101926)
add the `IsNew` badge to the IRM menu item
2025-03-11 14:31:43 +00:00
Steve Simpson bbab62ce39 Alerting: Select remote write path dependent on metrics backend type. (#101891)
The remote write path differs based on whether the data source is actually
Prometheus, Mimir, Cortex, or an older version of Cortex. We do not want
users to have to specify the path, so this change determines the path as
best it can.

It may be in the future we have to make this configurable per-datasource
to cater for setups where it's impossible to determine the correct path.
2025-03-11 13:45:16 +01:00
maicon 927f7befd6 Unistore: Create default permissions through Folder APIServer (#101420)
* Unistore: Declare a new storage to set default folder permissions

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Remove the setting of default permissions from folder legacy storage

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Disable setting of folder permissions when Api Server is enabled

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Reverts grafana/grafana#100019

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Add unit test

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* check error on unit test

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Add unit test

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Remove unused fields

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Add unit tests for folder_storage

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Remove duplicated import

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

* Fix unit test

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-03-11 11:33:08 +00:00
Gabriel MABILLE c8f810b422 Authz: Check namespace is set in the context (#101723)
* Authz: Test List

* Anonymous case

* Cover rendering

* Authz: Check namespace is set in the context

* Explicitly request a namespace check in the storage functions

* Revert logic
2025-03-11 12:04:33 +01:00