// Code generated by Wire. DO NOT EDIT. //go:generate go run github.com/google/wire/cmd/wire //go:build !wireinject // +build !wireinject package server import ( "context" "github.com/harness/gitness/internal/api/controller/repo" "github.com/harness/gitness/internal/api/controller/serviceaccount" "github.com/harness/gitness/internal/api/controller/space" "github.com/harness/gitness/internal/api/controller/user" "github.com/harness/gitness/internal/auth/authn" "github.com/harness/gitness/internal/auth/authz" "github.com/harness/gitness/internal/bootstrap" "github.com/harness/gitness/internal/cron" "github.com/harness/gitness/internal/gitrpc" "github.com/harness/gitness/internal/router" "github.com/harness/gitness/internal/server" "github.com/harness/gitness/internal/store/database" "github.com/harness/gitness/internal/store/memory" "github.com/harness/gitness/types" ) // Injectors from standalone.wire.go: func initSystem(ctx context.Context, config *types.Config) (*system, error) { authorizer := authz.ProvideAuthorizer() db, err := database.ProvideDatabase(ctx, config) if err != nil { return nil, err } userStore := database.ProvideUserStore(db) tokenStore := database.ProvideTokenStore(db) controller := user.NewController(authorizer, userStore, tokenStore) bootstrapBootstrap := bootstrap.ProvideBootstrap(config, controller) systemStore := memory.New(config) serviceAccountStore := database.ProvideServiceAccountStore(db) authenticator := authn.ProvideAuthenticator(userStore, serviceAccountStore, tokenStore) spaceStore := database.ProvideSpaceStore(db) repoStore := database.ProvideRepoStore(db) gitrpcInterface, err := gitrpc.ProvideClient() if err != nil { return nil, err } repoController := repo.NewController(authorizer, spaceStore, repoStore, serviceAccountStore, gitrpcInterface) spaceController := space.NewController(authorizer, spaceStore, repoStore, serviceAccountStore) serviceaccountController := serviceaccount.NewController(authorizer, serviceAccountStore, spaceStore, repoStore, tokenStore) apiHandler := router.ProvideAPIHandler(systemStore, authenticator, repoController, spaceController, serviceaccountController, controller) gitHandler := router.ProvideGitHandler(repoStore, authenticator) webHandler := router.ProvideWebHandler(systemStore) routerRouter := router.ProvideRouter(apiHandler, gitHandler, webHandler) serverServer := server.ProvideServer(config, routerRouter) nightly := cron.NewNightly() serverSystem := newSystem(bootstrapBootstrap, serverServer, nightly) return serverSystem, nil }