PluginManager: Increase DI priority (#32111)

* PluginManager: Increase DI priority

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* BackendPluginManager: Don't rely on Init

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* BackendPluginManager: Fix tests

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Simplify code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Remove stale field

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* Simplify code

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
This commit is contained in:
Arve Knudsen
2021-03-19 12:20:46 +01:00
committed by GitHub
co-authored by Marcus Efraimsson
parent 862cd473eb
commit d3544d6df1
5 changed files with 25 additions and 35 deletions
+5 -12
View File
@@ -27,7 +27,10 @@ import (
)
func init() {
registry.RegisterServiceWithPriority(&manager{}, registry.MediumHigh)
registry.RegisterServiceWithPriority(&manager{
logger: log.New("plugins.backend"),
plugins: map[string]backendplugin.Plugin{},
}, registry.MediumHigh)
}
type manager struct {
@@ -37,14 +40,9 @@ type manager struct {
pluginsMu sync.RWMutex
plugins map[string]backendplugin.Plugin
logger log.Logger
pluginSettings map[string]pluginSettings
}
func (m *manager) Init() error {
m.plugins = make(map[string]backendplugin.Plugin)
m.logger = log.New("plugins.backend")
m.pluginSettings = extractPluginSettings(m.Cfg)
return nil
}
@@ -65,11 +63,6 @@ func (m *manager) Register(pluginID string, factory backendplugin.PluginFactoryF
return fmt.Errorf("backend plugin %s already registered", pluginID)
}
pluginSettings := pluginSettings{}
if ps, exists := m.pluginSettings[pluginID]; exists {
pluginSettings = ps
}
hostEnv := []string{
fmt.Sprintf("GF_VERSION=%s", m.Cfg.BuildVersion),
fmt.Sprintf("GF_EDITION=%s", m.License.Edition()),
@@ -89,7 +82,7 @@ func (m *manager) Register(pluginID string, factory backendplugin.PluginFactoryF
}
hostEnv = append(hostEnv, m.getAWSEnvironmentVariables()...)
pluginSettings := getPluginSettings(pluginID, m.Cfg)
env := pluginSettings.ToEnv("GF_PLUGIN", hostEnv)
pluginLogger := m.logger.New("pluginId", pluginID)