Commit Graph

989 Commits

Author SHA1 Message Date
Ieva
acbbfde256 AuthZ service: Expand the logic to also evaluate action sets (#112124)
* expand AuthZ service logic to also evaluate action sets

* handle folder creation

* fix test

* simplify mapper code

Co-authored-by: gamab <gabi.mabs@gmail.com>

* more accurate variable name Co-authored-by: gamab <gabi.mabs@gmail.com>

* break alerting import cycle

* Apply suggestion from @gamab

---------

Co-authored-by: gamab <gabi.mabs@gmail.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2025-10-08 13:37:12 +01:00
Ryan McKinley
13a3c46079 DataSource: Fix openapi spec (#112150) 2025-10-08 14:36:24 +03:00
beejeebus
c3f34efb41 Revert "Revert: DataSource: Support config CRUD from apiservers (#106996) (#110342)"
This reverts commit 72eeefabd7.
2025-10-07 14:31:07 -04:00
Yuri Tseretyan
7d1c6b6bd2 Alerting: Replace IntegrationConfig with IntegrationSchemaVersion (#112010)
* remove unused compat functions

* update to alerting module from pr

* replace IntegrationConfig with IntegrationSchemaVersion

* safely resolve a string into integration type

* change usages of integration config
2025-10-07 11:08:16 -04:00
Ryan McKinley
22b88988a4 Stars: include query history (#111979) 2025-10-06 21:08:10 +03:00
Ryan McKinley
2486dba881 Provisioning: use kind consistently for provisioning stats (#111977) 2025-10-04 09:02:02 -05:00
Austin Pond
99312a7582 Apps: Update grafana-app-sdk to v0.46.0 (#112021)
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-10-04 09:33:10 +00:00
Yuri Tseretyan
d0f79ee60d Alerting: Update alerting module + refactor (#111761)
* update alerting module
* replace compat with ones from alerting
* update type references Receiver and Integration to *Status
* update route in provisioning test that is invalid after recent change
* use right type for LINE ingtegration
2025-10-03 10:37:49 -04:00
Mihai Doarna
6d7c50f18d IAM: Refactor team bindings to store one pair of team and member (#111871)
* store one pair of team member in team bindings object

* generate queries for sql unit tests

* remove TeamBinding struct
2025-10-03 16:48:51 +03:00
Mihai Doarna
0f60e2208e IAM: Implement update method in team API (#111660)
* implement team update in legacy store

* add unit tests

* add integration test

* set permissions for user in integration tests

* add more integration tests for update

* update validations

* add unit tests for ValidateOnUpdate() func

* fix integration test
2025-10-03 12:48:38 +03:00
Ryan McKinley
13d9829836 Chore: Remove unused status element (#111963) 2025-10-02 20:15:39 +00:00
Ryan McKinley
0af6efb096 Preferences: Support Create+Update+Delete over apiserver (#111715) 2025-10-02 21:58:08 +03:00
Zoltán Bedi
7055a879ba PostgreSQL: Decouple plugin (#111620) 2025-10-02 14:12:47 +02:00
Will Assis
b26647e042 unified-storage: setup rollout-operator endpoint (#111768)
* implement endpoint so that storage/search api can prepare for downscale if enabled
2025-10-01 16:34:30 -04:00
Ryan McKinley
2f2289f226 Chore: Update authlib (foder as top level argument) (#111800) 2025-10-01 14:40:28 +00:00
Andreas Christou
ed7163a26f Graphite: Backend querying improvements (#111549) 2025-10-01 15:04:21 +02:00
Stephanie Hingtgen
96407ef46b Provisioning: Add integration test for RV conflicts (#111790) 2025-09-30 09:48:53 -05:00
Jean-Philippe Quéméner
4a229009ab fix(folders): allow to move folder to root (#111784) 2025-09-30 11:52:06 +03:00
Jean-Philippe Quéméner
d0e3e91b03 fix(folders): use namespace_uid for alert count (#111773) 2025-09-29 16:12:34 -05:00
Ryan McKinley
0a06183d84 Stars: support running stars in mode 5 (#111754) 2025-09-29 22:28:48 +03:00
Jean-Philippe Quéméner
d46e3d0e5a fix(dashboards): allow multiple types in search query (#111740) 2025-09-29 16:13:43 +02:00
Costa Alexoglou
1b766b9c9f Provisioning finalisers fix 2 (#111679)
* adding some logs to better understand what might be happening

* only focus this PR on improve logging in finalizer handling

* debug log before calling finalizers

* working on finalizers

* removing last todos, adding unit tests

* better use SupportedFinalizers name

* addressing comments

* wip: fix tests and add delete error in status

* chore: codegen

* chore: codegen openapi

* Merge remote-tracking branch 'origin/main' into provisioning-finalisers-fix-2

* update frontend client

* fix: errors in testing

* fix: breaking test

---------

Co-authored-by: Daniele Ferru <daniele.ferru@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-09-29 15:21:12 +02:00
Alexander Zobnin
893523dd7c grafana-iam: Wire RoleBindings APIs to OSS (#111728)
* Update role binding specs

* Wire role bindings APIs in OSS

* gofmt

* revert modules updates

* update specs

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

* update registration

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

* fix reader

* fix format

* add role bindings mapper

* remove namespace from subject spec

* fix formatting

* update api specs

* Fix role binding registration

* remove mapper

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2025-09-29 14:28:12 +02:00
Ryan McKinley
c4a2bb5540 Search: Include managedBy in DashboardHit result (#111600) 2025-09-29 14:28:26 +03:00
Stephanie Hingtgen
e01e61a156 Trash: Keep provisioned objects out of the trash (#111714) 2025-09-28 20:33:57 +00:00
Ryan McKinley
82bcfba64b Preferences: refactor experimental apiserver and improve tests (#111596) 2025-09-26 19:44:02 +00:00
Yuri Tseretyan
b8f23eacd4 Alerting: Migrate to integration schema (#111643)
* update tests to assert against snapshot
* remove channel_config package replaced by schemas from alerting module
* update  references to use new schema
2025-09-26 09:31:50 -04:00
Costa Alexoglou
31ae013e8d chore: add validations to test endpoint (#111622)
* chore: add validations to test endpoint

* Validate path

---------

Co-authored-by: Clarity-89 <homes89@ukr.net>
2025-09-25 15:10:13 +00: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
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
Ryan McKinley
a4dabc31ed Folders: let unified storage handle authorization (#110825) 2025-09-24 16:26:47 +03: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
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
Stephanie Hingtgen
15ee224da5 Provisioning: Allow disabling of image rendering instance wide (#111359) 2025-09-19 12:40:14 +03:00
Misi
c012a95fa1 IAM: Add role to User (#111256)
* codegen fix

* Return user role from the legacy store

* Lint

* Add tests, gen openapi

* make generate

* revert go.mod, go.sum, go.work.sum changes

* Update go.mod and go.sum
2025-09-19 11:12:00 +02:00
Stephanie Hingtgen
cb11bc15fa Provisioning: Allow disabling of instance sync (#111270)
---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2025-09-18 10:40:02 -05:00
Mihai Turdean
aaa8094a53 Add more metrics to the IAM Folder Reconciler (#111275)
* Add more metrics to the operator

* Add namespace when logging metrics

* Skip flaky test
2025-09-18 09:03:32 -06:00
Ryan McKinley
9743e0c903 DualWriter: Error when folder+dashboard modes do not match when running mode4+ (#111286) 2025-09-18 16:43:39 +03:00
Mihai Doarna
9d9dca3208 IAM: Adds the team creation endpoint in app platform (#111003)
* implement team creation for legacy store

* add generated code

* add basic integration test

* add new fields to get and list teams

* fix sql tests for teams

* register dual writer for team resource

* add generated code

* add more sql tests for team creation

* address feedback

* add integration tests
2025-09-18 14:43:07 +03:00
Stephanie Hingtgen
90371c16c1 Folders: Add in mode3 tests (#111276) 2025-09-17 22:33:52 -03:00
Ryan McKinley
14b6e60f31 Folders: Add better integration tests (#111241) 2025-09-17 20:19:50 +03:00
Stephanie Hingtgen
91008cc82e Provisioning: Fix cleanup (#111257) 2025-09-17 10:11:25 -05:00
Stephanie Hingtgen
ef0ed52ba7 Provisioning: Skip test while being looked at (#111254) 2025-09-17 14:46:19 +00:00
Stephanie Hingtgen
163b9007a7 Provisioning: Fix flaky tests and race condition in folder existing check (#111209)
Provisioning: Fix some of the flakiness
2025-09-17 08:37:10 -05:00
Yuri Tseretyan
c36b2ae191 Alerting: v0 schema for integrations (mimir) (#110908)
* generate schema for mimir integrations from schema on front-end
* review and fix the settings
* Update GetAvailableNotifiersV2 to return mimir as v0
* add version argument to GetSecretKeysForContactPointType
* update TestGetSecretKeysForContactPointType to include v0
* add type alias field to contain alternate types that different from Grafana's
* add support for msteamsv2
* update ConfigForIntegrationType to look for alternate type
* update IntegrationConfigFromType to use new result of ConfigForIntegrationType
* add reference to parent plugin to NotifierPluginVersion to allow getting plugin type by it's alias
* add tests to ensure consistency
* make API response stable
* add tests against snapshot + omit optional fields
2025-09-17 09:25:56 -04:00
Stephanie Hingtgen
d451cb6dcc Provisioning: Skip another flaky test (#111198) 2025-09-16 19:28:59 +00:00