Documentation ¶
Index ¶
- Variables
- func NewExecutorServiceServer(registry *modules.TypeRegistry) rpcv1connect.ExecutorServiceHandler
- func NewHealthServer(logger *slog.Logger) healthv1connect.HealthHandler
- type ContainerExecutionContext
- func (c ContainerExecutionContext) BinariesDir() string
- func (c ContainerExecutionContext) GetState(ctx context.Context, key string) ([]byte, state.Metadata, error)
- func (c ContainerExecutionContext) Logger() *slog.Logger
- func (c ContainerExecutionContext) Name() string
- func (c ContainerExecutionContext) OutDir() string
- func (c ContainerExecutionContext) SetState(ctx context.Context, key string, value []byte) error
- func (c ContainerExecutionContext) StdErr() io.Writer
- func (c ContainerExecutionContext) StdOut() io.Writer
- func (c ContainerExecutionContext) WorkingDir() string
- type ExecutorServiceServer
- type GrpcExecutorHandler
- type PluginManagerServiceServer
- type RemoteStateClient
- type RemoteTaskExecutor
- type RequestResponseClient
- type StreamReceiver
- type StreamSender
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrNoReplyMsgID = errors.New("no repliesTo set - cannot handle message") ErrNoMatchingRequest = errors.New("no matching request for given message id") )
View Source
var (
ErrExecutionCompleted = errors.New("execution completed")
)
Functions ¶
func NewExecutorServiceServer ¶
func NewExecutorServiceServer(registry *modules.TypeRegistry) rpcv1connect.ExecutorServiceHandler
func NewHealthServer ¶
func NewHealthServer(logger *slog.Logger) healthv1connect.HealthHandler
Types ¶
type ContainerExecutionContext ¶
func NewContainerExecutionContext ¶
func NewContainerExecutionContext( ctx context.Context, logger *slog.Logger, name, workingDir string, sender StreamSender[*remotev1.ExecutionServerMessage], remoteState *RemoteStateClient, ) *ContainerExecutionContext
func (ContainerExecutionContext) BinariesDir ¶
func (c ContainerExecutionContext) BinariesDir() string
func (ContainerExecutionContext) Logger ¶
func (c ContainerExecutionContext) Logger() *slog.Logger
func (ContainerExecutionContext) Name ¶
func (c ContainerExecutionContext) Name() string
func (ContainerExecutionContext) OutDir ¶
func (c ContainerExecutionContext) OutDir() string
func (ContainerExecutionContext) StdErr ¶
func (c ContainerExecutionContext) StdErr() io.Writer
func (ContainerExecutionContext) StdOut ¶
func (c ContainerExecutionContext) StdOut() io.Writer
func (ContainerExecutionContext) WorkingDir ¶
func (c ContainerExecutionContext) WorkingDir() string
type ExecutorServiceServer ¶
type ExecutorServiceServer struct {
// contains filtered or unexported fields
}
func (*ExecutorServiceServer) ExecuteStream ¶
func (e *ExecutorServiceServer) ExecuteStream(ctx context.Context, stream *connect.BidiStream[remotev1.ExecutionClientMessage, remotev1.ExecutionServerMessage]) (err error)
type GrpcExecutorHandler ¶
func NewGrpcExecutorHandler ¶
func NewGrpcExecutorHandler(sender StreamSender[*remotev1.ExecutionServerMessage]) *GrpcExecutorHandler
type PluginManagerServiceServer ¶
type PluginManagerServiceServer struct {
// contains filtered or unexported fields
}
func (PluginManagerServiceServer) RegisterPluginModule ¶
func (p PluginManagerServiceServer) RegisterPluginModule(_ context.Context, request *connect.Request[remotev1.RegisterPluginModuleRequest]) (*connect.Response[remotev1.RegisterPluginModuleResponse], error)
type RemoteStateClient ¶
type RemoteStateClient struct {
// contains filtered or unexported fields
}
type RemoteTaskExecutor ¶
type RemoteTaskExecutor struct {
// contains filtered or unexported fields
}
func (*RemoteTaskExecutor) Execute ¶
func (e *RemoteTaskExecutor) Execute( ctx context.Context, startTask *remotev1.StartTaskRequest, ) (resp chan *remotev1.TaskResult, errs chan error)
type RequestResponseClient ¶
type RequestResponseClient struct {
// contains filtered or unexported fields
}
func NewRequestResponseClient ¶
func NewRequestResponseClient(logger *slog.Logger, sender StreamSender[*remotev1.ExecutionServerMessage]) *RequestResponseClient
func (*RequestResponseClient) DispatchMessages ¶
func (rrc *RequestResponseClient) DispatchMessages(receiver StreamReceiver[*remotev1.ExecutionClientMessage]) (errs chan error)
func (*RequestResponseClient) Send ¶
func (rrc *RequestResponseClient) Send( ctx context.Context, req *remotev1.ExecutionServerMessage, ) (resp *remotev1.ExecutionClientMessage, err error)
type StreamReceiver ¶
type StreamSender ¶
Click to show internal directories.
Click to hide internal directories.