|
|
|
@ -15,7 +15,6 @@ import ( |
|
|
|
|
"github.com/grafana/grafana/pkg/plugins/backendplugin" |
|
|
|
|
"github.com/grafana/grafana/pkg/plugins/backendplugin/instrumentation" |
|
|
|
|
"github.com/grafana/grafana/pkg/plugins/manager/installer" |
|
|
|
|
"github.com/grafana/grafana/pkg/services/sqlstore" |
|
|
|
|
"github.com/grafana/grafana/pkg/setting" |
|
|
|
|
"github.com/grafana/grafana/pkg/util/errutil" |
|
|
|
|
) |
|
|
|
@ -32,7 +31,6 @@ var _ plugins.RendererManager = (*PluginManager)(nil) |
|
|
|
|
|
|
|
|
|
type PluginManager struct { |
|
|
|
|
cfg *plugins.Cfg |
|
|
|
|
sqlStore *sqlstore.SQLStore |
|
|
|
|
store map[string]*plugins.Plugin |
|
|
|
|
pluginInstaller plugins.Installer |
|
|
|
|
pluginLoader plugins.Loader |
|
|
|
@ -41,21 +39,19 @@ type PluginManager struct { |
|
|
|
|
log log.Logger |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func ProvideService(grafanaCfg *setting.Cfg, pluginLoader plugins.Loader, |
|
|
|
|
sqlStore *sqlstore.SQLStore) (*PluginManager, error) { |
|
|
|
|
func ProvideService(grafanaCfg *setting.Cfg, pluginLoader plugins.Loader) (*PluginManager, error) { |
|
|
|
|
pm := New(plugins.FromGrafanaCfg(grafanaCfg), map[plugins.Class][]string{ |
|
|
|
|
plugins.Core: corePluginPaths(grafanaCfg), |
|
|
|
|
plugins.Bundled: {grafanaCfg.BundledPluginsPath}, |
|
|
|
|
plugins.External: append([]string{grafanaCfg.PluginsPath}, pluginSettingPaths(grafanaCfg)...), |
|
|
|
|
}, pluginLoader, sqlStore) |
|
|
|
|
}, pluginLoader) |
|
|
|
|
if err := pm.Init(); err != nil { |
|
|
|
|
return nil, err |
|
|
|
|
} |
|
|
|
|
return pm, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func New(cfg *plugins.Cfg, pluginPaths map[plugins.Class][]string, pluginLoader plugins.Loader, |
|
|
|
|
sqlStore *sqlstore.SQLStore) *PluginManager { |
|
|
|
|
func New(cfg *plugins.Cfg, pluginPaths map[plugins.Class][]string, pluginLoader plugins.Loader) *PluginManager { |
|
|
|
|
return &PluginManager{ |
|
|
|
|
cfg: cfg, |
|
|
|
|
pluginLoader: pluginLoader, |
|
|
|
@ -63,7 +59,6 @@ func New(cfg *plugins.Cfg, pluginPaths map[plugins.Class][]string, pluginLoader |
|
|
|
|
store: make(map[string]*plugins.Plugin), |
|
|
|
|
log: log.New("plugin.manager"), |
|
|
|
|
pluginInstaller: installer.New(false, cfg.BuildVersion, newInstallerLogger("plugin.installer", true)), |
|
|
|
|
sqlStore: sqlStore, |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|