Plugins: Remove pkg/infra/fs, pkg/infra/tracing and pkg/infra/process dependencies from pkg/plugins (#115798)

* remove dependency on packages

* update tests

* trigger
This commit is contained in:
Will Browne
2026-01-05 11:12:31 +00:00
committed by GitHub
parent 4e3039e4bd
commit 70b1053ad1
33 changed files with 131 additions and 134 deletions
@@ -3,13 +3,14 @@ package httpclientprovider
import (
"testing"
"github.com/grafana/grafana/pkg/services/validations"
"github.com/grafana/grafana-aws-sdk/pkg/awsauth"
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
"github.com/grafana/grafana/pkg/infra/tracing"
"github.com/grafana/grafana/pkg/setting"
"github.com/stretchr/testify/require"
"github.com/grafana/grafana/pkg/infra/tracing"
"github.com/grafana/grafana/pkg/plugins/config"
"github.com/grafana/grafana/pkg/services/validations"
"github.com/grafana/grafana/pkg/setting"
)
func TestHTTPClientProvider(t *testing.T) {
@@ -77,7 +78,7 @@ func TestHTTPClientProvider(t *testing.T) {
newProviderFunc = origNewProviderFunc
})
tracer := tracing.InitializeTracerForTest()
_ = New(&setting.Cfg{PluginSettings: setting.PluginSettings{"example": {"har_log_enabled": "true"}}}, &validations.OSSDataSourceRequestURLValidator{}, tracer)
_ = New(&setting.Cfg{PluginSettings: config.PluginSettings{"example": {"har_log_enabled": "true"}}}, &validations.OSSDataSourceRequestURLValidator{}, tracer)
require.Len(t, providerOpts, 1)
o := providerOpts[0]
require.Len(t, o.Middlewares, 10)
@@ -5,12 +5,13 @@ import (
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
httplogger "github.com/grafana/grafana-plugin-sdk-go/experimental/http_logger"
"github.com/grafana/grafana/pkg/setting"
"github.com/grafana/grafana/pkg/plugins/config"
)
const HTTPLoggerMiddlewareName = "http-logger"
func HTTPLoggerMiddleware(cfg setting.PluginSettings) sdkhttpclient.Middleware {
func HTTPLoggerMiddleware(cfg config.PluginSettings) sdkhttpclient.Middleware {
return sdkhttpclient.NamedMiddlewareFunc(HTTPLoggerMiddlewareName, func(opts sdkhttpclient.Options, next http.RoundTripper) http.RoundTripper {
datasourceType, exists := opts.Labels["datasource_type"]
if !exists {
@@ -29,7 +30,7 @@ func HTTPLoggerMiddleware(cfg setting.PluginSettings) sdkhttpclient.Middleware {
})
}
func httpLoggingEnabled(cfg setting.PluginSettings) bool {
func httpLoggingEnabled(cfg config.PluginSettings) bool {
for _, settings := range cfg {
if enabled := settings["har_log_enabled"]; enabled == "true" {
return true
@@ -38,7 +39,7 @@ func httpLoggingEnabled(cfg setting.PluginSettings) bool {
return false
}
func getLoggerSettings(datasourceType string, cfg setting.PluginSettings) (enabled bool, path string) {
func getLoggerSettings(datasourceType string, cfg config.PluginSettings) (enabled bool, path string) {
settings, ok := cfg[datasourceType]
if !ok {
return
@@ -9,15 +9,17 @@ import (
"testing"
"time"
"github.com/stretchr/testify/require"
"github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
"github.com/grafana/grafana-plugin-sdk-go/experimental/e2e/storage"
"github.com/grafana/grafana/pkg/setting"
"github.com/stretchr/testify/require"
"github.com/grafana/grafana/pkg/plugins/config"
)
func TestHTTPLoggerMiddleware(t *testing.T) {
t.Run("Should return middleware name", func(t *testing.T) {
mw := HTTPLoggerMiddleware(setting.PluginSettings{})
mw := HTTPLoggerMiddleware(config.PluginSettings{})
middlewareName, ok := mw.(httpclient.MiddlewareName)
require.True(t, ok)
require.Equal(t, HTTPLoggerMiddlewareName, middlewareName.MiddlewareName())
@@ -27,7 +29,7 @@ func TestHTTPLoggerMiddleware(t *testing.T) {
tempPath := path.Join(os.TempDir(), fmt.Sprintf("http_logger_test_%d.har", time.Now().UnixMilli()))
ctx := &testContext{}
finalRoundTripper := ctx.createRoundTripper("finalrt")
mw := HTTPLoggerMiddleware(setting.PluginSettings{"example-datasource": {"har_log_enabled": "false", "har_log_path": tempPath}})
mw := HTTPLoggerMiddleware(config.PluginSettings{"example-datasource": {"har_log_enabled": "false", "har_log_path": tempPath}})
rt := mw.CreateMiddleware(httpclient.Options{Labels: map[string]string{"datasource_type": "example-datasource"}}, finalRoundTripper)
require.NotNil(t, rt)
@@ -54,7 +56,7 @@ func TestHTTPLoggerMiddleware(t *testing.T) {
}()
ctx := &testContext{}
finalRoundTripper := ctx.createRoundTripper("finalrt")
mw := HTTPLoggerMiddleware(setting.PluginSettings{"example-datasource": {"har_log_enabled": "true", "har_log_path": f.Name()}})
mw := HTTPLoggerMiddleware(config.PluginSettings{"example-datasource": {"har_log_enabled": "true", "har_log_path": f.Name()}})
rt := mw.CreateMiddleware(httpclient.Options{Labels: map[string]string{"datasource_type": "example-datasource"}}, finalRoundTripper)
require.NotNil(t, rt)