grafana/pkg
Matthew Jacobson 32f06c6d9c
Alerting: Receiver API complete core implementation (#91738)
* Replace global authz abstraction with one compatible with uid scope

* Replace GettableApiReceiver with models.Receiver in receiver_svc

* GrafanaIntegrationConfig -> models.Integration

* Implement Create/Update methods

* Add optimistic concurrency to receiver API

* Add scope to ReceiversRead & ReceiversReadSecrets

migrates existing permissions to include implicit global scope

* Add receiver create, update, delete actions

* Check if receiver is used by rules before delete

* On receiver name change update in routes and notification settings

* Improve errors

* Linting

* Include read permissions are requirements for create/update/delete

* Alias ngalert/models to ngmodels to differentiate from v0alpha1 model

* Ensure integration UIDs are valid, unique, and generated if empty

* Validate integration settings on create/update

* Leverage UidToName to GetReceiver instead of GetReceivers

* Remove some unnecessary uses of simplejson

* alerting.notifications.receiver -> alerting.notifications.receivers

* validator -> provenanceValidator

* Only validate the modified receiver

stops existing invalid receivers from preventing modification of a valid
receiver.

* Improve error in Integration.Encrypt

* Remove scope from alert.notifications.receivers:create

* Add todos for receiver renaming

* Use receiverAC precondition checks in k8s api

* Linting

* Optional optimistic concurrency for delete

* make update-workspace

* More specific auth checks in k8s authorize.go

* Add debug log when delete optimistic concurrency is skipped

* Improve error message on authorizer.DecisionDeny

* Keep error for non-forbidden errutil errors
2024-08-26 10:47:53 -04:00
..
aggregator Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
api Team: Create permission type for team membership (#92352) 2024-08-23 12:34:34 +02:00
apimachinery Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
apis SSOSettings: Add api:s (#92018) 2024-08-21 09:16:47 +02:00
apiserver Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
build Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
bus Tracing: Standardize on otel tracing (#75528) 2023-10-03 14:54:20 +02:00
cmd Chore: Check version compatibilty when installing a plugin (#92200) 2024-08-22 13:47:00 +02:00
codegen chore(deps): Upgrade openapi dep, remove replace directive (#90609) 2024-07-18 14:42:18 -04:00
components Chore: Bump google.golang.org/grpc to 1.64.0 (#88219) 2024-05-27 12:44:39 +02:00
events Alerting: update rule versions on folder move (#88376) 2024-08-13 12:26:26 +02:00
expr Chore: Bump Go to 1.23.0 (#92105) 2024-08-21 11:40:42 -04:00
extensions K8s e2e tests: adds e2e package and 10 year certs (#91557) 2024-08-06 03:29:36 +03:00
generated K8s: Add k8s codegen PR check (#91903) 2024-08-14 11:06:37 -04:00
ifaces/gcsifaces Chore: Upgrade Go to 1.19.1 (#54902) 2022-09-12 12:03:49 +02:00
infra Chore: Bump Go to 1.23.0 (#92105) 2024-08-21 11:40:42 -04:00
kinds Dashboard Scene: Fix snapshots not displaying variables values (#88967) 2024-08-20 17:05:12 +02:00
login/social Chore: Bump Go to 1.23.0 (#92105) 2024-08-21 11:40:42 -04:00
middleware Chore: Skip gzip for apiserver routes (#92245) 2024-08-21 23:47:58 +03:00
mocks/mock_gcsifaces Chore: use any rather than interface{} (#74066) 2023-08-30 18:46:47 +03:00
models Chore: Move identity and errutil to apimachinery module (#89116) 2024-06-13 07:11:35 +03:00
modules Zanzana: Initial work to run openFGA as embedded or standalone service (#89211) 2024-06-18 10:04:18 +02:00
plugins Chore: Check version compatibilty when installing a plugin (#92200) 2024-08-22 13:47:00 +02:00
promlib Prometheus/Promlib: Remove the PrometheusDataplane feature so always enabled (#92218) 2024-08-26 08:53:38 -04:00
registry Alerting: Receiver API complete core implementation (#91738) 2024-08-26 10:47:53 -04:00
semconv Chore: Bump Go to 1.23.0 (#92105) 2024-08-21 11:40:42 -04:00
server RBAC: Add permission registry (#91247) 2024-08-02 09:32:06 +02:00
services Alerting: Receiver API complete core implementation (#91738) 2024-08-26 10:47:53 -04:00
setting Add preinstall feature to defaults.ini (#92347) 2024-08-23 10:32:23 +02:00
storage Storage: Add go.mod for apistore (#92224) 2024-08-21 14:32:01 -04:00
tests Correlations: Migrate config type to root (#91855) 2024-08-26 08:02:48 -05:00
tsdb Loki: Add dashboard and panel names as headers (#92096) 2024-08-22 21:30:43 +02:00
util Identity: Remove typed id (#91801) 2024-08-13 10:18:28 +02:00
web K8s: use contexthandler in standalone handler chain (#90102) 2024-07-08 12:22:10 -07:00
README.md Chore: Move all backend contribution documents to a single directory (#61140) 2023-01-11 11:16:52 +01:00
ruleguard.rules.go Chore: update all +build statements (#38782) 2021-09-01 17:38:56 +03:00

This directory contains the code for the Grafana backend.

The contributor documentation for Grafana's backend is in /contribute/backend/README.md.