[WIP] Plugins: Refactoring backend initialization flow (#42247)

* refactoring store interface and init flow

* fix import

* fix linter

* refactor resource calling

* load with class

* re-order args

* fix tests

* fix linter

* remove old creator

* add custom config struct

* fix some tests

* cleanup

* fix linter

* add connect failure error

* remove unused err

* convert test over
This commit is contained in:
Will Browne
2022-01-14 13:30:39 +01:00
committed by GitHub
parent 7ffefc069f
commit 7694fff0ef
20 changed files with 566 additions and 580 deletions
+3 -3
View File
@@ -75,7 +75,7 @@ func (m *PluginManager) Add(ctx context.Context, pluginID, version string) error
return err
}
err = m.loadPlugins(m.cfg.PluginsPath)
err = m.loadPlugins(context.Background(), plugins.External, m.cfg.PluginsPath)
if err != nil {
return err
}
@@ -83,7 +83,7 @@ func (m *PluginManager) Add(ctx context.Context, pluginID, version string) error
return nil
}
func (m *PluginManager) AddWithFactory(_ context.Context, pluginID string, factory backendplugin.PluginFactoryFunc,
func (m *PluginManager) AddWithFactory(ctx context.Context, pluginID string, factory backendplugin.PluginFactoryFunc,
pathResolver plugins.PluginPathResolver) error {
if m.isRegistered(pluginID) {
return fmt.Errorf("plugin %s is already registered", pluginID)
@@ -94,7 +94,7 @@ func (m *PluginManager) AddWithFactory(_ context.Context, pluginID string, facto
return err
}
p, err := m.pluginLoader.LoadWithFactory(path, factory)
p, err := m.pluginLoader.LoadWithFactory(ctx, plugins.Core, path, factory)
if err != nil {
return err
}