Commit Graph
8460 Commits
Author SHA1 Message Date
Mariell Hoversholm 09ee1233cf Provisioning: Support rotating secrets (#100705) 2025-02-14 13:40:43 +01:00
Mariell Hoversholm 9b7b68195e Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-14 07:38:22 +01:00
Stephanie Hingtgen e2081c3e0c K8s: Fix legacy fallback provisioning (#100566) 2025-02-13 21:32:25 +02:00
Ryan McKinley e99c72cacc Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-13 21:22:26 +03:00
Georges Chaudy b58b5b5768 grpc: improve grpc logger (#100606)
use proper grpc logging
2025-02-13 17:39:33 +01:00
Will Assis 155492c8a5 search: handle "permission" query param in search (#100607)
handle "permission" query param in search
2025-02-13 11:35:53 -05:00
Gabriel MABILLE 90eb499b78 PublicDashboards: Fetch dashboard as Grafana (#100344) 2025-02-13 17:17:14 +01:00
Ryan McKinley e83f764da9 merge main 2025-02-13 18:17:00 +03:00
Yuri Tseretyan 9dd75aee32 Alerting: Refactor State Transition (part 2 of n) (#99985)
* split create to create and patch and move to state

patch will be refactored further

* move setNextState to state transition

* move tests

* split tests for patch function
2025-02-13 09:45:16 -05:00
Ryan McKinley ebeb0c67be merge main 2025-02-13 17:17:46 +03:00
Karl Persson be60ef0500 IDToken: cache invalidation (#100592)
* Make org role part of id token cache key. This way we will always sign a new token when it changes

* Remove calls to remove id token
2025-02-13 14:10:58 +01:00
Karl Perssonandgamab 1b1954de28 Authz: add support to use folder api to fetch folder tree (#100038)
* Add FolderStore interface

* Authz: add implementation to use folders api and use it inproc with loopback config

* Add tracing and add rest.Config for talking with folder api using access tokens

* Restructure test to get rid of circular dependencies in tests

* use correct group version kind

---------

Co-authored-by: gamab <gabriel.mabille@grafana.com>
2025-02-13 11:59:59 +01:00
Karl Persson 0b4c622df8 AuthN: Refetch user on "ErrUserAlreadyExists" (#100346)
* AuthN: Refetch user on "ErrUserAlreadyExists"
2025-02-13 11:27:57 +01:00
Mariell Hoversholm 158eebe45b Provisioning: Encrypt GitHub token (#100515)
* feat: new secrets impl

* fix: send interval as a number

* feat: use UUIDs for webhook secrets

* Provisioning: Encrypt GitHub token

* refactor: have a wrapping interface

* refactor: simplify decryption

* refactor: move encryption to mutation hook

* feat: use omitempty again

* feat: always decrypt

* chore: update comment to reality
2025-02-13 10:33:26 +01:00
Dominik SüßandMarcus Andersson 8a8e47fcea PluginExtensions: Added support for sharing functions (#98888)
* feat: add generic plugin extension functions

* updated betterer.

* Fixed type issues after sync with main.

* Remved extensions from datasource and panel.

* Added validation for extension function registry.

* Added tests and validation logic for function extensions registry.

* removed prop already existing on base.

* fixed lint error.

---------

Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2025-02-13 10:18:55 +01:00
Mariell Hoversholm dbc4031a2a Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-13 09:20:15 +01:00
Karl Persson df64dd0762 LibraryElements: Propagate service identity in context when searching for dashboards (#100220)
* Propagate service identity in context when searching for dashboards
2025-02-13 09:17:16 +01:00
Ryan McKinley f2911bdebb Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-13 09:45:28 +03:00
Sergej-Vlasov d1dee968c3 Schema V2: Adjust quick_ranges in time settings and remove time_options (#100135)
* adjut quickRanges type in v2

* clean up unused time_options property

* remove deprecated time_options property on time picker

* add schema migration for time_options

* adjust test
2025-02-12 19:23:09 +00:00
Alexander Akhmetov 3cc4320aa9 Alerting: Add rule conversion package (#100224) 2025-02-12 19:38:48 +02:00
Clarity-89 0f382ea04f Merge branch 'main' into grafana-git-ui-sync 2025-02-12 17:00:53 +02:00
Misi ee0a1391df Auth: Add OrgRole to ID token (#100383)
* Changes for Users and ServiceAccounts

* Align tests
2025-02-12 05:51:29 -08:00
Ryan McKinley befa028784 Storage: Add ManagedDualWriter mode (#100231) 2025-02-12 15:51:37 +03:00
Mariell Hoversholm 0910a0420e Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-12 08:32:26 +01:00
Alexander Akhmetov 9593e51da7 Alerting: conversion API structure (#100258) 2025-02-12 08:13:21 +01:00
Stephanie Hingtgen df84d928e2 K8s: Folders: Fix legacy search (#100393) 2025-02-11 13:14:25 -06:00
Ryan McKinley 459240e9a8 merge main 2025-02-11 21:01:39 +03:00
Ryan McKinley a5355fd66c Storage: Add command line tool to migrate legacy dashboards (and folders) to unified storage (#99199) 2025-02-11 19:57:46 +02:00
Yuri Tseretyan 28f21e0a0d Alerting: Do not record rule version if no difference (#100364) 2025-02-11 09:46:26 -05:00
Yuri Tseretyan 4cac3158c7 Alerting: Fix alert rule copy to include metadata (#100212)
* copy metadata

* add tests for copy and generator

* extract copy rule to a production method and update usages

* fix tests
2025-02-11 09:46:02 -05:00
Mariell Hoversholm 4cee0520e5 Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-11 14:42:49 +01:00
Alexander Zobnin 7234a17d1d Zanzana: Use authzService audience (#100417) 2025-02-11 14:25:30 +01:00
Alexander Zobnin 5118e82e8c Zanzana: Run reconciliation in its own service (#100361)
* Zanzana: Start reconciliation in its own service

* cleanup

* update go workspaces

* refactor

* remove unused code

* move func definition
2025-02-11 14:09:39 +01:00
Mariell Hoversholm 06e1c56d4f Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-11 12:49:04 +01:00
Karl PerssonandIevaVasiljeva bfa4fa3c68 Authz: Refactor folder tree (#99554)
* Refactor folder tree to its own structure

* Make it possible to json encode the tree

* Use iterations for Ancestors and Children

---------

Co-authored-by: IevaVasiljeva <ieva.vasiljeva@grafana.com>
2025-02-11 12:36:11 +01:00
Clarity-89 da4b2e1534 Merge branch 'main' into grafana-git-ui-sync
# Conflicts:
#	pkg/storage/unified/resource/go.sum
2025-02-11 07:33:55 +02:00
Moustafa Baiou 7dee4d1808 Alerting: Allow specifying uid for new rules added to groups (#99858)
When modifying rule groups the `uid` can be specified but only if the rule already existed in the DB. If the rule is new the update would be rejected.

This updates the RuleGroup provisioning apis to allow specifying the `uid` when creating/updating rule groups. 

Additionally, the RuleGroupIdx was not being updated when rules were reordered in the group.

Context: https://github.com/grafana/terraform-provider-grafana/pull/1971#issuecomment-2599223897
Relates to: https://github.com/grafana/terraform-provider-grafana/issues/1928

Fixes: #98283
2025-02-10 10:28:34 -05:00
Yuri Tseretyan 1b8db233a7 Alerting: Rule Version API to Ignore versions without diff (#100093) 2025-02-10 09:20:35 -05:00
Mariell Hoversholm f4fa66ae9c Provisioning: Reintroduce unauthenticated webhooks (#100336)
* Zanzana: Add Provisioning client

* Zanzana: Provisioning client should come late

* APIServer: Auth should let access policies through, falling back to API

* Zanzana: Use an Anonymous user to authenticate

* APIServer: Return earlier on anonymous users

* Zanzana: Align test with reality
2025-02-10 12:37:06 +01:00
Ryan McKinley 732e2aae45 Provisioning: Use hardcoded access token rather than random admin user (#100101) 2025-02-10 13:07:55 +03:00
Clarity-89 f57df9df99 Merge branch 'main' into grafana-git-ui-sync 2025-02-10 08:10:43 +02:00
Scott Lepper 378bb6ea3f [search] folder name lookup performance (#100154)
[search] use search for folder name lookup
2025-02-07 17:19:23 -05:00
Ryan McKinley 24cfb93ef6 Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-07 23:28:21 +03:00
Will Assis 7e11e604c7 [search] fix offset param in finddashboards (#100302)
* fix offset param in finddashboards

* separate offset from page in k8s search endponit
2025-02-07 13:24:27 -05:00
Will Assis 7c9f47ac67 [search] handle folderids query param (#100223)
handle folderids query param
2025-02-07 12:24:21 -05:00
Fayzal Ghantiwala 7ae8058c8b Alerting: Return 404 when /api/ruler/grafana/api/v1/rules/{Namespace}/{Groupname} does not exist (#100264)
* Return a 404 when rule group doesn't exist

* Update tests

* Update swagger doc and tests
2025-02-07 16:24:28 +00:00
Mariell Hoversholm bd261794b2 Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-07 15:39:00 +01:00
Torkel Ödegaard 9d7a4a53e4 Themes: Adds 1 more GrafanaCon theme (wip) (#100228)
* Themes: Gloom theme wip

* Themes: Gloom theme wip

* refactor

* A bit brown maybe?

* Update secondary to also be a bit brownish orangy

* Not super happy

* down a bit

* Progress

* Update

* Update

* orange primary again
2025-02-07 15:27:56 +01:00
Mariell Hoversholm 4d732cb005 Merge remote-tracking branch 'origin/main' into grafana-git-ui-sync 2025-02-07 14:14:54 +01:00
Giuseppe Guerra ccb9cab131 Plugins: Add synchronous CDN plugin loader (#99096)
* WIP

* Run plugin validations and validation steps sequentially if feature is off

* Remove dependency between sources.Service and pluginscdn.Service

* lint

* Parallelize validation only if class is CDN

* re-generate feature toggles

* remove waitgroup usage

* PR review: Add loader concurrency limit setting

* re-generate feature toggles

* pr review feedback

* fix const name

* Skip module.js validation for cdn plugins

* do not run validation steps in parallel

* lint

* reduce diff

* re-generate feature toggles

* lint

* pr review feedback

* remove leftover config.PluginManagementCfg from sources.Service
2025-02-07 11:07:08 +01:00