mirror of
https://github.com/grafana/grafana.git
synced 2025-02-14 01:23:32 -06:00
* Picking role registration from OnCall POC branch * Fix test * Remove include actions from this PR * Removing unused permission * Adding test to DeclarePluginRoles * Add testcase to RegisterFixed role * Additional test case * Adding tests to validate plugins roles * Add test to plugin loader * Nit. * Scuemata validation * Changing the design to decouple accesscontrol from plugin management Co-authored-by: Kalle Persson <kalle.persson@grafana.com> * Fixing tests Co-authored-by: Jguer <joao.guerreiro@grafana.com> * Add missing files Co-authored-by: Jguer <joao.guerreiro@grafana.com> * Remove feature toggle check from loader * Remove feature toggleimport * Feedback Co-Authored-By: marefr <marcus.efraimsson@gmail.com> * Fix test' * Make plugins.RoleRegistry interface typed * Remove comment question * No need for json tags anymore * Nit. log * Adding the schema validation * Remove group to take plugin Name instead * Revert sqlstore -> db * Nit. * Nit. on tests Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com> * Update pkg/services/accesscontrol/plugins.go Co-authored-by: Ieva <ieva.vasiljeva@grafana.com> * Log message Co-Authored-By: marefr <marcus.efraimsson@gmail.com> * Log message Co-Authored-By: marefr <marcus.efraimsson@gmail.com> * Remove unecessary method. Update test name. Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com> * Fix linting * Update cue descriptions * Fix test Co-authored-by: Kalle Persson <kalle.persson@grafana.com> Co-authored-by: Jguer <joao.guerreiro@grafana.com> Co-authored-by: marefr <marcus.efraimsson@gmail.com> Co-authored-by: ievaVasiljeva <ieva.vasiljeva@grafana.com>
98 lines
4.6 KiB
Go
98 lines
4.6 KiB
Go
//go:build wireinject && oss
|
|
// +build wireinject,oss
|
|
|
|
package server
|
|
|
|
import (
|
|
"github.com/google/wire"
|
|
|
|
"github.com/grafana/grafana/pkg/models"
|
|
"github.com/grafana/grafana/pkg/plugins"
|
|
"github.com/grafana/grafana/pkg/plugins/backendplugin/provider"
|
|
"github.com/grafana/grafana/pkg/plugins/manager/signature"
|
|
"github.com/grafana/grafana/pkg/registry"
|
|
"github.com/grafana/grafana/pkg/server/backgroundsvcs"
|
|
"github.com/grafana/grafana/pkg/server/usagestatssvcs"
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol"
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol/acimpl"
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol/ossaccesscontrol"
|
|
"github.com/grafana/grafana/pkg/services/auth"
|
|
"github.com/grafana/grafana/pkg/services/datasources"
|
|
"github.com/grafana/grafana/pkg/services/datasources/permissions"
|
|
datasourceservice "github.com/grafana/grafana/pkg/services/datasources/service"
|
|
"github.com/grafana/grafana/pkg/services/encryption"
|
|
encryptionprovider "github.com/grafana/grafana/pkg/services/encryption/provider"
|
|
"github.com/grafana/grafana/pkg/services/kmsproviders"
|
|
"github.com/grafana/grafana/pkg/services/kmsproviders/osskmsproviders"
|
|
"github.com/grafana/grafana/pkg/services/ldap"
|
|
"github.com/grafana/grafana/pkg/services/licensing"
|
|
"github.com/grafana/grafana/pkg/services/login"
|
|
"github.com/grafana/grafana/pkg/services/login/authinfoservice"
|
|
"github.com/grafana/grafana/pkg/services/provisioning"
|
|
"github.com/grafana/grafana/pkg/services/searchusers"
|
|
"github.com/grafana/grafana/pkg/services/searchusers/filters"
|
|
"github.com/grafana/grafana/pkg/services/sqlstore/migrations"
|
|
"github.com/grafana/grafana/pkg/services/thumbs"
|
|
"github.com/grafana/grafana/pkg/services/user"
|
|
"github.com/grafana/grafana/pkg/services/validations"
|
|
"github.com/grafana/grafana/pkg/setting"
|
|
)
|
|
|
|
var wireExtsBasicSet = wire.NewSet(
|
|
auth.ProvideUserAuthTokenService,
|
|
wire.Bind(new(models.UserTokenService), new(*auth.UserAuthTokenService)),
|
|
wire.Bind(new(models.UserTokenBackgroundService), new(*auth.UserAuthTokenService)),
|
|
licensing.ProvideService,
|
|
wire.Bind(new(models.Licensing), new(*licensing.OSSLicensingService)),
|
|
setting.ProvideProvider,
|
|
wire.Bind(new(setting.Provider), new(*setting.OSSImpl)),
|
|
acimpl.ProvideService,
|
|
wire.Bind(new(accesscontrol.RoleRegistry), new(*acimpl.Service)),
|
|
wire.Bind(new(plugins.RoleRegistry), new(*acimpl.Service)),
|
|
wire.Bind(new(accesscontrol.Service), new(*acimpl.Service)),
|
|
thumbs.ProvideCrawlerAuthSetupService,
|
|
wire.Bind(new(thumbs.CrawlerAuthSetupService), new(*thumbs.OSSCrawlerAuthSetupService)),
|
|
validations.ProvideValidator,
|
|
wire.Bind(new(models.PluginRequestValidator), new(*validations.OSSPluginRequestValidator)),
|
|
provisioning.ProvideService,
|
|
wire.Bind(new(provisioning.ProvisioningService), new(*provisioning.ProvisioningServiceImpl)),
|
|
backgroundsvcs.ProvideBackgroundServiceRegistry,
|
|
wire.Bind(new(registry.BackgroundServiceRegistry), new(*backgroundsvcs.BackgroundServiceRegistry)),
|
|
datasourceservice.ProvideCacheService,
|
|
wire.Bind(new(datasources.CacheService), new(*datasourceservice.CacheServiceImpl)),
|
|
migrations.ProvideOSSMigrations,
|
|
wire.Bind(new(registry.DatabaseMigrator), new(*migrations.OSSMigrations)),
|
|
authinfoservice.ProvideOSSUserProtectionService,
|
|
wire.Bind(new(login.UserProtectionService), new(*authinfoservice.OSSUserProtectionImpl)),
|
|
encryptionprovider.ProvideEncryptionProvider,
|
|
wire.Bind(new(encryption.Provider), new(encryptionprovider.Provider)),
|
|
filters.ProvideOSSSearchUserFilter,
|
|
wire.Bind(new(user.SearchUserFilter), new(*filters.OSSSearchUserFilter)),
|
|
searchusers.ProvideUsersService,
|
|
wire.Bind(new(searchusers.Service), new(*searchusers.OSSService)),
|
|
signature.ProvideOSSAuthorizer,
|
|
wire.Bind(new(plugins.PluginLoaderAuthorizer), new(*signature.UnsignedPluginAuthorizer)),
|
|
provider.ProvideService,
|
|
wire.Bind(new(plugins.BackendFactoryProvider), new(*provider.Service)),
|
|
osskmsproviders.ProvideService,
|
|
wire.Bind(new(kmsproviders.Service), new(osskmsproviders.Service)),
|
|
ldap.ProvideGroupsService,
|
|
wire.Bind(new(ldap.Groups), new(*ldap.OSSGroups)),
|
|
permissions.ProvideDatasourcePermissionsService,
|
|
wire.Bind(new(permissions.DatasourcePermissionsService), new(*permissions.OSSDatasourcePermissionsService)),
|
|
usagestatssvcs.ProvideUsageStatsProvidersRegistry,
|
|
wire.Bind(new(registry.UsageStatsProvidersRegistry), new(*usagestatssvcs.UsageStatsProvidersRegistry)),
|
|
ossaccesscontrol.ProvideDatasourcePermissionsService,
|
|
wire.Bind(new(accesscontrol.DatasourcePermissionsService), new(*ossaccesscontrol.DatasourcePermissionsService)),
|
|
)
|
|
|
|
var wireExtsSet = wire.NewSet(
|
|
wireSet,
|
|
wireExtsBasicSet,
|
|
)
|
|
|
|
var wireExtsTestSet = wire.NewSet(
|
|
wireTestSet,
|
|
wireExtsBasicSet,
|
|
)
|