Plugins: Support MT app registration (#113348)

This commit is contained in:
Todd Treece
2025-12-02 09:59:46 -05:00
committed by GitHub
parent 77e13f7ef8
commit bdf529c545
22 changed files with 385 additions and 240 deletions
@@ -4,12 +4,16 @@ import (
"github.com/grafana/grafana/pkg/infra/tracing"
"github.com/grafana/grafana/pkg/modules"
"github.com/grafana/grafana/pkg/services/accesscontrol"
"github.com/grafana/grafana/pkg/services/pluginsintegration/installsync"
"github.com/grafana/grafana/pkg/services/pluginsintegration/plugininstaller"
"github.com/grafana/grafana/pkg/services/pluginsintegration/pluginstore"
"github.com/grafana/grafana/pkg/services/provisioning"
)
const (
// InstallSync is the module name for the install sync service.
InstallSync = installsync.ServiceName
// PluginStore is the module name for the plugin store service.
PluginStore = pluginstore.ServiceName
@@ -46,10 +50,11 @@ func dependencyMap() map[string][]string {
Tracing: {},
GrafanaAPIServer: {Tracing},
PluginStore: {GrafanaAPIServer},
PluginInstaller: {PluginStore},
InstallSync: {PluginStore},
PluginInstaller: {InstallSync},
FixedRolesLoader: {PluginInstaller},
Provisioning: {PluginStore, PluginInstaller, FixedRolesLoader},
Core: {GrafanaAPIServer, PluginStore, PluginInstaller, FixedRolesLoader, Provisioning},
Core: {GrafanaAPIServer, PluginStore, PluginInstaller, FixedRolesLoader, Provisioning, InstallSync},
BackgroundServices: {Core},
}
}
@@ -30,6 +30,7 @@ import (
"github.com/grafana/grafana/pkg/services/notifications"
plugindashboardsservice "github.com/grafana/grafana/pkg/services/plugindashboards/service"
"github.com/grafana/grafana/pkg/services/pluginsintegration/angulardetectorsprovider"
"github.com/grafana/grafana/pkg/services/pluginsintegration/installsync"
"github.com/grafana/grafana/pkg/services/pluginsintegration/keyretriever/dynamic"
"github.com/grafana/grafana/pkg/services/pluginsintegration/pluginexternal"
"github.com/grafana/grafana/pkg/services/pluginsintegration/plugininstaller"
@@ -73,6 +74,7 @@ func ProvideBackgroundServiceRegistry(
dashboardServiceImpl *service.DashboardServiceImpl,
secretsGarbageCollectionWorker *secretsgarbagecollectionworker.Worker,
fixedRolesLoader *accesscontrol.FixedRolesLoader,
installSync installsync.Syncer,
// Need to make sure these are initialized, is there a better place to put them?
_ dashboardsnapshots.Service,
_ serviceaccounts.Service,
@@ -121,6 +123,7 @@ func ProvideBackgroundServiceRegistry(
dashboardServiceImpl,
secretsGarbageCollectionWorker,
fixedRolesLoader,
installSync,
)
}