Commit Graph

831 Commits

Author SHA1 Message Date
Ezequiel Victorero 4b43877324 ShortURL: Use the k8s API in the cleanup process (#109938) 2025-08-28 17:40:45 -03:00
Ryan McKinley eda94a6434 DataSource: Support config CRUD from apiservers (#106996) 2025-08-28 22:28:26 +03:00
Yuri Tseretyan 15fab1cb99 Alerting: Update integration schema to support versions (#109969)
* add VersionedNotifierPlugin and method that converts NotifierPlugin to it

* return new schema if query parameter version=2

* add version to k8s model of integration

* fix open api snapshot

* add version to IntegrationConfig

* use current version on conversion

* create versioned integrations for test
2025-08-28 14:46:30 -04:00
Ryan McKinley 43648d20c3 Preferences: Add read-only APIServer for preferences and dashboard stars (#106109) 2025-08-28 19:51:32 +03:00
Misi a5c05ba9c1 IAM: Moving code to the /pkg/apps/iam folder (#109985)
* wip

* Gen GetTeams with app sdk

* Revert some changes, cleanup

* Format iam_manifest.go

* Remove generated file

* Regenerate openapi defs

* Cleanup

* Remove TODO
2025-08-28 12:32:15 +02:00
Roberto Jiménez Sánchez 93a35fc7be Provisioning: Move apifmt, loki and safepath to provisioning app (#110226)
* Move apifmt

* Move safepath

* Move Loki package

* Regenerate Loki mock

* Missing file for Loki
2025-08-27 13:26:48 -05:00
Kyle Brandt dd4ffc9918 SQL Expressions: Add setting to limit length of query (#110165)
sql_expression_query_length_limit

Set the maximum length of a SQL query that can be used in a SQL expression. Default is 10000 characters. A setting of 0 means no limit.
2025-08-27 12:08:25 -04:00
Gabriel MABILLE b6226c6173 grafana-iam: Skeleton of the resource permission api backend (#110218)
* Extract from #108753

Co-Authored-By: mohammad-hamid <mohammad.hamid@grafana.com>

* Tackle create

Co-Authored-By: mohammad-hamid <mohammad.hamid@grafana.com>

* WIP use identity store to resolve role names

* Commit empty service for now

* Clean

* For now only show name and created at

---------

Co-authored-by: mohammad-hamid <mohammad.hamid@grafana.com>
2025-08-27 15:00:09 +02:00
Costa Alexoglou 9785e573aa Provisioning: Fix Dashboard Creation For First-Level Repository Folders (#109962) 2025-08-27 12:20:57 +02:00
Matheus Macabu 60f31342c0 Secrets: Remove proxy certs (#110140) 2025-08-26 16:24:26 +02:00
Roberto Jiménez Sánchez e196f13b2b Provisioning: Introduce Repository Factory with extras (#110018) 2025-08-26 10:37:47 +02:00
Ryan McKinley 99f640fbab Provisioning: Always fetch token (#110116) 2025-08-25 18:57:27 +02:00
Ryan McKinley 27c92a6644 Dashboards: Make conversion data optional (#109965) 2025-08-25 13:47:42 +03:00
Stephanie Hingtgen 1091054c25 Unistore: Wire up inline secure values (#110072)
* Unistore: Wire up inline secure values

* add validation and test

* linter
2025-08-25 02:48:49 -06:00
Roberto Jiménez Sánchez e7ccefcf92 Provisioning: Add Standalone Job Controller Without Job Processing (#109610)
* Add standalone job controller
* Add makefile
* Add limit on the current implementation
* Move job controllers to app package
* Add TLS flags
2025-08-25 08:48:40 +00:00
Peter Štibraný 4c996a8a7f search: Guarantee search-after-write consistency (#109972) 2025-08-25 10:13:07 +02:00
Roberto Jiménez Sánchez 9a668ce06f Provisioning: Use API Client For Job Processing (#110044) 2025-08-25 09:46:20 +02:00
Sarah Zinger 333a21f19d DS-Querier: Fix data source not found (#110064) 2025-08-22 14:59:07 -04:00
Ryan McKinley ce65391067 Provisioning: Use inline secrets for gitsync (#109908)
Co-authored-by: Clarity-89 <homes89@ukr.net>
Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
2025-08-22 18:38:28 +02:00
Roberto Jiménez Sánchez ed13225b71 Provisioning: Refactor History Writer to Use API Client (#110031)
* Separate interfaces for writing and reading in job history

* Register the 2 writers

* Commit unsaved file

* Do not validate or mutate history jobs

* Change the TODOs
2025-08-22 13:41:00 +02:00
Matheus Macabu 33ca5f166f Secrets: Remove feature toggle check in dependency register (#110026) 2025-08-22 13:14:18 +02:00
Adam Simpson c522979e09 query service: add ruleuid to error log (#109986)
* query service: add ruleuid to error log

* little fix

---------

Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
2025-08-21 18:17:22 +00:00
Misi aade015d96 IAM: Change required permission in the app (#109894)
* Update required permissions

* Align tests
2025-08-21 11:33:56 +00:00
Ryan McKinley 6f940f855e Chore: Remove public dashboard cue (#109940) 2025-08-21 13:58:36 +03:00
Ryan McKinley 018e810d43 Provisioning: Remove clonedir (not used by nanogit) (#109954)
remove clone dir
2025-08-21 10:04:30 +00:00
Roberto Jiménez Sánchez 61d137992b Provisioning: Mark repository as unhealthy if hooks fail (#109788) 2025-08-21 08:32:23 +00:00
owensmallwood cace999671 Unified Storage: Add ListSinceModified to StorageBackend (#109697)
* WIP added ListSinceModified to StorageBackend interface

* fix compile time check

* Fix method name

* Fix naming

* fix the rest of the ListSinceModified names

* Uses resource key without name field

* get latest rv from resource_version. Update test.

* adds moar tests

* adds method stub for ListModifiedSince to other StorageBackend implementations

* adds dummy impl to noop storage backend for ListModifiedSince

* skip tests for badger kv backend for now

* fixes tests and adds badgerkv impl for ListModifiedSince

* add badger kv impl

* adds test for new query

* adds test data for new query

* adds ListModifiedSince stub to mockStorageBackend

* uncomment tests

* refactors ListModifiedSince to return an iter.seq2 and handles deduplication. Updates tests. Updates query result sorting.

* remove comments

* remove folder from query (dont need it, yet?)

* regen test queries

* updates test

* updates function comment

* use resourcepb.ResourceKey instead of ModifiedResourceKey

* wrap seq in single transaction. Rollback transaction after 30s if iterator never used. Only track last seen event. Formatting.

* skip TestListModifiedSince for kv backend

* use WatchEvent_Type for action type

* remove redundant fields from order by clause and regen test data for query

* remove redundant fields from order by clause and regen test data for query
2025-08-20 11:54:31 -06:00
Roberto Jiménez Sánchez c37a03263f Provisioning: Fix Bug Blocking Changing Pull Target During Onboarding (#109892)
* Fix bug changing target for unsynced repository

* Fix linting
2025-08-20 09:02:19 +00:00
Stephanie Hingtgen 77c96cbd06 Secrets: Refactor setting additional decrypter (#109877) 2025-08-19 16:10:43 -05:00
Matheus Macabu 537ac8ec68 Secrets: Validate name/namespace with standard K8s validator (#109868)
* Secrets: Validate name/namespace with standard K8s validator

* Secrets: Simplify error message for mismatched owner inline secure values
2025-08-19 16:55:52 +02:00
Gábor Farkas 2e5b55a855 datasources: querier: renamed the "mt" builder to "qs" builder (#109779) 2025-08-19 12:37:56 +02:00
Mariell Hoversholm 0fc29cbaae Rendering: Remove SVG sanitization (#109797) 2025-08-19 11:34:12 +02:00
Matheus Macabu 10508d0614 Secret/Keepers: Return already exists error from DB when creating keeper (#109782) 2025-08-18 14:42:55 +02:00
maicon 5270d8e53f fix(unified-storage): remove permissions after executing on both stores (#109722)
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Co-authored-by: Jean-Philippe Quéméner <jeanphilippe.quemener@grafana.com>
2025-08-15 15:57:42 +00:00
Roberto Jiménez Sánchez 1ff39510d3 Provisioning: Check For Resource Ownership Before Operations (#109582) 2025-08-15 10:05:53 +03:00
Gábor Farkas 8672275824 datasources: querier: report metrics related to the whole request (#109384)
* refactor

* add metric
2025-08-14 16:14:21 +02:00
Roberto Jiménez Sánchez ffc7508a46 Provisioning: Enforce instance repository isolation (#109512)
* Fix validation on repository creation

* Fix linting

* Do not count the provided one

* Fix test

* Fix tests
2025-08-14 10:19:40 +00:00
Matheus Macabu dfae5e5b4d Secrets: Add namespace matches checks to authorizer and secure value client (#109651)
* Decrypt: Add namespace matches to authorizer

* SecureValueClient: Add namespace matches when auth checking
2025-08-14 11:50:56 +02:00
owensmallwood 384ec28dfd Unified storage bugfix legacy folders getting first page (#109554)
* When creating a new continue token, it defaults to page 1. Also use constants for default limit and page number.

* Update tests for continue token.

* When listing legacy folders, the continue token will have all paging info in it. Simplifies paging logic and fixes bug when limit not specified.

* Adds regression test to ensure default page limit is enforced.

* remove test comment
2025-08-13 08:50:28 -06:00
lean.dev 3106abf1a6 SecretsManager: clear unused metrics and standarize labels(#109515) 2025-08-13 14:01:50 +01:00
Stephanie Hingtgen 85166512cb Provisioning: Update for standalone (#109524) 2025-08-12 17:37:16 -05:00
Ezequiel Victorero 56c91c2222 ShortURL: App platform migration support for dual write (#109221) 2025-08-12 16:01:41 -03:00
Ryan McKinley edcb6e6895 Provisioning: Fix OpenAPI generation (#109513)
* post-process spec

* update client

* fix the openapi

* revert playlist change

* Fix unmanaged resource counts

---------

Co-authored-by: Roberto Jimenez Sanchez <roberto.jimenez@grafana.com>
2025-08-12 17:25:19 +00:00
Roberto Jiménez Sánchez 5c5729a25d Provisioning: Fix migration behavior for folder-type repositories (#109518)
Fix migration issues for folder sync
2025-08-12 16:48:13 +02:00
Matheus Macabu 904bf6b807 Investigations: Move Grafana core packages to pkg/registry/apps (#109477) 2025-08-12 15:33:23 +02:00
Roberto Jiménez Sánchez f2303a8ad9 Provisioning: Include Ref URLs in Job Status (#109464)
* Add URLs to Job spec

* Rename them as RefURLs

* Implement RefURLs for Github

* Add Ref URLs to Jobs

* Worker Test

* Create the branch in the staged writer

* Regenerate Git mock

* Format code

* Consolidate ResourceURLs and RefURLs into one

* Fix broken tests
2025-08-12 11:57:37 +02:00
Roberto Jiménez Sánchez 8a690e977e Provisioning: Return unmanaged count in stats (#109462)
* Unmanaged counts

* Add integration test

* Generate open api spec
2025-08-12 09:17:25 +02:00
Ryan McKinley e0404f924c K8s/SecureValues: Wire InlineSecureValueSupport to apistore (#109449)
* inline wire

* extra fields

* add variable

* wire
2025-08-11 15:22:56 +03:00
Ryan McKinley 439d4d383c Provisioning: Hide HistoricJobs from OpenAPI spec (#109454)
histtoric jobs
2025-08-11 10:47:33 +00:00
Roberto Jiménez Sánchez f80627f228 Provisioning: Store Recent Jobs Temporarilly in Unified Storage (#109392)
* Add HistoryJob back to Spec

* Generate client

* Put back History Jobs

* Add a controller to remove historic jobs after some minutes

* Start only if Loki is not used

* Format code

* Update OpenAPI spec

* Change log level

* Fix condition

* Fix staticcheck

* Use provisioning identity

* Fix registration APIs

* Fix readonly issue

* Update OpenAPI
2025-08-11 13:10:15 +03:00