Chore: Remove Dispatch and AddHandler (#42603)

* Remove Dispatch

* Remove context.TODO()

* Remove AddHandler and Dispatch
This commit is contained in:
idafurjes
2021-12-02 18:08:59 +01:00
committed by GitHub
parent e79fe8e84e
commit c80e7764d8
28 changed files with 83 additions and 129 deletions

View File

@@ -1,6 +1,7 @@
package plugins
import (
"context"
"errors"
"github.com/grafana/grafana/pkg/bus"
@@ -11,13 +12,13 @@ import (
// Provision scans a directory for provisioning config files
// and provisions the app in those files.
func Provision(configDirectory string, pluginStore plugins.Store) error {
func Provision(ctx context.Context, configDirectory string, pluginStore plugins.Store) error {
logger := log.New("provisioning.plugins")
ap := PluginProvisioner{
log: logger,
cfgProvider: newConfigReader(logger, pluginStore),
}
return ap.applyChanges(configDirectory)
return ap.applyChanges(ctx, configDirectory)
}
// PluginProvisioner is responsible for provisioning apps based on
@@ -27,11 +28,11 @@ type PluginProvisioner struct {
cfgProvider configReader
}
func (ap *PluginProvisioner) apply(cfg *pluginsAsConfig) error {
func (ap *PluginProvisioner) apply(ctx context.Context, cfg *pluginsAsConfig) error {
for _, app := range cfg.Apps {
if app.OrgID == 0 && app.OrgName != "" {
getOrgQuery := &models.GetOrgByNameQuery{Name: app.OrgName}
if err := bus.Dispatch(getOrgQuery); err != nil {
if err := bus.DispatchCtx(ctx, getOrgQuery); err != nil {
return err
}
app.OrgID = getOrgQuery.Result.Id
@@ -40,7 +41,7 @@ func (ap *PluginProvisioner) apply(cfg *pluginsAsConfig) error {
}
query := &models.GetPluginSettingByIdQuery{OrgId: app.OrgID, PluginId: app.PluginID}
err := bus.Dispatch(query)
err := bus.DispatchCtx(ctx, query)
if err != nil {
if !errors.Is(err, models.ErrPluginSettingNotFound) {
return err
@@ -59,7 +60,7 @@ func (ap *PluginProvisioner) apply(cfg *pluginsAsConfig) error {
SecureJsonData: app.SecureJSONData,
PluginVersion: app.PluginVersion,
}
if err := bus.Dispatch(cmd); err != nil {
if err := bus.DispatchCtx(ctx, cmd); err != nil {
return err
}
}
@@ -67,14 +68,14 @@ func (ap *PluginProvisioner) apply(cfg *pluginsAsConfig) error {
return nil
}
func (ap *PluginProvisioner) applyChanges(configPath string) error {
func (ap *PluginProvisioner) applyChanges(ctx context.Context, configPath string) error {
configs, err := ap.cfgProvider.readConfig(configPath)
if err != nil {
return err
}
for _, cfg := range configs {
if err := ap.apply(cfg); err != nil {
if err := ap.apply(ctx, cfg); err != nil {
return err
}
}

View File

@@ -16,7 +16,7 @@ func TestPluginProvisioner(t *testing.T) {
expectedErr := errors.New("test")
reader := &testConfigReader{err: expectedErr}
ap := PluginProvisioner{log: log.New("test"), cfgProvider: reader}
err := ap.applyChanges("")
err := ap.applyChanges(context.Background(), "")
require.Equal(t, expectedErr, err)
})
@@ -59,7 +59,7 @@ func TestPluginProvisioner(t *testing.T) {
}
reader := &testConfigReader{result: cfg}
ap := PluginProvisioner{log: log.New("test"), cfgProvider: reader}
err := ap.applyChanges("")
err := ap.applyChanges(context.Background(), "")
require.NoError(t, err)
require.Len(t, sentCommands, 4)