Plugins: Remove unnecessary error result from env vars interface (#73224)

* remove error from interface

* fix test
pull/72726/head^2
Will Browne 2 years ago committed by GitHub
parent 16d24a8429
commit c830c01e61
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      pkg/plugins/envvars/envvars.go
  2. 14
      pkg/plugins/envvars/envvars_test.go
  3. 6
      pkg/plugins/manager/pipeline/initialization/steps.go
  4. 6
      pkg/plugins/manager/pipeline/initialization/steps_test.go

@ -16,7 +16,7 @@ import (
)
type Provider interface {
Get(ctx context.Context, p *plugins.Plugin) ([]string, error)
Get(ctx context.Context, p *plugins.Plugin) []string
}
type Service struct {
@ -31,7 +31,7 @@ func NewProvider(cfg *config.Cfg, license plugins.Licensing) *Service {
}
}
func (s *Service) Get(ctx context.Context, p *plugins.Plugin) ([]string, error) {
func (s *Service) Get(_ context.Context, p *plugins.Plugin) []string {
hostEnv := []string{
fmt.Sprintf("GF_VERSION=%s", s.cfg.BuildVersion),
}
@ -62,7 +62,7 @@ func (s *Service) Get(ctx context.Context, p *plugins.Plugin) ([]string, error)
hostEnv = append(hostEnv, s.tracingEnvVars(p)...)
ev := getPluginSettings(p.ID, s.cfg).asEnvVar("GF_PLUGIN", hostEnv)
return ev, nil
return ev
}
func (s *Service) tracingEnvVars(plugin *plugins.Plugin) []string {

@ -40,8 +40,7 @@ func TestInitializer_envVars(t *testing.T) {
},
}, licensing)
envVars, err := envVarsProvider.Get(context.Background(), p)
require.NoError(t, err)
envVars := envVarsProvider.Get(context.Background(), p)
assert.Len(t, envVars, 6)
assert.Equal(t, "GF_PLUGIN_CUSTOM_ENV_VAR=customVal", envVars[0])
assert.Equal(t, "GF_VERSION=", envVars[1])
@ -301,8 +300,7 @@ func TestInitializer_tracingEnvironmentVariables(t *testing.T) {
} {
t.Run(tc.name, func(t *testing.T) {
envVarsProvider := NewProvider(tc.cfg, nil)
envVars, err := envVarsProvider.Get(context.Background(), tc.plugin)
require.NoError(t, err)
envVars := envVarsProvider.Get(context.Background(), tc.plugin)
tc.exp(t, envVars)
})
}
@ -326,10 +324,7 @@ func TestInitializer_oauthEnvVars(t *testing.T) {
GrafanaAppURL: "https://myorg.com/",
Features: featuremgmt.WithFeatures(featuremgmt.FlagExternalServiceAuth),
}, nil)
envVars, err := envVarsProvider.Get(context.Background(), p)
require.NoError(t, err)
assert.Len(t, envVars, 5)
envVars := envVarsProvider.Get(context.Background(), p)
assert.Equal(t, "GF_VERSION=", envVars[0])
assert.Equal(t, "GF_APP_URL=https://myorg.com/", envVars[1])
assert.Equal(t, "GF_PLUGIN_APP_CLIENT_ID=clientID", envVars[2])
@ -346,8 +341,7 @@ func TestInitalizer_awsEnvVars(t *testing.T) {
AWSAllowedAuthProviders: []string{"grafana_assume_role", "keys"},
AWSExternalId: "mock_external_id",
}, nil)
envVars, err := envVarsProvider.Get(context.Background(), p)
require.NoError(t, err)
envVars := envVarsProvider.Get(context.Background(), p)
assert.ElementsMatch(t, []string{"GF_VERSION=", "AWS_AUTH_AssumeRoleEnabled=true", "AWS_AUTH_AllowedAuthProviders=grafana_assume_role,keys", "AWS_AUTH_EXTERNAL_ID=mock_external_id"}, envVars)
})
}

@ -46,11 +46,7 @@ func (b *BackendClientInit) Initialize(ctx context.Context, p *plugins.Plugin) (
return nil, errors.New("could not find backend factory for plugin")
}
env, err := b.envVarProvider.Get(ctx, p)
if err != nil {
return nil, err
}
if backendClient, err := backendFactory(p.ID, p.Logger(), env); err != nil {
if backendClient, err := backendFactory(p.ID, p.Logger(), b.envVarProvider.Get(ctx, p)); err != nil {
return nil, err
} else {
p.RegisterClient(backendClient)

@ -124,9 +124,9 @@ type fakeEnvVarsProvider struct {
GetFunc func(ctx context.Context, p *plugins.Plugin) []string
}
func (f *fakeEnvVarsProvider) Get(ctx context.Context, p *plugins.Plugin) ([]string, error) {
func (f *fakeEnvVarsProvider) Get(ctx context.Context, p *plugins.Plugin) []string {
if f.GetFunc != nil {
return f.GetFunc(ctx, p), nil
return f.GetFunc(ctx, p)
}
return nil, nil
return nil
}

Loading…
Cancel
Save