61 lines
2.5 KiB
Go
61 lines
2.5 KiB
Go
package adapter
|
|
|
|
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
|
|
|
|
// PluginInstaller is the module name for the plugin installer service.
|
|
PluginInstaller = plugininstaller.ServiceName
|
|
|
|
// Provisioning is the module name for the provisioning service.
|
|
Provisioning = provisioning.ServiceName
|
|
|
|
// Tracing is the module name for the tracing service.
|
|
Tracing = tracing.ServiceName
|
|
|
|
// GrafanaAPIServer is the module name for the embedded Grafana API server service.
|
|
GrafanaAPIServer = modules.GrafanaAPIServer
|
|
|
|
// BackgroundServices is the module name for the background services module.
|
|
// This module is an alias for any background service that is not explicitly listed in the dependency map.
|
|
BackgroundServices = "background-services"
|
|
|
|
// Core is the module name for the core module.
|
|
// This module is an alias for a set of service dependencies that must be running before most other services can start.
|
|
Core = "core"
|
|
|
|
// FixedRolesLoader is the module name for the fixed roles loader service.
|
|
FixedRolesLoader = accesscontrol.FixedRolesLoaderServiceName
|
|
)
|
|
|
|
// dependencyMap returns the module dependency relationships for the background service system.
|
|
// It defines the startup order and dependencies between different modules.
|
|
// Background services are automatically added as dependencies to the BackgroundServices module
|
|
// unless they are explicitly listed in this map.
|
|
func dependencyMap() map[string][]string {
|
|
return map[string][]string{
|
|
Tracing: {},
|
|
GrafanaAPIServer: {Tracing},
|
|
PluginStore: {GrafanaAPIServer},
|
|
InstallSync: {PluginStore},
|
|
PluginInstaller: {InstallSync},
|
|
FixedRolesLoader: {PluginInstaller},
|
|
Provisioning: {PluginStore, PluginInstaller, FixedRolesLoader},
|
|
Core: {GrafanaAPIServer, PluginStore, PluginInstaller, FixedRolesLoader, Provisioning, InstallSync},
|
|
BackgroundServices: {Core},
|
|
}
|
|
}
|