Commit Graph
17405 Commits
Author SHA1 Message Date
Nick Richmond 07a225649d MetricsDrilldown: Remove legacy Metrics Drilldown code paths (#103845)
* chore: remove feature toggles

* chore: update labels

* chore: remove `public/app/features/trails` code

* fix: typo

* chore: update betterer results

* chore: update i18n
2025-04-11 16:45:14 -04:00
Dave Henderson a58837f6db Feature Toggles: Stop documenting experimental toggles (#103841)
Signed-off-by: Dave Henderson <dave.henderson@grafana.com>
2025-04-11 16:42:35 -04:00
Ryan McKinley b39eaac69e Unistore: Keep apiVersion from the legacy SQL table (#103939)
keep apiversion
2025-04-11 22:49:45 +03:00
Stephanie Hingtgen bba85c1128 K8s: Dashboards: Fix error handling (#103929) 2025-04-11 13:31:41 -06:00
Michael Mandrus 652c374c4c CloudMigrations: Make table sort case insensitive (#103898)
* case insensitive sort

* fix for all db types

* add comment

* add unit test

* add a TODO to fix later
2025-04-11 20:29:07 +01:00
Jean-Philippe Quéméner 6c45cc9e2d fix(util): don't use wall clock time for testing (#103924) 2025-04-11 20:01:26 +02:00
Alexander Akhmetov a913c5426d Alerting: Fix flaky TestIntegrationPrometheusRules test (#103886) 2025-04-11 19:50:46 +02:00
Marco de Abreu 95f04c79cd Dashboards: Add Dashboard Schema validation (1) (#103662) 2025-04-11 16:52:46 +00:00
Matthew Jacobson 9e933882ed Alerting: Webhook Improvements - Templateable Payloads (#103818)
* Template editor syntax highlighting when preview is json-like

* Add new template editor language examples, snippets, and functions

* Use updated NewTemplate function

* Add new fields to webhook notifier

- CustomPayload
- ExtraHeaders

* Documentation

* Update grafana/alerting to in-progress PR (needs updating after merge)

* Fix integration test

* Remove docs reference to .Extra template context

No longer exists, was part of a previous iteration

* make update-workspace

* Update grafana/alerting to actual merged commit
2025-04-11 12:22:51 -04:00
Ryan McKinley ac7edd3032 Provisioning: Skip validation when writing v1 dashbaords (#103893) 2025-04-11 16:04:00 +00:00
Andrew Hackmann 710a5d29e9 Azure Prometheus: Add Azure prom to Azure forward auth setting (#103910)
add azure prom to the azure auth forward setting
2025-04-11 10:51:40 -05:00
Alex Khomenko af373569b5 Provisioning: Move nav section under admin (#103911) 2025-04-11 15:43:49 +00:00
Roberto Jiménez Sánchez 4c21e7f8c2 Provisioning: small pending refactoring of pull request job (#103876)
* WIP: Refactor into evaluator and commenter

* Add mocks

* Fix existing tests comment

* Fix existing changes tests

* Use the extracted config

* Fix linting

* Remove trailing line
2025-04-11 15:18:41 +00:00
Ryan McKinley 664e5255fe Provisioning: Use role based access when the target does not yet exist (#103862)
* role based fallback

* disable permissions cache with provisioning

* fallback to role based

* test with editor (not admin)

* test with editor (not admin)

* fix imports

* lint

* editor can create folders
2025-04-11 17:47:26 +03:00
Peter Štibraný be696dd70c unified storage: check for iterator errors after each call to iter.Next. (#102804)
* unified storage: check for iterator errors after each call to iter.Next.
* Extracted test to separate method, add 500 events before listing.
2025-04-11 16:25:40 +02:00
Alexander Akhmetov babea87ebd Chore: make update-workspace (#103888) 2025-04-11 16:06:54 +02:00
Peter Štibraný b8691c4797 spanner: Fix use of in-memory sequence generator (#103767) 2025-04-11 15:42:58 +02:00
Agnès Toulet d7c554c25e Renderer: Fix regression on callback URL in plugin mode (#103787)
* Renderer: Fix regression on callback URL in plugin mode

* cleanup

* refactor to not mutate cfg object

* apply review feedback
2025-04-11 15:34:10 +02:00
Matthew Jacobson 9f9c4b3da3 Alerting: Template preview enhancements (#103817)
API Changes:

- Fixes validation in template CRUD API to be closer to how the running 
  alertmanager will use the template. Should remove some incorrect 
  validation errors.

- Adds some missing default placeholder labels to receiver testing that 
  are used during template testing but missing during receiver testing


Template Preview:

- Replaced basic preview with a readonly CodeEditor for better whitespace 
  and alignment clarity (also adds support for future syntax highlighting 
  in template previews for upcoming webhook payload templates)

Template Selector (Receiver Form):

- Refactored to use same components as Template editor for preview.
- Fixed preview to work with multi-definition templates
- Fixed copy to correctly copy the template contents instead of 
  {{ template "<name>" . }}.

Template Editor:

- Fixed detection of when to display functions vs snippets in multi-line 
  expressions
2025-04-11 09:27:19 -04:00
Ryan McKinleyandClarity-89 2c3422fc5c Provisioning: return field paths in test error messages (#103850)
* Provisioning: Do not block connect step on error

* Display field errors

* Cleanup

* return field errors

* fix test

* convert errros to an array

* Fix history display

* Add getFormErrors

* metav1 issues

* lint

* Proper field names

* Fix notification

* Remove unused component

---------

Co-authored-by: Clarity-89 <homes89@ukr.net>
2025-04-11 14:26:42 +01:00
Stephanie Hingtgen 88391b173e K8s: Enable kubernetesClientDashboardsFolders by default (#103843) 2025-04-11 07:56:05 -05:00
Stephanie Hingtgen f5ad1ef69b K8s: Folders: Add v1 api (#103842) 2025-04-11 13:09:52 +01:00
Oscar Kilhed 50499fa749 Dashboards: Add a config setting that limits the number of series that will be displayed in a panel. Users can opt in to render all series. (#103405)
* Limit series in panels in dashboards

* fix mangled comment
2025-04-11 13:56:58 +02:00
Bogdan Matei 35e78feffa Dynamic Dashboards: Add repeats for tabs (#103348) 2025-04-11 13:50:44 +03:00
Ryan McKinleyandRoberto Jiménez Sánchez 0d20680695 Provisioning: Improve PR feedback (#103537)
* fix ref

* dryRun before save

* reuse code for create vs update

* update comments

* can update PRs

* return useful errors

* update preview links

* lint fix

* update some wording

* update mocks

* fixed

* Update pkg/registry/apis/provisioning/resources/dualwriter.go

Co-authored-by: Roberto Jiménez Sánchez <roberto.jimenez@grafana.com>

* more updates

* fix link

* error string

* dry run

* refactor galore

* with template test

* very basic tests

* more test cases

* remove generator

* more tests

* fix lint

* multiple files now

* merge main

* merge main

* fix snapshots

* fix snapshots

* slugify title

---------

Co-authored-by: Roberto Jiménez Sánchez <roberto.jimenez@grafana.com>
2025-04-11 11:06:16 +01:00
Laura Fernández 3607356f65 i18n: Update internationalization/dates.ts to use locale (#103731) 2025-04-11 11:24:40 +02:00
Peter Štibraný b0b4b31765 publicdashboards: Don't format timestamp before passing it to database. (#103463)
Don't format timestamp before passing it to database.
2025-04-11 10:31:10 +02:00
Peter Štibraný 54b8dde1e1 services/user: Fix userimpl tests when running on Spanner. (#103715)
Fix userimpl tests when running on Spanner.
2025-04-11 10:28:21 +02:00
Ashley Harrison 79400018a4 Preferences: Allow setting lang and theme from URL (#103587)
* allow setting theme/language via url

* set in backend instead

* add locale as well
2025-04-11 09:21:06 +01:00
Jean-Philippe Quéméner 50fcc053c2 feat(unified-storage): provide delete function for bucket (#103825) 2025-04-11 10:10:13 +02:00
45d6bfe7cf AuthZ: Make cache ttl configurable (#103769)
* AuthZ: Configure cache ttl

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* Client side conf

Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>

* 0 -> No caching

* Make it possible to disable cache on the remote client as well

* Comment

* Move ttl parsing up for in-proc to have it

---------

Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2025-04-11 10:09:47 +02:00
Konrad LalikandGilles De Mey 0a8dccc19a Alerting: New alert list filter improvements (#103107)
* Move filtering code to generators for performance reasons

Discarding rules and groups early in the iterable chain limits the number of promises we need to wait for which improves performance significantly

* Add error handling for generators

* Add support for data source filter for GMA rules

* search WIP fix

* Fix datasource filter

* Move filtering back to filtered rules hook, use paged groups for improved performance

* Add queriedDatasources field to grafana managed rules and update filtering logic to rely on it

- Introduced a new field `queriedDatasources` in the AlertingRule struct to track data sources used in rules.
- Updated the Prometheus API to populate `queriedDatasources` when creating alerting rules.
- Modified filtering logic in the ruleFilter function to utilize the new `queriedDatasources` field for improved data source matching.
- Adjusted related tests to reflect changes in rule structure and filtering behavior.

* Add FilterView performance logging

* Improve GMA Prometheus types, rename queried datasources property

* Use custom generator helpers for flattening and filtering rule groups

* Fix lint errors, add missing translations

* Revert test condition

* Refactor api prom changes

* Fix lint errors

* Update backend tests

* Refactor rule list components to improve error handling and data source management

- Enhanced error handling in FilterViewResults by logging errors before returning an empty iterable.
- Simplified conditional rendering in GrafanaRuleLoader for better readability.
- Updated data source handling in PaginatedDataSourceLoader and PaginatedGrafanaLoader to use new individual rule group generator.
- Renamed toPageless function to toIndividualRuleGroups for clarity in prometheusGroupsGenerator.
- Improved filtering logic in useFilteredRulesIterator to utilize a dedicated function for data source type validation.
- Added isRulesDataSourceType utility function for better data source type checks.
- Removed commented-out code in PromRuleDTOBase for cleaner interface definition.

* Fix abort controller on FilterView

* Improve generators filtering

* fix abort controller

* refactor cancelSearch

* make states exclusive

* Load full page in one loadResultPage call

* Update tests, update translations

* Refactor filter status into separate component

* hoist hook

* Use the new function for supported rules source type

---------

Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
2025-04-11 10:02:34 +02:00
Moustafa Baiou 032299011a Alerting: Relax permissions for access a rule (#103664)
This makes it so that it is:
- No longer required to have datasource permissions to delete a rule.
- No longer required to have datasource permissions to update non-query related fields of a rule.
2025-04-11 00:58:37 +01:00
Sven Grossmann 05338838b0 Sidecar: Remove experimental Sidecar implementation (#103786)
* Sidecar: remove `appSidecar` feature toggle

* Sidecar: Remove sidecar implementation

* lint
2025-04-10 22:04:12 +02:00
fd6fd91115 Prometheus: Add support for cloud partners Prometheus data sources (#103482)
* wip

* Add prom flavor support for data source variables and export/import dashboards (#103321)

* add dashboard and data source var selection

* use match plugin id instead

* use updated matchpluginid

* formatting

* cleanup

* regex anchor

* update error msg

* Alerting: Clean up prometheus-flavored types and functions (#103703)

* clean up types and utility functions for dealing with
prometheus-flavored data sources

* Refactor alerting datasource types to use constants as source of truth

* Alerting: Clean up prometheus-flavored types and functions on the bac… (#103716)

Alerting: Clean up prometheus-flavored types and functions on the backend

* add matchPluginId tests

* Update matchPluginId func to bidirectional (#103746)

* update matchpluginid func to bidirectional

* lint

* formatting

* use actual isSupportedExternalRulesSourceType in test

* add tests in datasource_srv

* betterer

* remove type assertion

* remove unnecessary case

* use satisifies to not have to convert tuple to an array of string

* add prometheus_flavor test

---------

Co-authored-by: Andrew Hackmann <5140848+bossinc@users.noreply.github.com>
Co-authored-by: Gilles De Mey <gilles.de.mey@gmail.com>
Co-authored-by: Alexander Akhmetov <me@alx.cx>
2025-04-10 12:49:11 -07:00
Ryan McKinley 02b090574d Unified: use server access client for bulk operations (#103828) 2025-04-10 20:29:59 +01:00
Sarah Zinger acd843303e SQL Expression: Add instrumentation for sql expressions (#103758) 2025-04-10 19:51:44 +01:00
Roberto Jiménez Sánchez 2eaeff8ea7 Provisioning: Fix issue with double prefix for github repository (#103781) 2025-04-10 20:57:42 +03:00
Mihai Doarna f8fc3d2db2 Chore: Fix lint error in accesscontrol API endpoints (#103792)
fix lint error
2025-04-10 12:29:04 -05:00
Kyle Brandt 4753c3f735 SQL Expressions: Set feature to private preview (#103734) 2025-04-10 10:46:48 -04:00
Ashley Harrison 6712a0331c Themes: Enable new (experimental) themes by default (#103790)
enable new (experimental) themes by default in g12
2025-04-10 15:44:00 +01:00
Mihai Doarna 42dd2336b9 Team: Add validation for provisioned teams in setUserPermission endpoint (#103623)
* removed provisioned team validation from team permissions

* validate team in setUserPermission
2025-04-10 17:28:31 +03:00
Will Browne a1b792b1f5 Plugins: Remove plugin dependency version (#103728)
remove plugin dependency version
2025-04-10 15:02:05 +01:00
mohammad-hamid a255ae6b0b Read in cert file path from env vars (#103643)
use cert file path
2025-04-10 09:56:41 -04:00
Dana Axinte e86df64657 CloudMigrations: Change onPremToCloudMigrations feature toggle to GA (#103212)
* feature to ga

* change description
2025-04-10 14:53:22 +01:00
Roberto Jiménez Sánchez 47664a7d51 Provisioning: unit test sync job (#103636)
* Split in multiple files

* Refactor sync even further

* Move more things between RepositoryResources

* Add status patcher

* Interface for sync functions

* Interface for compare function

* Add syncer back

* Move interfaces

* Move execute complete

* Return currentRef in syncer

* Add repository status test

* Add initial sync tests

* Fix a couple of spots

* Make initial sync tests work

* Fix register.go

* Add initial tests for sync worker

* Finish tests for sync

* Add incremental tests

* Add TODO

* Finish incremental tests

* Move folder creation to full sync

* Move interfaces

* Add initial full sync tests

* Update tests

* Reshape things

* Add changes test

* Fix register

* Add some tests

* Add more tests

* Add test

* WIP

* WIP: delete test

* Add more full test

* More tests

* Add tests for folder creation

* Add folder tests full sync

* Full coverage full sync

* Clean up tests

* Add more tests for changes function

* Enhance tests for Changes function to cover error scenarios and empty paths

- Added test cases for handling empty file paths and folder resources.
- Updated error message formatting in the Compare function for clarity.

* Add unit tests

* Failed initial patch

* Add tests failed repository resources

* Add test failed getting client

* Test for successful and unsuccessful syncs

* Add final tests for worker

* Fix existing tests

* Add missing test

* Fix spelling mistake

* Fix flake in changes test
2025-04-10 13:55:49 +01:00
Dana Axinte 6fde69c333 CloudMigrations: Make improvements to the text content (#103770)
* change copy configuration

* comma and this token after token creation

* securely migrate and you'll need token

* add caret and modify steps

* period after check failed resources

* learn about migrating v1

* building snapshot reduce text

* right caret connect to a cloud stack

* building snapshot reduce text v2

* make i18n-extract after merge
2025-04-10 13:50:37 +01:00
Mariell Hoversholm 757be6365a CI: Bump golangci-lint to 2.0.2 (#103572) 2025-04-10 14:42:23 +02:00
xavi 5053aa576d [IAM] Prepend AppSubURL to redirectURI before validating it (#103475) 2025-04-10 11:15:19 +02:00
Will Browne 53126eb307 Chore: Disable snapshot flag for plugins API test (#103733)
disable snapshot flag for test
2025-04-10 09:57:20 +01:00