Documentation ¶
Index ¶
- func RunGitalyServer(tb testing.TB, cfg config.Cfg, ...) string
- func StructErrStreamInterceptor(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, ...) error
- func StructErrUnaryInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, ...) (interface{}, error)
- type GitalyServer
- type GitalyServerOpt
- func WithBackchannelRegistry(backchannelReg *backchannel.Registry) GitalyServerOpt
- func WithConcurrencyTracker(tracker *hook.ConcurrencyTracker) GitalyServerOpt
- func WithDisablePraefect() GitalyServerOpt
- func WithDiskCache(diskCache cache.Cache) GitalyServerOpt
- func WithGitCommandFactory(gitCmdFactory git.CommandFactory) GitalyServerOpt
- func WithGitLabClient(gitlabClient gitlab.Client) GitalyServerOpt
- func WithHookManager(hookMgr hook.Manager) GitalyServerOpt
- func WithHousekeepingManager(manager housekeeping.Manager) GitalyServerOpt
- func WithLocator(locator storage.Locator) GitalyServerOpt
- func WithLogger(logger *logrus.Logger) GitalyServerOpt
- func WithPackObjectsLimiter(limiter *limithandler.ConcurrencyLimiter) GitalyServerOpt
- func WithTransactionManager(txMgr transaction.Manager) GitalyServerOpt
- type PraefectServer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RunGitalyServer ¶
func RunGitalyServer(tb testing.TB, cfg config.Cfg, registrar func(srv *grpc.Server, deps *service.Dependencies), opts ...GitalyServerOpt) string
RunGitalyServer starts gitaly server based on the provided cfg and returns a connection address. It accepts addition Registrar to register all required service instead of calling service.RegisterAll explicitly because it creates a circular dependency when the function is used in on of internal/gitaly/service/... packages.
func StructErrStreamInterceptor ¶ added in v16.1.0
func StructErrStreamInterceptor(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error
StructErrStreamInterceptor is an interceptor for streaming RPC calls that injects error metadata as detailed error. This is only supposed to be used for testing purposes as error metadata is considered to be a server-side detail. No clients should start to rely on it.
func StructErrUnaryInterceptor ¶ added in v16.1.0
func StructErrUnaryInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error)
StructErrUnaryInterceptor is an interceptor for unary RPC calls that injects error metadata as detailed error. This is only supposed to be used for testing purposes as error metadata is considered to be a server-side detail. No clients should start to rely on it.
Types ¶
type GitalyServer ¶
GitalyServer is a helper that carries additional info and functionality about gitaly (+praefect) server.
func StartGitalyServer ¶
func StartGitalyServer(tb testing.TB, cfg config.Cfg, registrar func(srv *grpc.Server, deps *service.Dependencies), opts ...GitalyServerOpt) GitalyServer
StartGitalyServer creates and runs gitaly (and praefect as a proxy) server.
func (GitalyServer) Address ¶
func (gs GitalyServer) Address() string
Address returns address of the running gitaly (or praefect) service.
func (GitalyServer) Shutdown ¶
func (gs GitalyServer) Shutdown()
Shutdown terminates running gitaly (+praefect) server.
type GitalyServerOpt ¶
type GitalyServerOpt func(gitalyServerDeps) gitalyServerDeps
GitalyServerOpt is a helper type to shorten declarations.
func WithBackchannelRegistry ¶
func WithBackchannelRegistry(backchannelReg *backchannel.Registry) GitalyServerOpt
WithBackchannelRegistry sets backchannel.Registry instance that will be used for gitaly services initialisation.
func WithConcurrencyTracker ¶
func WithConcurrencyTracker(tracker *hook.ConcurrencyTracker) GitalyServerOpt
WithConcurrencyTracker sets the PackObjectsConcurrencyTracker that will be used for gitaly services initialization.
func WithDisablePraefect ¶
func WithDisablePraefect() GitalyServerOpt
WithDisablePraefect disables setup and usage of the praefect as a proxy before the gitaly service.
func WithDiskCache ¶
func WithDiskCache(diskCache cache.Cache) GitalyServerOpt
WithDiskCache sets the cache.Cache instance that will be used for gitaly services initialisation.
func WithGitCommandFactory ¶
func WithGitCommandFactory(gitCmdFactory git.CommandFactory) GitalyServerOpt
WithGitCommandFactory sets a git.CommandFactory instance that will be used for gitaly services initialisation.
func WithGitLabClient ¶
func WithGitLabClient(gitlabClient gitlab.Client) GitalyServerOpt
WithGitLabClient sets gitlab.Client instance that will be used for gitaly services initialisation.
func WithHookManager ¶
func WithHookManager(hookMgr hook.Manager) GitalyServerOpt
WithHookManager sets hook.Manager instance that will be used for gitaly services initialisation.
func WithHousekeepingManager ¶
func WithHousekeepingManager(manager housekeeping.Manager) GitalyServerOpt
WithHousekeepingManager sets the housekeeping.Manager that will be used for Gitaly services initialization.
func WithLocator ¶
func WithLocator(locator storage.Locator) GitalyServerOpt
WithLocator sets a storage.Locator instance that will be used for gitaly services initialisation.
func WithLogger ¶
func WithLogger(logger *logrus.Logger) GitalyServerOpt
WithLogger sets a logrus.Logger instance that will be used for gitaly services initialisation.
func WithPackObjectsLimiter ¶
func WithPackObjectsLimiter(limiter *limithandler.ConcurrencyLimiter) GitalyServerOpt
WithPackObjectsLimiter sets the PackObjectsLimiter that will be used for gitaly services initialization.
func WithTransactionManager ¶
func WithTransactionManager(txMgr transaction.Manager) GitalyServerOpt
WithTransactionManager sets transaction.Manager instance that will be used for gitaly services initialisation.
type PraefectServer ¶
type PraefectServer struct {
// contains filtered or unexported fields
}
PraefectServer encapsulates information of a running Praefect server.
func StartPraefect ¶
func StartPraefect(tb testing.TB, cfg config.Config) PraefectServer
StartPraefect creates and runs a Praefect proxy. This server is created by running the external Praefect executable.
func (PraefectServer) Address ¶
func (ps PraefectServer) Address() string
Address is the address of the Praefect server.
func (PraefectServer) Shutdown ¶
func (ps PraefectServer) Shutdown()
Shutdown shuts the Praefect server down. This function is synchronous and waits for the server to exit.