PluginManager: Make remaining plugin state non-global (#32094)
* PluginDashboards: Use plugin manager interface Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * PluginManager: Make panels non-global Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * PluginManager: Make apps non-global Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * PluginManager: Make static routes non-global Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * PluginManager: Make pluginTypes non-global Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
This commit is contained in:
@@ -6,12 +6,17 @@ import (
|
||||
"github.com/grafana/grafana/pkg/bus"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/models"
|
||||
"github.com/grafana/grafana/pkg/plugins"
|
||||
)
|
||||
|
||||
// Provision scans a directory for provisioning config files
|
||||
// and provisions the app in those files.
|
||||
func Provision(configDirectory string) error {
|
||||
ap := newAppProvisioner(log.New("provisioning.plugins"))
|
||||
func Provision(configDirectory string, pluginManager plugins.Manager) error {
|
||||
logger := log.New("provisioning.plugins")
|
||||
ap := PluginProvisioner{
|
||||
log: logger,
|
||||
cfgProvider: newConfigReader(logger, pluginManager),
|
||||
}
|
||||
return ap.applyChanges(configDirectory)
|
||||
}
|
||||
|
||||
@@ -22,13 +27,6 @@ type PluginProvisioner struct {
|
||||
cfgProvider configReader
|
||||
}
|
||||
|
||||
func newAppProvisioner(log log.Logger) PluginProvisioner {
|
||||
return PluginProvisioner{
|
||||
log: log,
|
||||
cfgProvider: newConfigReader(log),
|
||||
}
|
||||
}
|
||||
|
||||
func (ap *PluginProvisioner) apply(cfg *pluginsAsConfig) error {
|
||||
for _, app := range cfg.Apps {
|
||||
if app.OrgID == 0 && app.OrgName != "" {
|
||||
|
||||
Reference in New Issue
Block a user