Commit Graph

17405 Commits

Author SHA1 Message Date
Ryan McKinley
054e12b1ac FeatureToggles: Remove deprecated experimental apiserver (#111617) 2025-09-25 17:39:25 +03:00
Mihai Doarna
1e4358163b IAM: Implement delete in team API (#111367)
* implement delete in team API

* add unit tests for legacy sql

* add integration tests

* remove comment

* remove org_id from delete team sql command

* fetch team ID before deleting it
2025-09-25 14:55:54 +03:00
Ryan McKinley
7b1413ec54 Dashboards/search: improve openapi spec (#111575)
Co-authored-by: Clarity-89 <homes89@ukr.net>
2025-09-25 11:08:47 +00:00
maicon
991ac5b72e Fix folder parents getter max depth validation (#111568)
* Fix folder parents getter max depth validation

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

* Move max depth validation out of newParentsGetter

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

* Add tests

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

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-09-25 10:02:21 +03:00
Stephanie Hingtgen
9172daa3dd Provisioning: Allow viewers to view /status subresource and wait on the frontend before sync (#111576) 2025-09-24 22:37:55 +00:00
Ryan McKinley
a51d1b76b4 Dashboards: dependency cleanup (#111572) 2025-09-25 00:38:27 +03:00
Costa Alexoglou
0c0554da5e fix: avoid child paths in repositories (#111573)
* fix: avoid child paths in repositories

* add another unit test; fix linter

* Update pkg/registry/apis/provisioning/register.go

* skip itself

* fix: failing tests

---------

Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-09-24 21:35:06 +00:00
Stephanie Hingtgen
8c5ca9ca12 Folders: fix panic on move (#111551) 2025-09-24 10:21:34 -05:00
Peter Štibraný
357aa7d314 Improve search index eviction (#111542)
* Modify index eviction mechanism such that unowned indexes are also evicted.

* Propagate OwnsIndex function to bleve backend

Fix tests.

Stop eviction goroutine when stopping backend.

Make linter happy.

Make sure we stop backend created by tests.

Review suggestion.

Removed newline.
2025-09-24 16:54:35 +02:00
Ryan McKinley
a4dabc31ed Folders: let unified storage handle authorization (#110825) 2025-09-24 16:26:47 +03:00
Ryan McKinley
305dab3a54 Annotations: Exclude internal dashboard id when saved via UID (#111535) 2025-09-24 12:51:20 +00:00
Matheus Macabu
6c8ca56651 Plugins: Identify plugin ID when provisioning fails for any reason (#111543) 2025-09-24 14:05:43 +02:00
Gabriel MABILLE
a98870f8f9 Extsvcacc: Split permission scope (#111491)
* Extsvcacc: Split permission scope

* Fix integration test

* Trigger CI/CD pipeline

* Change extsvc permission comparing

* Recreate unsplit permissions
2025-09-24 13:25:44 +02:00
Gabriel MABILLE
b63ba0269f AuthZ: Recover from missing split scope (#111492)
* AuthZ: Recover from missing split scope

* Follow up changes

* Add test

* better log

* Add a comment to getScopeMap

* Punctuation
2025-09-24 13:24:21 +02:00
Ivan Ortega Alba
a72e02f88a Fix dashboard migration discrepancies between backend and frontend implementations (use toEqual) (#110268)
**Highlights**

* **Single-version migrations**: add `targetVersion` to migrator & model, separate outputs, enforce exact version.
* **Datasource fixes**: include `apiVersion` in tests, empty-string → `{}`, preserve `{}` refs, drop unwanted defaults.
* **Panel defaults & nesting**: only top-level panels get defaults; preserve empty `transformations` context-aware; filter repeated panels.

* **Migration parity**

  * V16: collapsed rows, grid height parsing (`px`).
  * V17: omit `maxPerRow` when `minSpan=1`.
  * V19–V20: cleanup defaults (`targetBlank`, style).
  * V23–V24: template vars + table panel consistency.
  * V28: full singlestat/stat parity, mappings & color.
  * V30–V36: threshold logic, empty refs, nested targets.
* **Save-model cleanup**: replicate frontend defaults/filtering, drop null IDs, metadata, unused props.
* **Testing**: unified suites, dev dashboards (v42), full unit coverage for major migrations.

Co-authored-by: Ivan Ortega [ivanortegaalba@gmail.com](mailto:ivanortegaalba@gmail.com)
Co-authored-by: Dominik Prokop [dominik.prokop@grafana.com](mailto:dominik.prokop@grafana.com)
2025-09-24 12:20:25 +02:00
owensmallwood
98fd3e8fe9 Unified Storage - Fix bug when cleaning up legacy on create (#111511)
fix bug - we should be calling s.store.Get() instead of s.Get(). Adds regression test.
2025-09-24 11:09:20 +01:00
Misi
54a347463e IAM: Use the new authorizer for the User resource (#111479)
* Use the new authorizer for the User resource

* Use accessClient

* Update pkg/services/authz/rbac/mapper.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2025-09-24 11:32:29 +02:00
Will Assis
33ff6dbb9e unified-storage: add feature flag to use ngram for indexing (#111265)
* unified-storage: add feature flag to use ngram instead of edge-ngram for indexing
2025-09-24 10:36:50 +02:00
Andres Torres
108697bb27 chore(deps): Backend - Adding puzpuzpuz/xsync/v4 (#111507) 2025-09-23 19:09:46 -04:00
Stephanie Hingtgen
c2b513a2b3 Dashboards: Cleanup folder client (#111510) 2025-09-23 16:54:52 -05:00
Stephanie Hingtgen
8caaf87584 Dashboards: Use folder client provider if folder client is nil (#111506) 2025-09-23 20:59:27 +00:00
Santiago
345b72227f Alert State History: Remove redundant JSON serialization when merging Loki streams (#111443) 2025-09-23 20:56:37 +02:00
Costa Alexoglou
8f77a3e0e8 chore: swap access check to folder client (#111490) 2025-09-23 11:40:10 -05:00
Ryan McKinley
a9de52c3e9 Folders: Build the same apiserver regardless of ST or MT (#111481) 2025-09-23 11:27:02 -05:00
Peter Štibraný
f062e5a85f Stop background tasks and when stopping bleve backend. (#111249)
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-09-23 18:04:49 +02:00
Ryan McKinley
9494175984 Folders: Use access checker for /access endpoint (#110745) 2025-09-23 15:35:26 +00:00
Austin Pond
bc0f746eed apiserver: Allow AppInstaller to Handle Custom Resource Routes (#111381)
[apiserver] Fix appinstaller.serverWrapper.RegisteredWebServices() to return the RegisteredWebServices from the underlying apiserver's Handler's GoRestfulContainer, matching the logic in grafana-app-sdk's apiserver.KubernetesGenericAPIServer
2025-09-23 10:32:03 -04:00
Ryan McKinley
94b82b0e5e Stars: Manage from apiserver (#111368) 2025-09-23 17:13:05 +03:00
Yuri Tseretyan
896a56ada8 Migrate Alerting Notifications API to app installer (#109309)
* migrate to new manifest format
* rename app to alerting.notifications to not conflict with rules
* disable custom field selectors as they are not supported in appinstaller
2025-09-23 09:42:40 -04:00
Ryan McKinley
6c5bd69f98 Folders: Improve integration tests (#111474) 2025-09-23 08:39:21 -05:00
Gábor Farkas
969eeb1d02 datasources: querier: deduplicate logging code (#111019) 2025-09-23 13:35:53 +02:00
Sven Grossmann
afcb6ac309 feat(investigations): add "Investigations" menu if loop enabled (#111462)
* feat(investigations): add "Investigations" menu if loop enabled

* feat(investigations): move to `shouldIncludeInvestigations`

* feat(investigations): add issue link
2025-09-23 13:24:10 +02:00
Ieva
cbbbcd591d Resource permissions: Make sure that list response includes the next page token (#111446)
make sure that list iterator returns a next page token
2025-09-23 10:16:41 +01:00
Stephanie Hingtgen
e53b5902fa Provisioning: Wire up tracing and add trace for job sync (#111455) 2025-09-22 22:23:29 -06:00
Stephanie Hingtgen
63e1d52663 Provisioning: Add metrics around webhooks (#111453) 2025-09-22 16:53:50 -05:00
Stephanie Hingtgen
8b1caccc72 Provisioning: Add metrics for repo controller (#111450) 2025-09-22 20:14:03 +00:00
Stephanie Hingtgen
a2d09490ae Provisioning: Allow setting concurrent jobs settings and add metric (#111451) 2025-09-22 20:07:22 +00:00
Stephanie Hingtgen
b02d2762f5 Provisioning: Add metrics to jobs (#111447) 2025-09-22 19:05:34 +00:00
Ryan McKinley
172e040065 Live: remove annotations.Repository (#111433) 2025-09-22 21:59:34 +03:00
Stephanie Hingtgen
bd550d2f06 Provisioning: Wire up prometheus (#111444) 2025-09-22 09:54:50 -05:00
Santiago
04bc71fa6d Alert State History: Skip invalid entries when merging streams (#111387) 2025-09-22 12:29:39 +02:00
maicon
b3ed600bca Revert "Unistore: Add validation for resource names" (#111408)
Revert "Unistore: Add validation for resource names (#110990)"

This reverts commit b63e3fd3ae.
2025-09-19 18:03:23 +00:00
Stephanie Hingtgen
6203a6f3c5 Provisioning: Allow non-loopback config (#111353) 2025-09-19 09:58:36 -05:00
colin-stuart
1ef27e9749 Auth: Add SCIM settings permission to auth config writer role (#111326)
* Auth: add SCIM settings permission to authentication config writer role

* make update-workspace
2025-09-19 09:55:18 -05:00
mohammad-hamid
db61acf513 grafana-iam: prevent duplicate permissions upon ResourcePermission create (#111361)
prevent duplicate permissions
2025-09-19 16:55:08 +02:00
Misi
c20fdbe39e IAM: Fix display_query.sql (#111388)
Fix
2025-09-19 14:09:28 +00:00
Yuri Tseretyan
f166968357 Alerting: Refactoring ConfigRevision methods (#111192)
* make validateReceiver private

* make functions and type alias private

* move EncryptedReceivers and DecryptedReceivers to notifier package

to reduce exposure of definitions package via legacy_storage

* return receivers with Grafana origin after create\update

* add tests for ConfigRevision methods
2025-09-19 09:46:35 -04:00
Ieva
b7bb62747a Resource permissions: Fix permission cleanup during resource permission update (#111317)
* fix permission cleanup during resource permission update

* fix template tests
2025-09-19 14:04:05 +01:00
Daniele Stefano Ferru
e69cc03ef9 Secret: add ability to configure extra owner decrypters (#111301)
---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-09-19 07:41:56 -05:00
maicon
b63e3fd3ae Unistore: Add validation for resource names (#110990)
* Unistore: Add validation for resource names

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

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-09-19 09:37:17 -03:00