Plugins: Refactor plugin config into separate env var and request scoped services (#83261)

* seperate services for env + req

* merge with main

* fix tests

* undo changes to golden file

* fix linter

* remove unused fields

* split out new config struct

* provide config

* undo go mod changes

* more renaming

* fix tests

* undo bra.toml changes

* update go.work.sum

* undo changes

* trigger

* apply PR feedback
This commit is contained in:
Will Browne
2024-02-27 12:38:02 +01:00
committed by GitHub
parent d04c579fc2
commit 5edd96ae77
62 changed files with 1933 additions and 1207 deletions
+2 -2
View File
@@ -29,10 +29,10 @@ var (
type Service struct {
pluginRegistry registry.Service
cfg *config.Cfg
cfg *config.PluginManagementCfg
}
func ProvideService(pluginRegistry registry.Service, cfg *config.Cfg) *Service {
func ProvideService(pluginRegistry registry.Service, cfg *config.PluginManagementCfg) *Service {
return &Service{
pluginRegistry: pluginRegistry,
cfg: cfg,
+8 -8
View File
@@ -18,7 +18,7 @@ import (
func TestQueryData(t *testing.T) {
t.Run("Empty registry should return not registered error", func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
_, err := client.QueryData(context.Background(), &backend.QueryDataRequest{})
require.Error(t, err)
require.ErrorIs(t, err, plugins.ErrPluginNotRegistered)
@@ -63,7 +63,7 @@ func TestQueryData(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
_, err = client.QueryData(context.Background(), &backend.QueryDataRequest{
PluginContext: backend.PluginContext{
PluginID: "grafana",
@@ -79,7 +79,7 @@ func TestQueryData(t *testing.T) {
func TestCheckHealth(t *testing.T) {
t.Run("empty plugin registry should return plugin not registered error", func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
_, err := client.CheckHealth(context.Background(), &backend.CheckHealthRequest{})
require.Error(t, err)
require.ErrorIs(t, err, plugins.ErrPluginNotRegistered)
@@ -125,7 +125,7 @@ func TestCheckHealth(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
_, err = client.CheckHealth(context.Background(), &backend.CheckHealthRequest{
PluginContext: backend.PluginContext{
PluginID: "grafana",
@@ -189,7 +189,7 @@ func TestCallResource(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
err = client.CallResource(context.Background(), req, sender)
require.NoError(t, err)
@@ -252,7 +252,7 @@ func TestCallResource(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
err = client.CallResource(context.Background(), req, sender)
require.NoError(t, err)
@@ -298,7 +298,7 @@ func TestCallResource(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
err = client.CallResource(context.Background(), req, sender)
require.NoError(t, err)
@@ -366,7 +366,7 @@ func TestCallResource(t *testing.T) {
err := registry.Add(context.Background(), p)
require.NoError(t, err)
client := ProvideService(registry, &config.Cfg{})
client := ProvideService(registry, &config.PluginManagementCfg{})
err = client.CallResource(context.Background(), req, sender)
require.NoError(t, err)