Commit Graph

15278 Commits

Author SHA1 Message Date
Jean-Philippe Quéméner 5897024dfe feat(unified-storage): enhance gRPC client with dskit (#101035) 2025-02-20 12:34:52 +01:00
Eric Leijonmarck 32643c933e LBAC for datasources: GA (#99511)
* GA: feature toggle removal of `teamHttpHeaders`

* Apply suggestions from code review

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>

---------

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
2025-02-20 10:26:46 +00:00
Igor Suleymanov 6ccc56814c Add resource annotations for storing manager properties (#99683)
What is this feature?

This change adds properties and known annotations to store them in for recording resource manager information, such as:

The type (kind) of the manager (ex. Terraform / kubectl / etc.)
The identity of the manager (ex. grafana/terraform-provider-grafana)
Whether the managers allows the resource to be edited by others.
Whether a resource is temporarily excluded from the manager's control.
These annotations are inspired by Kubernetes field management API (https://kubernetes.io/docs/reference/using-api/server-side-apply/#field-management) and known Kubernetes annotations
(https://kubernetes.io/docs/reference/labels-annotations-taints/#app-kubernetes-io-managed-by).

It also adds annotations for storing information about the source of a provisioned resource, such as path, checksum & timestamp.

Why do we need this feature?

To make it possible to mark resources as managed by specific managers, modifying how these resources appear in the UI and are treated in the backend APIs.

For example, we'd like to make managed resources read-only, or show specific docs / workflows based on the tool which is used to manage resources and so on.

The identity is required for ensuring that managers of the same kind can still be told apart.

Who is this feature for?

For as-code practitioners and API users.

---------

Signed-off-by: Igor Suleymanov <igor.suleymanov@grafana.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2025-02-20 11:39:12 +02:00
Ivana Huckova 9eda0f44ac Update ErrRequestErrorBase from [plugin.downstreamError] to [plugin.requestFailureError] (#100965)
* Update ErrRequestErrorBase to make it more clear for developers

* Trigger build

* requestError -> requestFailureError

* Fix test

* Update pkg/plugins/backendplugin/grpcplugin/client_v2.go

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>

---------

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2025-02-20 10:23:53 +01:00
Ryan McKinley c654a580f7 Authz: Add builtin provisioning access policy (#101000) 2025-02-20 12:17:52 +03:00
Ivana Huckova 30aa676724 Elasticsearch: Invalid URL and unsupported protocol should be downstream errors (#100886)
* Invalid URL and unsupported protocol should be downstream errors

* Fix lint

* Change from errors.Is to errors.As
2025-02-20 10:04:48 +01:00
Charandas f69e81facf K8s: reduce discovery requests pressure on aggregated services (#101012) 2025-02-20 04:51:15 +02:00
Stephanie Hingtgen 9637ebd2fa K8s: Folder: Delete parent last (#101022) 2025-02-20 02:16:05 +02:00
Stephanie Hingtgen 29fe2df00a Revert "feat(unified-storage): enhance gRPC client with dskit" (#101020)
Revert "feat(unified-storage): enhance gRPC client with dskit (#100993)"

This reverts commit 3f8a34303c.
2025-02-20 01:43:58 +02:00
Stephanie Hingtgen 146af8f2be K8s: Dashboards: Only get folder if exists on dashboard (#101017) 2025-02-20 00:40:05 +02:00
Todd Treece 55aaf4aac0 Metrics: Add deny list in MultiRegistry (#101010) 2025-02-19 23:11:26 +02:00
Charandas b00f2e02c7 K8s: don't publish metrics for local services that are always available (#101003) 2025-02-19 22:39:40 +02:00
Todd Treece 94c6f7d1e5 K8s: Remove duplicate aggregation metric (#101002) 2025-02-19 22:30:45 +02:00
Todd Treece f74092b262 K8s: Add discovery client (#100995) 2025-02-19 14:35:00 -05:00
Ryan McKinley 8c21a49c35 Chore: Update go-github dependencies (#100994) 2025-02-19 21:06:46 +02:00
Jean-Philippe Quéméner 3f8a34303c feat(unified-storage): enhance gRPC client with dskit (#100993) 2025-02-19 19:58:10 +01:00
Stephanie Hingtgen 62d502086e K8s: Dualwriter mode3: Return error from unistore (#100992) 2025-02-19 20:40:17 +02:00
maicon fd377cfe66 Unistore: map grpc status to http status (#100942)
* Unistore: map grpc status to http status

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

---------

Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
Co-authored-by: Georges Chaudy <chaudyg@gmail.com>
2025-02-19 15:29:57 -03:00
Stephanie Hingtgen 95278d7552 K8s: Folders: Add pagination for children (#100978) 2025-02-19 19:06:26 +01:00
Ivana Huckova 8986df26a5 Azure Monitor: Set error source in http and user errors accordingly (#100873) 2025-02-19 18:10:58 +01:00
Matthew Jacobson 75c4c5ca0f Alerting: Upgrade grafana/alerting to 92d5f29 (#100982)
* Alerting: Upgrade grafana/alerting to 92d5f29

Includes:
- Add more context to log in PipelineAndStateTimestampCoordinationStage (#277)
- Update Alertmanager fork to latest commit (#279)
- Copy http client from Grafana (#281)

* Satisfy signature change from grafana/alerting #281 (http client)
2025-02-19 18:49:46 +02:00
Georges Chaudy b850c9fa68 unistore: Add missing verb to compile (#100972)
Add missing verb to compile
2025-02-19 17:06:26 +02:00
Ryan McKinley 5a40c84568 DualWriter: Support managed DualWriter (#100881) 2025-02-19 17:50:39 +03:00
Zoltán Bedi 5a7916133e Chore: Remove sqlQuerybuilderFunctionParameters feature toggle (#100809)
* chore: remove `sqlQuerybuilderFunctionParameters` ff

* Update packages/grafana-sql/src/components/visual-query-builder/SelectRow.tsx

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>

---------

Co-authored-by: ismail simsek <ismailsimsek09@gmail.com>
2025-02-19 15:38:27 +01:00
Alexander Zobnin fcb88f6ccc Zanzana: revert cluster store for fixed roles (#100958)
* Zanzana: revert cluster store for fixed roles

* update go workspace
2025-02-19 13:53:25 +01:00
Giuseppe Guerra 011726c80f Plugins: Update DefaultSignature function signature in PluginSource interface (#100519)
* Plugins CDN: Add support for signature type and signature org

* Fall-back to valid signature if the config is not supported

* Move CDN signature code to DefaultSignature

* fix tests
2025-02-19 12:19:45 +01:00
Karl Persson a897ec3426 Authn: grpc errors (#100951)
* update authlib

* Map to grpc status
2025-02-19 11:46:48 +01:00
Karl Persson 16c389a79a Auth: Use authinfo instead (#100957)
Use authinfo instead
2025-02-19 11:41:18 +01:00
Ieva e93ff154df Chore: bump authlib version (#100879)
* bump authlib version

* update other authlib deps
2025-02-19 08:37:32 +00:00
Charandas 883f3c5ce2 K8s: add a bool setting to select request header auth versus enterprise behavior (#100877) 2025-02-19 05:14:22 +02:00
Stephanie Hingtgen 3e6f40c873 K8s: Move to one feature toggle for folders and dashboards (#100911) 2025-02-19 01:11:26 +02:00
Ryan McKinley 66932600ec K8s: DecisionNoOpinion for claims.TypeAnonymous (#100880) 2025-02-18 13:49:54 -08:00
Stephanie Hingtgen 67be9aeed6 K8s: Search fallback: Support all sort by methods (#100776) 2025-02-18 12:30:11 -06:00
Ivana Huckova 67d8610e31 SQL data sources: Use correct error source for sql processing errors (#100872)
* SQL data sources: Use correct error source for sql processing errors

* Fix lint

* Fix  cyclomatic complexity

* Nit rename variable to make it more clear what those errors are
2025-02-18 18:24:44 +01:00
Karl Persson 4df398c084 Authz: Sync authlib and update authz client setup code (#100817)
* Sync authlib and update setup code for authz client
2025-02-18 09:09:20 +01:00
Ezequiel Victorero 9df6412e92 Reporting: Add new creation drawer feature flag (#100759)
Reporting: Add new creation drawer
2025-02-17 16:05:46 -03:00
Mat Ryer ff7ba54cbc Investigations: Add experimental app platform backend (#100584)
* add investigations group?

* Investigations: Add experimental app platform backend

* change `grafana-app-sdk/logging` version

* investigations: add feature flag to test

---------

Co-authored-by: Sven Grossmann <svennergr@gmail.com>
2025-02-17 19:19:22 +01:00
Andrej Ocenas 78ef9fd9d9 QueryLibrary: rename API from peakq to querylibrary (#100813) 2025-02-17 17:49:11 +01:00
Ashley Harrison 7a6f4ced06 Themes: Temporary fix for initialising saved grafanacon themes (#100810)
temporary fix for initialising saved grafanacon themes
2025-02-17 16:39:04 +00:00
Hugo Kiyodi Oshiro 29afe7d2cc Plugins: Remove managedPluginsInstall feature toggle (#100416)
* Plugins: Remove managedPluginsInstall feature toggle

Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
2025-02-17 16:07:41 +01:00
Karl Persson e9b2f69137 Authz: Only have two modes for authz client (#100803)
* Only have "inproc" and "clod" mode
2025-02-17 14:37:25 +01:00
Roberto Jiménez Sánchez 8edfff1bba [Enterprise] Consolidate extensions folders and keep them around (#98486)
* WIP: copy approach

* Fix package name

* Do not ignore .keep for frontend extensions

* Add keep file for frontend extensions

* Tweak makefile to generate enterprise swagger or not

* Remove duplicate imports

* Add build extensions

* Add CMD extensions

* Add keep to e2e extensions

* Add .keep

* Reduce file structure changes

* Ignore boring crypto

* Add e2e extensions keep file

* Remove enterprise file

* Update .gitignore

* Move things around

* Update git ignore

* Consolidate backend extensions folder

* Move enterprise deps

* Update comment

* Do not use build tags

* Ignore setting enterprise

* Revert changes in makefile

* Revert package changes

* Add back extensions main.go

* Update git ignore

* Ignore spanner tests

* Trick ignore files only by git

* Add .ignore file to CODEOWNERS for frontend-ops

* Fix issue with noisy duplicate targets
2025-02-17 14:00:21 +01:00
Sonia Aguilar 2014d27def Alerting: Add alert rule version history - part1 (#99490)
* Add alertingRuleVersionHistory feature toggle

* WIP: Add version history tab

* revert temp change in index.ts

* wip2

* --wip--

* sync code with the BE changes in the endpoint

* add translations

* Add translations

* use ff only for restore feature

* WIP: Add tracking, make version required, and start mapping dif results
Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>

* Tweak more translations and improve types

* Add button to show/hide JSON diff

* update type for top level rule fields

* Create types

* Make updated_by/version properties optional

* Update mocks to remove updated by and version

* add comments to restore code

* rename fetature flag, as we use this one only for the restore feature

* Update version history to handle special cases

* Add diff numbers

* Fix conflicts

* Move generic computeVersionDiff to a utils file

* Update DOM structure of version summary and tidy up types

* Add tests for version comparison logic

* Lint fix utils file

* Rename props and add docs

* Change to EmptyState and log when no versions

* Remove CreatedBy component and simplify

* Add missing i18n for version history

* add test for computeVersionDiff

* update test

* fix number diff order and add a test

* fix prettier

* fix prettier

* Add promise resolve back in

* Rename to humanReadableDiff and tweak translation

* Show tab for recording rules as well

* Split components out to separate files

* Add optional interval seconds

* Update i18n

* Remove commented code

* Remove value

* Remove unneeded version

* Consistent rendering of updated by

* Mode parseVersionInfo to a separate pure function

* update invalidate/provide tags for getAlertVersionHistory

* Use checkedVersions state only in the parent component

* update getSpecialUidMap name and create an interface

* Fix prettier

* update tab description

* use set instead of map for checkedVersions

---------

Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com>
2025-02-17 13:25:32 +01:00
Dominik Prokop c9250c9135 Transformation: Add support for variables to ALL transformations (#100225)
* Transformation: generic support for variables, yay

* clean up value matcher editors

* clean

* clean up filterByValue

* more

* clean

* clean

* more!

* lint

* Revert "Transformation: generic support for variables, yay"

This reverts commit deec7c306b.

* Bump scenes to canary

* filterByValue - remove irrelevant tests

* filterByName tests update

* calculateField test update

* nit

* is that gonna work?

* Update grafana-data tscnig config to use grafana-ui's react table types

---------

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: oscarkilhed <oscar.kilhed@grafana.com>
2025-02-17 13:07:11 +01:00
Mariell Hoversholm f535a7804f Provisioning: Update types (#100722)
* Provisioning: Remove S3

* Provisioning: Use URL for GitHub

Co-Authored-By: Ryan McKinley <ryantxu@gmail.com>
Co-Authored-By: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Provisioning: Use workflow list

Co-Authored-By: =?UTF-8?q?Roberto=20Jim=C3=A9nez=20S=C3=A1nchez?= <roberto.jimenez@grafana.com>

* Provisioning: Model secrets

* Provisioning: Define a total in the job summary

* Provisioning: Generate code

* Provisioning: Update testdata

---------

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
Co-authored-by: =?UTF-8?q?Roberto=20Jim=C3=A9nez=20S=C3=A1nchez?= <roberto.jimenez@grafana.com>
2025-02-17 12:45:23 +01:00
Karl Persson 6eeb28e312 Authn: use authenticator for grpc (#99573)
* Remove usage of grpc-authenticator

* Cleanup client construction code
2025-02-17 10:58:59 +01:00
Charandas ea788975e0 K8s: refactor build handler chain func to allow easier injection from enterprise (#100777) 2025-02-15 04:08:00 +02:00
Stephanie Hingtgen 9494e6eb37 K8s: Search fallback: Support tag search (#100767) 2025-02-14 16:57:10 -05:00
Stephanie Hingtgen b89fd287c7 K8s: Dashboards: Fix history list (#100763) 2025-02-14 22:12:18 +02:00
Will Assis 77fd572973 dont return not found error in mode 2 (#100758)
* dual writer: dont return not found error in mode 2 when failing to find object in unistore
2025-02-14 20:39:51 +02:00