Commit Graph
16738 Commits
Author SHA1 Message Date
Josh HuntandGitHub 1bd9541507 FrontendService: Add tracing and logging middleware (#107956)
* FrontendService: Add tracing and logging middleware

* tests!

* middleware tests

* context middleware test

* revert http_server back to previous version

* fix lint

* fix test

* use http.NotFound instead of custom http handler

* use existing tracer for package

* use otel/trace.Tracer in request_tracing middleware

* tidy up tracing in contextMiddleware

* fix 404 test

* remove spans from contextMiddleware

* comment
2025-07-22 18:55:44 +01:00
Matheus MacabuandGitHub 52f6104230 Dependencies: Bump Go to v1.24.5 (#108175) 2025-07-22 17:08:40 +02:00
0dbede9ba5 Provisioning: Fix ImportAllPanelsFromLocalRepository test (#108441)
* Provisioning: Skip flaky test

* Fix flaky provisioning test

* Fix lint

---------

Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
2025-07-22 14:23:17 +00:00
Roberto Jiménez SánchezandGitHub 482872c3bf Provisioning: Fix bug in job progress recording (#108440)
Fix bug in job progress recording
2025-07-22 14:21:22 +00:00
Matheus MacabuandGitHub 9402071d33 Secrets: Create more granular fixed roles for SecureValues (#108382) 2025-07-22 16:20:54 +02:00
Will AssisandGitHub 71cb623cb7 improve logging and fail unified-storage migration with more than 0 errors (#108471)
improve logging and fail unified-storage migration with more than 0 errors
2025-07-22 13:44:04 +00:00
Todd TreeceandGitHub 52a0485d5b App Installer: Authorizer support (#108419) 2025-07-22 06:45:01 -04:00
d72a70d246 Dashboards API: v2alpha2 missing pieces (#108293)
* Dashboards API: v2alpha2 missing pieces

* Fix issue with dashboard client scope for alpha versions

As we now have 2 different alpha versions for v2 we need to store the
clients separately.

* Improve debuggability of provisioning export test

- Add a helper function to print the tree structure.
- Be explicit about the expected file names expected in each case.

* Update pkg/registry/apis/dashboard/mutate.go

* Update pkg/services/authz/zanzana/server/server.go

Co-authored-by: Igor Suleymanov <radiohead@users.noreply.github.com>

* Review

* go lint

---------

Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
Co-authored-by: Stephanie Hingtgen <stephanie.hingtgen@grafana.com>
Co-authored-by: Igor Suleymanov <radiohead@users.noreply.github.com>
2025-07-22 11:44:05 +02:00
c3243bd100 Context: Clean up contexthandler.Middleware spans (#108188)
* Context: Clean up contexthandler.Middleware spans

* seperate the middleware span from the rest of the request

* shuffle

* put of back

* span name

* Update pkg/services/contexthandler/contexthandler.go

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>

---------

Co-authored-by: Dave Henderson <dave.henderson@grafana.com>
2025-07-22 08:53:28 +00:00
Will BrowneandGitHub 7f065c94de Plugins: Remove pluginsCDNSyncLoader feature toggle (#108389)
* remove pluginsCDNSyncLoader feature toggle

* fix lint issues

* fix other linter issue
2025-07-22 09:33:23 +01:00
Will AssisandGitHub 34f1be796d unified-storage: expose ring replication factor config (#106345)
* config ring replication factor

* change default

* rename

* fix test

* fix
2025-07-22 09:32:22 +02:00
Todd TreeceandGitHub e5d2f92384 K8s: Add App SDK installer (#107773) 2025-07-21 13:32:15 -04:00
Moustafa BaiouandGitHub 71b5c1d997 Alerting: Update test data for exports which now contain http_configs for receivers (#108405)
This was introduced in https://github.com/grafana/grafana/pull/108190 and missed in the integration
2025-07-21 16:32:21 +00:00
Matthew JacobsonandGitHub 5489c814c0 Alerting: Fix Jira HCL export with fields & add export snapshots test (#108032)
* Alerting: Contact point export snapshot test

* Fix Jira.fields hcl export type to allow map[string]any

Since gohcl does not support this type, we marshal as a string instead
which will be handled in the TF provider.

* mapToJSONStringCodec encoder needed for
TestContactPointFromContactPointExports
2025-07-21 10:24:24 -04:00
BrunoandGitHub 12a7e03e2f Secrets: encryptionStoreImpl produces metrics (#108390) 2025-07-21 11:00:59 -03:00
Bruno AbrantesandGitHub be79eb0ace fix: handle dashboards without version entries in unified storage migration (#108139)
* fix: handle dashboards without version entries in migration

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

* fix: adds AllowFallback flag to enable COALESCE logic explicitly during migrations

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

* fix: update dependencies

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

* fix: maintain original behavior when not using AllowFallback option

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

---------

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>
2025-07-21 15:32:24 +02:00
Will BrowneandGitHub cd87bbbdea Plugins: Remove externalCorePlugins feature toggle (#108386)
remove externalCorePlugins feature toggle
2025-07-21 13:55:30 +01:00
Stephanie HingtgenandGitHub 5ec3a2b758 K8s: Library panels: move to separate ff (#108384) 2025-07-21 12:53:46 +00:00
Bruno AbrantesandGitHub e5b6ab1b11 fix: do not migrate library panels to unified storage (#108380)
Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>
2025-07-21 14:34:23 +02:00
Bruno AbrantesandGitHub 6c84461b7a fix: Always return searchWrapper to enable shadow traffic (#108373)
Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>
2025-07-21 13:53:44 +02:00
Matheus MacabuandGitHub 9e4f2cad47 Secrets: Re-export and map domain errors into K8s API errors in ST client (#108226) 2025-07-21 09:32:20 +00:00
Matheus MacabuandGitHub f7e55f2c5d Secrets: Add authz checks for the single-tenant SecureValue client (#108216) 2025-07-21 11:09:07 +02:00
Matheus MacabuandGitHub 47abf5f811 Secrets: Clean up unused code (#108366)
* Secrets: Remove unused tracectx pkg

* Secrets: Remove unused assert pkg

* Secrets: Remove unused encryption interface

* Secrets: Remove unused encryption file/ref
2025-07-21 11:08:49 +02:00
Yuri TseretyanandGitHub 5097dd5c7d Alerting: Send templates from extra configuration to remote Alertmanager (#107981)
* extract logging of MergedResult into method

* convert GetMergedTemplateDefinitions to return PostableApiTemplate

* update mergeExtracConfigs to return GrafanaAlertmanagerConfig

* pass by value, not pointer

* add template definition to payload

* update tests

* rename to Templates

* log merge results

* fix reference in workspace
2025-07-18 15:16:17 -04:00
Sarah ZingerandGitHub f34127c449 Query Service: Fix Time Bug (#108337) 2025-07-18 18:14:44 +00:00
Ashley HarrisonandGitHub 2d1fb94f2d Playwright: Gate server start up with GRAFANA_URL env var (#108302)
* refactor so server is created unless GRAFANA_URL is provided

* update documentation

* don't swallow errors from the server process
2025-07-18 17:08:47 +01:00
MisiGitHubgithub-actions[bot] <github-actions[bot]@users.noreply.github.com>
4669b586e9 Security: Fixes for CVE-2025-6197 and CVE-2025-6023 (#108330)
apply security patch: main/439-202506251632.patch

(cherry picked from commit 7f3977c54548dc82d9b2c44c125b30b3dbc2069a)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-18 09:06:26 -06:00
Eric LeijonmarckandGitHub aa0f8caa35 Authorizer: rename and enforce only once for NewGrafanaAuthorizer (#108294)
* renaming of GrafanaAuthorizer to make it less confusing

* enforce only once by runtime

* comment only
2025-07-18 15:40:34 +01:00
Kevin YuandGitHub f009c2dcdd CloudWatch: Handle log alerts queries where the time field is not the first field (#108277)
CloudWatch: handle log alerts queries where the time field is not the first field
2025-07-18 07:29:39 -07:00
maiconandGitHub 4b440cf45d Remove timeout info from logs when shadow request to search succeeds (#108324)
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
2025-07-18 14:03:42 +00:00
2dba473015 Feature/unified storage search dual reader (#108291)
* Add UnifiedStorageSearchDualReaderEnabled feature flag

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

* Refactor UniSearch Dual Reader

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

* Run make gen-feature-toggles

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

* fix: unit tests search_client

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

* feat: cancels shadow search requests after 500ms

Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Signed-off-by: Bruno Abrantes <bruno@brunoabrantes.com>
Co-authored-by: Will Assis <william@williamassis.com>
Co-authored-by: Bruno Abrantes <bruno@brunoabrantes.com>
2025-07-18 14:43:56 +02:00
Roberto Jiménez SánchezandGitHub 4847882ee7 Provisioning: handle .git extension more gracefully (#108213)
* Move .git to repository packages

* Bump nanogit 2025-07-17

This version handles `.git` extension internally so that the client
doesn't have to worry about it

* Put back mutation for Github

* Mutate also git URL for clarity
2025-07-18 13:25:21 +02:00
Roberto Jiménez SánchezandGitHub 446054a61d Provisioning: fix race condition in usage metrics collection (#108289)
* Register usage stats after lister is created

For enterprise where metrics are collected more frequently and in
different ways the collection was happening before the listing was
initialized.

* Move usage to separate package
2025-07-18 13:24:58 +02:00
Roberto Jiménez SánchezandGitHub e3422c415f Provisioning: fix hack-introduced bug on repository updates (#108298)
* Add log line to see which secret service we are using
* Add hack to make test and create endpoint work until we have InLineSecureValues
2025-07-18 10:18:07 +00:00
MisiandGitHub d5f47d2a6b IAM: Comment out DualWriter setup for Users (#108241)
* Try 1

* Comment out DW setup for users
2025-07-18 09:29:09 +00:00
Roberto Jiménez SánchezandGitHub 5cf48294f7 Provisioning: fix authorized github client initialization (#108290)
* Add logging

* Fix the condition for the github token

* Revert "Add logging"

This reverts commit 71cbc675f6.

* Fix condition
2025-07-18 10:23:55 +02:00
3fad863fd1 Query Service: Combine SSE handling in single tenant and multi tenant paths (#108041)
* parse via sse

I need to figure out how to handle the pipeline.execute with our own
client. I think this is important for MT reasons, just like using our
own cache (via legacy) is important.

parsing is done though!

* WIP nonsense

* horrible code but i think it works

* Add support for sql expressions config settings

* Cleanup:
- remove spew from nodes.go
- uncomment out plugin context and use in single tenant flow
- make code more readable and add comments

* Cleanup:
- create separate file for mt ds client builder
- ensure error handling is the same for both expressions and regular queries
- other cleanup

* not working but good thoughts

* WIP, vector not working for non sse

* super hacky but i think vectors work now

* delete delete delete

* Comments for future ref

* break out query handling and start test

* add prom debugger

* clean up: remove comments and commented out bits

* fix query_test

* add prom debugger

* create table-driven tests with testsdata files

* Fix test

* Add test

* go mod??

* idk

* Remove comment

* go enterprise issue maybe

* Fix codeowners

* Delete

* Remove test data

* Clean up

* logger

* Remove go changes hopefully

* idk go man

* sad

* idk i ran go mod tidy and this is what it wants

* Fix readme, with much help from adam

* some linting and testing errors

* lint

* fix lint

* fix lint register.go

* another lint

* address lint in test

* fix dead code and linters for query_test

* Go mod?

* Struggling with go mod

* Fix test

* Fix another test

* Revert headers change

* Its difficult to test this in OSS as it depends on functionality defined in enterprise, let's bring these tests back in some form in enterprise

* Fix codeowners

---------

Co-authored-by: Adam Simpson <adam@adamsimpson.net>
2025-07-17 17:22:55 -04:00
colin-stuartandGitHub 08afd73c0c SCIM: Add successful SCIM-provisioned user login usage stat (#108273)
* SCIM: add usage stat boolean for successful login

* revert unrelated change

* rename scimSuccessfulLogins

* clean up
2025-07-17 13:43:30 -05:00
CharandasandGitHub d9e099d480 Feature-Flag service: signing middleware for cloud usecase (#107745) 2025-07-17 09:50:25 -07:00
Will BrowneandGitHub f6ed9e6ff0 Plugins: Introduce plugin asset provider (#108063)
* introduce plugin asset provider

* simply with PR feedback

* fix linter
2025-07-17 16:20:35 +01:00
SantiagoandGitHub 8548530dc4 Alertmanager: Add MergeState method (#108242)
* Alertmanager: Add MergeState method

* remove RemoteState in favor of ExternalState

* fix tests
2025-07-17 16:47:14 +02:00
Vadim StepanovandGitHub bccc980b90 Alerting: Notifiication history (#107644)
* Add unified_alerting.notification_history to ini files

* Parse notification history settings

* Move Loki client to a separate package

* Loki client: add params for metrics and traces

* add NotificationHistorian

* rm writeDuration

* remove RangeQuery stuff

* wip

* wip

* wip

* wip

* pass notification historian in tests

* unify loki settings

* unify loki settings

* add test

* update grafana/alerting

* make update-workspace

* add feature toggle

* fix configureNotificationHistorian

* Revert "add feature toggle"

This reverts commit de7af8f7

* add feature toggle

* more tests

* RuleUID

* fix metrics test

* met.Info.Set(0)
2025-07-17 14:26:26 +01:00
Roberto Jiménez SánchezandGitHub 810868c156 Provisioning: use new secure value client (#108227)
* Use provider in Webhooks registration

* First stab at using the new client

* Simplify mock

* Able to generate graph in OSS

* Remove line already ensured by provider

* Handle the K8s not found error as well

* Commit regenerated wire file

* Add the hack also for deletion

* Fix secrets test util

* Format file
2025-07-17 15:17:14 +02:00
4b217c601a AuthZ: Scope resolution (#107948)
* AuthZ: Scope resolution

* Account for PR feedback

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2025-07-17 14:34:10 +02:00
Mihai DoarnaandGitHub 8dfb4cdfc9 SSO: Add prompt param to SSO settings (#107969)
* add prompt param to AzureAD oauth config

* yarn i18n-extract

* validate auth prompt value

* make login_prompt available for all SSO providers

* use base authCodeURL for azure and google

* add docs for the new field for azure and generic oauth

* fix typo

* fix frontend unit test

* add prompt parameter to docs for the other providers

* remove prompt from okta

* add unit tests for the other providers

* address feedback

* add back translations for prompt labels
2025-07-17 14:40:48 +03:00
Matheus MacabuandGitHub f7891a27d2 Secrets: Add kms providers imports (#108210) 2025-07-17 12:04:59 +02:00
c6a6b9fdd2 IAM: Create and delete user from the legacy store (#107694)
* Add Create for User + DualWriter setup

* Add delete User

* Fix delete + access check

* Add tests for delete user

* Add tests for create user

* Fixes

* Use sqlx session to fix database locked issues

* wip authz checks

* legacyAccessClient

* Update legacyAccessClient, add tests for create user

* Close rows before running other queries

* Use ExecWithReturningId

* Verify deletion in the tests

* Add Validate and Mutate

* Other changes

* Address feedback

* Update tests

---------

Co-authored-by: Gabriel Mabille <gabriel.mabille@grafana.com>
2025-07-17 11:50:40 +02:00
Andres Martinez GotorandGitHub 8e663b50e9 Advisor: Allow to define enterprise checks (#108114) 2025-07-17 11:37:32 +02:00
Will BrowneandGitHub 54d6140e6d Plugins: Stub logger method for backend plugin test mock (#108211)
stub logger method for backend plugin test mock
2025-07-17 10:18:31 +01:00
Matheus MacabuandGitHub 6c69ae244e Secrets: Add single tenant SecureValueClient (#108099)
* Secrets: Add single tenant SecureValueClient

* SecureValueClient: Rename file

* SecureValueClient: Move original type to contracts package and export it by aliasing
2025-07-17 10:56:49 +02:00