colin-stuart
5156177079
SCIM: show error if SCIM-provisioned user attempts login with non-SAML auth module ( #115271 )
2025-12-12 13:51:37 -06:00
Renato Costa
c73cab8eef
chore: add cleanup task for duplicated provisioned dashboards ( #115103 )
...
* chore: add cleanup task for duplicated provisioned dashboards
2025-12-12 13:56:47 -05:00
Alexander Zobnin
629570926d
Zanzana: Fix resource translation for dashboards ( #115077 )
2025-12-12 11:05:10 -06:00
Will Assis
1b59c82b74
Revert "Unified-storage: sql backend key path backfill ( #115033 )" ( #115257 )
...
This reverts commit b2dd095bd8 .
2025-12-12 17:00:08 +00:00
William Wernert
5f80a29a28
Alerting: Prevent users from saving rules to git-synced folders ( #114944 )
...
---------
Co-authored-by: Yuri Tseretyan <yuriy.tseretyan@grafana.com >
2025-12-12 15:25:08 +00:00
Gonzalo Trigueros Manzanas
d4a627c5fc
Provisioning: Add resource-level warning support. ( #115023 )
2025-12-12 15:59:45 +01:00
Serge Zaitsev
6ce672dd00
Chore: Fix mysql query for annotation migration ( #115222 )
...
fix mysql query for annotation migration
2025-12-12 15:37:43 +01:00
Matheus Macabu
403f4d41de
APIServer: Add wiring for audit backend and policy rule evaluator ( #115212 )
2025-12-12 15:17:44 +01:00
Will Assis
b2dd095bd8
Unified-storage: sql backend key path backfill ( #115033 )
...
* unified-storage: add migration to backfill key_path in resource_history
2025-12-12 08:09:51 -05:00
Charandas
e525b529a8
fix: Add panic for nil authorizer in installer ( #115186 )
2025-12-12 05:01:03 -08:00
beejeebus
9a4e13800d
Guard config CRUD metrics so it's safe for grafana-enterprise
...
Previous attempt to land this required this PR and a grafana-enterprise
PR to land at the ~same time.
This PR guards the use of `dsConfigHandlerRequestsDuration` with a nil
check, and doesn't change any existing APIs, so we can land it without
any timing issues with grafana-enterprise.
Once this has landed, we'll make a follow-up PR for grafana-enterprise.
2025-12-12 07:21:29 -05:00
Roberto Jiménez Sánchez
b863acab05
Provisioning: Fix race condition causing unhealthy repository message to be lost ( #115150 )
...
* Fix race condition causing unhealthy repository message to be lost
This commit fixes a race condition in the provisioning repository controller
where the "Repository is unhealthy" message in the sync status could be lost
due to status updates being based on stale repository objects.
## Problem
The issue occurred in the `process` function when:
1. Repository object was fetched from cache with old status
2. `RefreshHealth` immediately patched the health status to "unhealthy"
3. `determineSyncStatusOps` used the stale object to check if unhealthy
message was already set
4. A second patch operation based on stale data would overwrite the
health status update
## Solution
Introduced `RefreshHealthWithPatchOps` method that returns patch operations
instead of immediately applying them. This allows batching all status updates
(health + sync) into a single atomic patch operation, eliminating the race
condition.
## Changes
- Added `HealthCheckerInterface` for better testability
- Added `RefreshHealthWithPatchOps` method to return patch ops without applying
- Updated `process` function to batch health and sync status updates
- Added comprehensive unit tests for the fix
Fixes the issue where unhealthy repositories don't show the "Repository is
unhealthy" message in their sync status.
* Fix staticcheck lint error: remove unnecessary nil check for slice
2025-12-12 13:24:58 +02:00
Gabriel MABILLE
478ae15f0e
grafana-iam: Use parent folder to authorize ResourcePermissions (#115008 )
...
* `grafana-iam`: Fetch target parent folder
* WIP add different ParentProviders
* Add version
* Move code to a different file
* Instantiate resourceParentProvider
* same import name
* imports
* Add tests
* Remove unecessary test
* forgot wire
* WIP integration tests
* Add test to cover list
* Fix caching problem in integration tests
* comments
* Logger and comments
* Add lazy creation and caching
* Instantiate clients only once
* Rerun wire gen
2025-12-12 11:43:12 +01:00
Gareth
169ffc15c6
OpenTSDB: Run suggest queries through the data source backend ( #114990 )
...
* OpenTSDB: Run suggest queries through the data source backend
* use mux
2025-12-12 18:36:52 +09:00
Steve Simpson
b407f0062d
Alerting: Add an authorizer to the historian app ( #115188 )
...
historian: add an authorizer
Co-authored-by: Charandas Batra <charandas.batra@grafana.com >
2025-12-11 23:34:37 +00:00
Andres Torres
652b4f2fab
fix(setting): Add default scheme to handle k8s api errors ( #115177 )
2025-12-11 20:12:25 +00:00
Misi
0c264b7a5f
IAM: Add user search endpoint ( #114542 )
...
* wip: initial changes, api registration
* wip
* LegacySearch working with sorting
* Revert mapper change for now
* Clean up
* Cleanup, add integration tests
* Improve tests
* OpenAPI def regen
* Use wildcard search, fix lastSeenAt handling, add lastSeenAtAge
* Add missing files
* Fix merge
* Fixes
* Add tests, regen openapi def
* Address feedback
* Address feedback batch 2
* Chores
* regen openapidef
* Address feedback
* Add tests for paging
* gen apis
* Revert go.mod, go.sum. go.work.sum
* Fix + remove extra tracer parameter
2025-12-11 19:54:48 +01:00
Ashley Harrison
d83b216a32
FS: Fix rendering of public dashboards in MT frontend service ( #115162 )
...
* pass publicDashboardAccessToken to ST backend via bootdata
* slightly cleaner
* slightly tidy up go templating
* add HandleView middleware
2025-12-11 17:56:40 +00:00
Andres Torres
5d7b9c5050
fix(setting): Replacing dynamic client to reduce memory footprint ( #115125 )
2025-12-11 10:24:01 -05:00
Alexander Akhmetov
73bcfbcc74
Alerting: Collate alert_rule.namespace_uid column as binary ( #115152 )
...
Alerting: Collate namespace_uid column as binary
2025-12-11 16:05:13 +01:00
Andres Martinez Gotor
e6b5ece559
Plugins Preinstall: Fix URL parsing when includes basic auth ( #115143 )
...
Preinstall: Fix URL setting when includes basic auth
2025-12-11 13:38:02 +01:00
Ryan McKinley
9bec62a080
Live: simplify dependencies ( #115130 )
2025-12-11 13:37:45 +03:00
Roberto Jiménez Sánchez
7fe3214f16
Provisioning: Add fieldSelector regression tests for Repository and Jobs ( #115135 )
2025-12-11 13:36:01 +03:00
Alexander Zobnin
e2d12f4cce
Zanzana: Refactor remote client initialization ( #114142 )
...
* Zanzana: Refactor remote client
* rename config field URL to Addr
* Instrument grpc queries
* fix duplicated field
2025-12-11 10:55:12 +01:00
Alexander Akhmetov
439d2c806c
Alerting: Add folder_uid label to the grafana_alerting_rule_group_rules metric ( #115129 )
2025-12-11 09:30:55 +01:00
Ryan McKinley
d686a49cf7
Preferences: Enable preferences APIserver ( #115128 )
2025-12-11 09:33:13 +02:00
Stephanie Hingtgen
5ca221743f
Dashboards: Prevent query for ID 0; improve logging ( #115120 )
2025-12-11 00:02:52 -07:00
Ryan McKinley
2fc1210b38
Stars: Enable the collections apiserver ( #115076 )
2025-12-11 06:36:09 +00:00
Ryan McKinley
8542b2f6a2
Live: Move dashboard events from the raw http server to the apiserver ( #115066 )
2025-12-11 09:26:35 +03:00
Ryan McKinley
a6043deb33
UnifiedStorage: Include RV when fieldSelectors are processed in the backend ( #115110 )
2025-12-11 09:15:01 +03:00
Charandas
3a4022061d
K8s: discourage nil authorizer return for APIBuilder as well ( #115116 )
2025-12-10 23:06:09 +00:00
beejeebus
2a65e0cdcb
Revert "Wire up data source config metrics correctly"
...
This reverts commit e433cfa02d .
2025-12-10 17:38:00 -05:00
beejeebus
e433cfa02d
Wire up data source config metrics correctly
...
Fix metrics for data source configuration CRUD.
Make sure to only create one histogram and only register it with prometheus once.
2025-12-10 16:16:22 -05:00
Will Assis
30045c02c0
unified-storage: add index on resource_history key_path column ( #115113 )
2025-12-10 16:03:58 -05:00
Charandas
da14be859e
Authorization: panic when specific authorizer returns nil ( #114982 )
2025-12-10 13:01:34 -08:00
Alexander Akhmetov
a46f0a222e
Alerting: Initialize rule routine with initial alert rule fingerprint ( #114979 )
...
Alerting: Initialize rule routine with initial fingerprint
2025-12-10 19:14:30 +01:00
Gábor Farkas
a847f36df2
datasources: querier: log caller ( #115087 )
2025-12-10 18:23:59 +01:00
Gabriel MABILLE
9e1fe16873
AuthZ: Remove automatic Admin grant for root folders and dashboards (#115098 )
2025-12-10 10:00:24 -07:00
Tania
3ec1c27ad4
Chore: Migrate pluginsAutoUpdate flag to OpenFeature ( #114404 )
...
* Chore: Migrate pluginsAutoUpdate flag to OpenFeature
* Update workspace
* fixup! Chore: Migrate pluginsAutoUpdate flag to OpenFeature
* Add a test
* Refactor
* Apply suggestion from @hairyhenderson
Co-authored-by: Dave Henderson <dave.henderson@grafana.com >
* Apply suggestions
* Update pkg/services/updatemanager/plugins_test.go
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com >
* Reorder code blocks
---------
Co-authored-by: Dave Henderson <dave.henderson@grafana.com >
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com >
2025-12-10 17:40:30 +01:00
Yunwen Zheng
094b6a36dc
Add feature flag: recentlyViewedDashboards ( #115042 )
2025-12-10 11:28:19 -05:00
Yuri Tseretyan
47f7b3e095
Alerting: Dedicated permission for Template testing API ( #115032 )
2025-12-10 10:56:29 -05:00
owensmallwood
5e7b900416
Unified Storage: Adds readme for setting up quotas/overrides ( #115031 )
...
* adds readme for setting up quotas/overrides
* updates namespace wording
* updates docs
* update test
* Revert "update test"
This reverts commit ad43e355ba .
2025-12-10 09:21:52 -06:00
Rafael Bortolon Paulovic
5eae7d4f22
feat: legacy ListIterator with batches ( #115038 )
...
* feat: legacy ListIterator with batches
* chore: address code review
* chore: remove nil check in nextBatch
* chore: move close before count check
* chore: add err field to batchingIterator for its own errors
* chore: remove unused import
2025-12-10 16:12:08 +01:00
Rafael Bortolon Paulovic
8c6ccdd1ab
feat(dashboard): Org-aware cache for schema migration ( #115025 )
...
* fix: use dsIndexProvider cache on migrations
* chore: use same comment as before
* feat: org-aware TTL cache for schemaversion migration and warmup for single tenant
* chore: use LRU cache
* chore: change DefaultCacheTTL to 1 minute
* chore: address copilot reviews
* chore: use expirable cache
* chore: remove unused import
2025-12-10 16:09:16 +01:00
Galen Kistler
8272edda96
Logs: Default columns API ( #114309 )
...
* Logs Drilldown(app-platform): add LogsDrilldownDefaultColumns api
---------
Co-authored-by: L2D2Grafana <liza.detrick@grafana.com >
Co-authored-by: Austin Pond <austin.pond@grafana.com >
2025-12-10 09:02:14 -06:00
Todd Treece
ac55fad1ba
Plugins App: Switch to resource authorizer ( #115019 )
2025-12-10 09:12:26 -05:00
Steve Simpson
baee9fb214
Alerting: Add historian.alerting app permissions to service identity. ( #115082 )
2025-12-10 13:05:10 +00:00
Will Browne
39f4b2a959
Plugins: Rename current meta provider to catalog provider ( #114966 )
...
rename cloud provider to catalog provider
2025-12-10 12:22:05 +00:00
Will Assis
755b479be4
unified-storage: make sql backend update key_path for kv store ( #114879 )
...
* unified-storage: update resource_history_update_rv.sql to populate key_path in resource_history
2025-12-10 07:06:06 -05:00
Stephanie Hingtgen
4fd03bc05e
Folders: Fix error handling for zanzana ( #115056 )
2025-12-10 11:45:22 +03:00