Commit Graph

42 Commits

Author SHA1 Message Date
Charandas
a39fe593c2 K8s: remove standalone authenticator in favor of providing one through the factory (#85901) 2024-04-11 21:30:23 +02:00
Marcus Efraimsson
3e385763c5 Tracing: Improve HTTP request/middleware spans and standalone apiserver (#85715)
Fixes so that auth middleware trace/span doesn't wrap the next handlers.
Allow tracing service name to be overridden in standalone apiserver.
Change k8s api tracing operation name to KubernetesAPI from 
grafana-apiserver (which is the service name)
2024-04-11 13:28:23 +02:00
Todd Treece
72472e5eb7 K8s: Add slog wrapper (#84680) 2024-04-09 18:39:25 +03:00
Dan Cech
5dfe4cf407 Storage: Watch tests (#85496)
* basic watch tests working

* refactor to read previous event within poller

* add watch test files

* cleanup

* watch tests passing

* debug cleanup

* special handling for canceled context

* cleanup

* fix wire

* fix sqlite_sequence cleanup issue

* move watch tests to integration, wait for provisioned dashboards

* handle context deadline exceeded and eof errors

* add comment about sleep
2024-04-08 11:42:12 -04:00
Todd Treece
c01531dc79 K8s: Use tracing handler from component-base (#85560) 2024-04-04 00:39:09 +03:00
Charandas
0f1151964c K8s: standalone authenticator that allows a type of downstream forwarding (#85130) 2024-03-28 20:52:28 +02:00
Dan Cech
ef26fe95dc Storage: GuaranteedUpdate fix & other improvements (#85206)
make GuaranteedUpdate work when ignoring not found errors, increase poll frequency, fix Delete
2024-03-27 10:38:49 -04:00
Charandas
dd7d4e2656 K8s: replace a noop certKey content func with actual if available (#84524) 2024-03-25 10:12:55 -07:00
Charandas
3c42a2efd2 K8s: file storage - add sync around resource version (RV) management (#84694) 2024-03-23 23:58:48 -07:00
Marcus Efraimsson
488bbaacab Chore: Remove unused dependenices in plugin client middlewares (#84624)
* Chore: Remove unused dependenices in plugin client middlewares

* refactor logger middleware to remove cfg dependency

* hack to make tracing work in api group builders
2024-03-22 12:54:35 +01:00
Marcus Efraimsson
6c1de260a2 API Server: Standalone observability (#84789)
Adds support for logs (specify level), metrics (enable metrics and Prometheus /metrics endpoint 
and traces (jaeger or otlp) for standalone API server. This will allow any grafana core service 
part of standalone apiserver to use logging, metrics and traces as normal.
2024-03-21 17:06:32 +01:00
Andres Martinez Gotor
a705ff7892 API Server: refactor plugin ID handling (#84753) 2024-03-20 13:49:19 +01:00
Dan Cech
89f3b70e17 Storage: Add support for listing resource history (#84331)
* add support for listing resource history

* make watch handle custom label selectors properly

* fix tests

* Apply suggestions from code review

Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>

* properly handle special characters in json label matcher

* tidy up

---------

Co-authored-by: Diego Augusto Molina <diegoaugustomolina@gmail.com>
2024-03-15 19:17:54 -04:00
Charandas
b6a020148b K8s: disallow MT storage functionality for Aggregator builders (#84408) 2024-03-14 01:54:30 +02:00
Georges Chaudy
06b7f6befa k8s: ensure unified storage address is populated from config ini (#84373)
fix: ensure unified storage address is populated from config ini
2024-03-13 15:17:26 +01:00
Charandas
0eee72824c K8s: omit CABundle until insecure is false (#84323) 2024-03-12 21:58:02 +02:00
Charandas
da327ce807 K8s: enable insecure to skip server cert validation for now (#84038) 2024-03-12 01:13:14 +02:00
Dan Cech
1ffd1cc8f4 Storage: Support listing deleted entities (#84043)
* support listing deleted entities

* fold listDeleted into List
2024-03-11 13:59:54 -04:00
Georges Chaudy
15e358e3b9 k8s: add support for configuring the gRPC server address (#84006)
* k8s: add support for configuring the gRPC server address
2024-03-11 11:23:03 +02:00
Ryan McKinley
d82f3be6f7 QueryService: Use types from sdk (#84029) 2024-03-08 18:12:59 +02:00
Dan Cech
7e4badff1d Storage: Use our own key format and support unnamespaced objects (#83929)
* use our own key format and support unnamespaced objects

* fix tests
2024-03-05 16:31:39 -05:00
Charandas
e916372249 K8s: bug fixes for file storage to allow for watcher initialization on startup (#83873)
---------

Co-authored-by: Todd Treece <todd.treece@grafana.com>
2024-03-05 10:34:47 -08:00
Dan Cech
9fa9eaab44 Storage: Support get with resourceversion (#83849)
support getting old resourceversion, return explicit resource version in list
2024-03-05 10:57:32 -05:00
Dan Cech
7b4925ea37 Storage: Watch support (#82282)
* initial naive implementation

* Update pkg/services/store/entity/sqlstash/sql_storage_server.go

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

* tidy up

* add action column, batch watch events

* initial implementation of broadcast-based watcher

* fix up watch init

* remove batching, it just adds needless complexity

* use StreamWatcher

* make broadcaster generic

* add circular buffer to replay recent events to new watchers

* loop within poll until all events are read

* add index on entity_history.resource_version to support poller

* increment r.Since when we send events to consumer

* switch broadcaster and cache to use channels instead of mutexes

* cleanup

---------

Co-authored-by: Igor Suleymanov <radiohead@users.noreply.github.com>
2024-03-05 10:14:38 -05:00
Charandas
b87ec69431 K8s: add a remote services file config option to specify aggregation config (#83646) 2024-02-29 17:29:05 -08:00
Todd Treece
e5a26a3f7c K8s: Add apimachinery and apiserver packages (#83190) 2024-02-23 15:15:43 -05:00
Todd Treece
8f0431ba46 K8s: Pass ID token in X-Extra-id-token header (#82893) 2024-02-16 17:07:37 +02:00
Ryan McKinley
c879588332 APIServer: Use options pattern in standalone mode (#82760)
use options
2024-02-15 12:00:20 -08:00
Todd Treece
f593161ef6 K8s: Set X-Remote- headers for SignedInUser (#82543) 2024-02-15 12:29:36 -05:00
Todd Treece
d6e6298103 K8s: Add Aggregation to Backend Service (#81591)
Co-authored-by: Charandas Batra <charandas.batra@grafana.com>
2024-02-12 22:59:35 +02:00
Todd Treece
6d5211e172 K8s: Fix windows filepath issue in file storage (#81919)
Co-authored-by: Dan Cech <dcech@grafana.com>
2024-02-12 13:21:57 -05:00
Stephanie Hingtgen
87c3d0fb6a K8s: Update stack id validation (#82275) 2024-02-09 21:51:00 +02:00
João Calisto
42d6e176bc Feature Toggle Management: allow editing PublicPreview toggles (#81562)
* Feature Toggle Management: allow editing PublicPreview toggles

* lint

* fix a bunch of tests

* tests are passing

* add permissions unit tests back

* fix display

* close dialog after submit

* use reload method after submit

* make local development easier

* always show editing alert in the UI

* fix readme

---------

Co-authored-by: Michael Mandrus <michael.mandrus@grafana.com>
2024-02-09 18:48:56 +02:00
Stephanie Hingtgen
54a77fa55e K8s: StackIDs can be single digits (#82267) 2024-02-09 18:39:58 +02:00
Charandas
117a4b4b0a K8s: resolve crash due to looking up aggregation config when running in a K8s environment (#82125)
K8s: apply authn options only in dev mode - resolves crash due to looking up aggregation config
2024-02-07 16:43:07 -08:00
Dan Cech
1f1461734c Storage: Add support for sortBy selector (#80680)
* add support for sortBy field selector

* use label selectors instead of field selectors

* set entity_labels on create & update

* make entity server integration tests work

* test fixes

* be more consistent with handling of empty body, meta or status

* workaround for database is locked errors during migration

* fix double import of sqlite3

* rename functions and tidy up

* refactor update

* disable integration tests until we can fix the database locking issue
2024-02-07 15:05:10 -05:00
Dan Cech
156d7ae194 use in-process grpc client instead of wrapping server interface (#81926)
* use in-process grpc client instead of wrapping server interface

* comment out jwt token checks until we're ready to validate the token
2024-02-07 13:17:02 -05:00
Ryan McKinley
91754bcda5 K8s: Refactor standalone apiserver initialization (#81932) 2024-02-06 08:40:35 -08:00
Ryan McKinley
202eecccbc K8s: Update common openapi generation scripts (#81857) 2024-02-04 22:37:10 +02:00
Ryan McKinley
ba3ee60711 K8s: Allow more control over the final openapi results (#81829) 2024-02-02 14:19:45 -08:00
Ryan McKinley
651faff08a Chore: go mod tidy after apiserver refactor (#81824) 2024-02-02 23:03:19 +02:00
Todd Treece
67b6be5515 K8s: Refactor config/options for aggregation (#81739) 2024-02-01 17:27:30 -05:00