Commit Graph

17575 Commits

Author SHA1 Message Date
Georges Chaudy 3bb75e2a90 kvstore: Add BatchGet (#111594)
* Add BatchGet

* restructure the batch get tests
2025-10-14 17:19:26 +02:00
Will Browne ab4bacbead Plugins: Pass image tag separately for plugin container mode (#112344)
propagate tag
2025-10-14 15:25:04 +01:00
Mihai Doarna 7395f803c1 IAM: Implement create method for team bindings (#112003)
* implement create method for team bindings

* generate openapi specs

* enable dual writer for team bindings

* add validation rules

* generate openapi

* add integration tests and fix remaining issues

* fix validation test

* use UIDs instead of IDs to build team binding name

* use IDs when generating the TeamBinding name

* fix build error

* remove time truncate
2025-10-14 17:20:59 +03:00
Ieva aeb041a9af Folder permissions: Remove default creator can Admin permissions for folders (#111984)
* Remove default creator can Admin permissions for folders

* Actually, we only need to set permissions for root level folders

* Put back creator permission

* linting

* use FT for assessing what permissions to set

* fix tests
2025-10-14 14:54:19 +01:00
Jay Clifford c9f402c764 Plugins: Install Grafana Pathfinder behind a feature flag (#109909)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2025-10-14 11:40:40 +01:00
Matheus Macabu db5b275ed4 Go: Update to 1.25.3 (#112359) 2025-10-14 12:21:27 +02:00
Georges Chaudy 616de7b566 Fix kvstore wire (#111827) 2025-10-14 11:30:07 +02:00
Mariell Hoversholm 16502532e1 Chore: Update Redis library to v9 (#112115) 2025-10-14 10:36:53 +02:00
Matheus Macabu 9a2a314dc9 E2E: Use standalone Image Renderer for tests instead of plugin (#112266)
* E2E: Use standalone Image Renderer for tests instead of plugin

* E2E: Allow configuring image renderer version if needed
2025-10-14 09:21:54 +02:00
Gabriel MABILLE 0e34164329 grafana-iam: Populate Zanzana on resource permission creation (#111654)
* `grafana-iam`: Populate Zanzana on resource permission creation

* use zanzana const

* Adding a toggle

* Add a new feature toggle to manage zanzana sync

* wire

* wire

* WIP

* Fix hook issue

* comments and tests

* Account for PR feedback

* Add a timeout to writes

* Check tuples len

* comment

* validate basic role

* shorter error

* object reads better than entry
2025-10-13 21:37:13 +02:00
Tania 5e0af5f57c OpenFeature: Add logs to MTFF namespace validation (#112331) 2025-10-13 16:33:03 +02:00
Will Browne e109763f21 Plugins: Add metric for tracking plugin asset info (#112322)
* add metric for tracking plugin asset info

* make check more specific

* check host instead
2025-10-13 14:42:32 +01:00
Josh Hunt ea25b75966 Faro: Update configuration with best practices (#112108)
* Clean up faro configuration to align with best practices

* Update grafana docs

* remove fixme comment

* fix tests

* don't spread config in
2025-10-13 13:46:29 +01:00
Peter Štibraný f823e09e17 Pass parseTime=true parameter to mysql driver (#112320)
* Pass parseTime=true parameter to mysql driver

* Fix tests.
2025-10-13 12:29:07 +02:00
Misi bd1dbb68ba IAM: Add the implementation of the Update User API (#112054)
* wip

* Add validate, wire mutate, add tests

* Address copilot's feedback

* Address feedback
2025-10-13 10:00:18 +02:00
Matt Cowley 85174e3313 Dashboards: Add restricted extension point for empty state (#111788)
* Dashboards: Add restricted extension point for empty state

* FeatureToggles: Regenerate files with new toggle

* Dashboards: Pass default empty UI as component, not children

* Dashboards: Expose hooks for empty state methods to extensions

* Dashboards: Move empty state button hooks to dedicated file

* Dashboards: Render loader while empty state plugin components loading

* Dashboards: Pass empty state default UI as method

* Dashboards: De-duplicate hook usages in empty state

* Dashboards: De-duplicate read-only repo check in empty state
2025-10-13 09:03:13 +02:00
Stephanie Hingtgen bd7872c4d9 Dashboard History: Fix service account parsing (#112300) 2025-10-10 15:25:00 -05:00
maicon a75b01907d Log TLS handshake EOF error as DEBUG instead INFO (#112294)
* Log TLS handshake EOF error as DEBUG instead INFO

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

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-10-10 17:23:45 -03:00
Ryan McKinley f1e456eb01 Provisioning: Watch file system for changes (#112184)
* trigger sync on any change

* better comments

* add deletes to test

* Update apps/provisioning/pkg/repository/local/watch.go

* Update pkg/services/provisioning/dashboards/file_reader.go

* Update apps/provisioning/pkg/repository/local/watch.go

---------

Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
2025-10-10 17:26:59 +00:00
Stephanie Hingtgen 7a26d48e88 Grafana controllers: Add generic disable setting (#112250) 2025-10-10 17:21:10 +00:00
Todd Treece 180d7adb37 Revert "Nav: Update Observability section nav to phase 2 (#109347)" (#112292) 2025-10-10 15:49:43 +00:00
Carl Bergquist b2036088ac Scopes: Remove promql rewrite feature toggle (#112035)
Signed-off-by: bergquist <carl.bergquist@gmail.com>
Co-authored-by: Tobias Skarhed <tobias.skarhed@gmail.com>
2025-10-10 16:53:18 +02:00
Josh Hunt c9fafc270e Make frontend-service settings overwrite those that come from /bootdata (#112268) 2025-10-10 14:11:37 +00:00
Zoltán Bedi 5e8267fcf8 PostgreSQL: Read postgresDSUsePGX from config (#112170)
* PostgreSQL: Read `postgresDSUsePGX` from config

* Update plugins_test
2025-10-10 15:55:55 +02:00
Todd Treece 89da0bf178 Access Control: Fix plugin async install role registration (#112123) 2025-10-10 09:44:02 -04:00
Ryan McKinley fdccc3e33c Dashboards/API: Keep original when conversion fails (#109912)
* keep original

* openapi

* update tests

* workspace

* workspace

* fix ts

* merge main

* update snapshots
2025-10-10 15:37:32 +03:00
Jack Baldry 09a3498552 Open Grafana Pathfinder instead of the help menu if its installed (#110592)
* Link to Grafana Pathfinder if available

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* refactor: `getComponentIdFromComponentMeta()` only receives the title

* Making sure we pass helpNode without Parents to the pathfinder app.

* minor refactoring to isolate the code.

* Fix tests

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* cleaned up the structure and exposing the helpNavItem via a hook

* added missing files.

* Add support for old and new pathfinder IDs

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

* Rename hook for consistency

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>

---------

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Levente Balogh <balogh.levente.hu@gmail.com>
Co-authored-by: Marcus Andersson <marcus.andersson@grafana.com>
2025-10-10 14:23:23 +02:00
Sergej-Vlasov b5613b3724 Dashboard: Limit panel grouping depth (#112216) 2025-10-10 15:15:54 +03:00
Tania 21e26aefdb OpenFeature: Add context attributes to frontend settings (#112105)
* Update targeting key to namespace

* Pass eval ctx attributes to frontend

* Add context config to the frontend

* Fix OF namespace not defined in e2e tests

* Set default namespace and targeting key

* remove e2e server config now that namespace is default

---------

Co-authored-by: joshhunt <josh.hunt@grafana.com>
2025-10-10 13:43:24 +02:00
Andreas Christou fa9d6be255 Azure: Use SSO settings in plugin context (#112058)
* Bump grafana-azure-sdk-go

* Set override values

* Add Azure settings helper covering SSO cases

* Ensure Azure settings are correctly created

- Add mock for sso settings service
- Add tests
- Update wire

* Minor improvements

* Test updates

* Move fake implementation

* add interface to limit leakage

* rename

* work sync

* Fix wire

* Add fake provider

* Update tests

* Actually fix the workspace

* More go dependency fixes

* Update tests

* Update workspace, again

* Add missing tests

* Fix dependencies

* These dependencies..

* More dependency things

* Okay now dependencies really are fixed

* Lint

* Update pkg/services/pluginsintegration/pluginconfig/request.go

Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>

---------

Co-authored-by: Will Browne <wbrowne@tcd.ie>
Co-authored-by: Misi <mgyongyosi@users.noreply.github.com>
2025-10-10 11:46:26 +01:00
Will Browne 59459560c2 Chore: Remove reference to image renderer plugin in renderer not found log message (#112264) 2025-10-10 12:17:18 +02:00
Will Browne 69f788ad55 Plugins: Remove pluginAssetProvider feature toggle (#112046)
* remove toggle

* fix lint issue
2025-10-10 10:35:22 +01:00
Gabriel MABILLE 267848063d AuthZService: Add a metric to count folder app requests (#112258) 2025-10-10 11:07:02 +02:00
Ashley Harrison f2bb7cec40 Frontend service: add empty health route (#112212)
* add empty health route to frontend-service

* add OK response

* add test

* handle error case
2025-10-10 10:00:30 +01:00
Ryan McKinley 6af50482a1 Chore: CleanupTestDB in unifed storage tests (#112223) 2025-10-09 22:22:59 +03:00
Jean-Philippe Quéméner e6e58c3a56 fix: implement ColumnCheckSQL to make AddColumn idempotent (#112227)
SQLite dialect now checks column existence via PRAGMA table_info, enabling
IfColumnNotExistsCondition to work correctly. Previously, BaseDialect returned
empty SQL, so AddColumn ran unconditionally and could fail with
“duplicate column name” under parallel CI runs.

- Prevents duplicate-column errors in SQLite migrations (e.g. unified storage
  adding previous_resource_version) when migration locking/logging don’t serialize
  execution.
- No change for other dialects.
2025-10-09 22:17:50 +03:00
owensmallwood 1f7f3c9a5a Unified Storage: KVStore use new validation (#110834)
* name field must match either k8s regex or grafana legacy uid regex. Adds tests.

* moves invalid test to being valid

* uses new US naming validation for kv store validation

* fix function name and update key regex

* fix comment

* use correct errs var

* updates kv key tests
2025-10-09 11:25:39 -06:00
Peter Štibraný d61abe95ad unified-storage: Rebuild indexes with recently-imported resources (#112202)
* Use timestamps reported via GetResourceLastImportTimes to trigger index rebuilds.

* Add test for old last import time.

* Don't reindex after bulk-import. It is now done indirectly via LastImportTime on all instances that own the index.
2025-10-09 16:42:02 +02:00
Ryan McKinley 7ceb4b90f6 Chore: Remove library panel thema (#112154) 2025-10-09 09:38:52 -03:00
Levente Balogh 3658b1fce7 Dashboards: Add a new variable type called "Switch" (#111366)
* feat: add schema changes for a switch type of dashboard variable

* fix: generated go

* feat: add support for a switch type of dashboard variable

* chore: update `@grafana/scenes` to a canary version

* feat: add variable editor for the switch variable

* fix: remove unnecessary jest config change

* chore: remove commented out code
2025-10-09 12:08:55 +00:00
Peter Štibraný d801b87db9 LastImportTime for resource. (#112153)
* LastImportTime for resource.

* Make StorageBackendImpl implement GetResourceLastImportTimes

* More missing implementations of GetResourceLastImportTimes

* Fix import.

* Skip TestGetResourceLastImportTime in TestBadgerKVStorageBackend.

* Implement GetResourceLastImportTimes by mockStorageBackend

* Bump test tolerance.

* Fix postgres query and timezone.

* Fix postgres query and timezone.

* Make linter happy.
2025-10-09 11:27:11 +02:00
Matheus Macabu 3ad54c0c1e Scopes: Remove all duplicated types for single source of truth (#112100)
* apimachinery: Remove unused scope types

* tsdb/loki: use scope types from apps/scope

* promlib: use scope types from apps/scope
2025-10-09 10:56:12 +02:00
Gabriel MABILLE f4cd46504b AuthZ: Add if user is allowed to the span attribute (#112197)
* `AuthZ`: Add if user is allowed to the span attribute

* Suggestiong
2025-10-09 10:49:50 +02:00
Gabriel MABILLE 1cbe7c8848 AuthZ: log incomplete folder tree (#112151) 2025-10-08 21:41:44 +02:00
Peter Štibraný 3c6768460c Remove unused index_max_batch_size option to bleve backend. (#112171)
* Remove unused index_max_batch_size option to bleve backend.

* Remove batchSize argument.
2025-10-08 17:04:38 +02:00
Mihai Doarna 3f40947cd6 IAM: Add a local cache for the SSO settings service (#112152)
* add a local cache for the SSO settings service

* add unit tests for GetForProviderFromCache() func

* append sso settings on update if not found
2025-10-08 18:04:24 +03:00
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
Stephanie Hingtgen 53180d5a39 Dashboards: Add validation for manager property on parent folder (#112146) 2025-10-08 12:13:36 +00:00
Ryan McKinley 13a3c46079 DataSource: Fix openapi spec (#112150) 2025-10-08 14:36:24 +03:00
Stephanie Hingtgen 047c51be01 Provisioning: Do full sync on resync period when needed (#112144) 2025-10-08 05:25:57 -06:00