Documentation
¶
Index ¶
- Constants
- func AwaitExecuteControlPlaneJob(ctx workflow.Context, req *ExecuteRequest, ...) error
- func AwaitFinalize(ctx workflow.Context, req *FinalizeRequest) error
- func AwaitRunJob(ctx workflow.Context, req *RunJobRequest) error
- func NewWorker(c tclient.Client, cfg WorkerConfig, activities ...any) worker.Worker
- type Activities
- func (a *Activities) CreateJobExecutionOutputs(ctx context.Context, jobID, executionID string, ...) (*models.AppRunnerJobExecutionOutputs, error)
- func (a *Activities) CreateJobExecutionResult(ctx context.Context, jobID, executionID string, ...) (*models.AppRunnerJobExecutionResult, error)
- func (a *Activities) EnsureExecution(ctx context.Context, req *EnsureExecutionRequest) (*EnsureExecutionResponse, error)
- func (a *Activities) Finalize(ctx context.Context, req *FinalizeRequest) error
- func (a *Activities) GetJobPlanJSON(ctx context.Context, jobID string) (string, error)
- func (a *Activities) RunJob(ctx context.Context, req *RunJobRequest) error
- func (a *Activities) UpdateJobExecution(ctx context.Context, jobID, executionID string, ...) (*models.AppRunnerJobExecution, error)
- func (a *Activities) WriteControlPlaneLogs(ctx context.Context, logStreamID string, ...) error
- func (a *Activities) WriteControlPlaneTraces(ctx context.Context, runnerID string, ...) error
- type ActivityParams
- type EnsureExecutionRequest
- type EnsureExecutionResponse
- type ExecuteRequest
- type FinalizeOutcome
- type FinalizeRequest
- type RunJobRequest
- type WorkerConfig
- type Workflows
Constants ¶
const TaskQueue = "control-plane-builds"
Variables ¶
This section is empty.
Functions ¶
func AwaitExecuteControlPlaneJob ¶
func AwaitExecuteControlPlaneJob(ctx workflow.Context, req *ExecuteRequest, opts ...*workflow.ChildWorkflowOptions) error
func AwaitFinalize ¶
func AwaitFinalize(ctx workflow.Context, req *FinalizeRequest) error
func AwaitRunJob ¶
func AwaitRunJob(ctx workflow.Context, req *RunJobRequest) error
func NewWorker ¶
NewWorker creates a worker that polls the control-plane build task queue on the given namespace client and registers the provided activities.
The ExecuteControlPlaneJob workflow runs as a child of its caller, so it inherits the caller's namespace and its RunJob activity is pinned to the control-plane build task queue in that same namespace (see workflow.go). Every namespace that starts control-plane build child workflows (components for component builds, apps for sandbox builds) must therefore run one of these workers, otherwise RunJob is scheduled on a task queue with no poller and the build hangs silently until its execution timeout.
Types ¶
type Activities ¶
type Activities struct {
// contains filtered or unexported fields
}
func NewActivities ¶
func NewActivities(params ActivityParams) *Activities
func (*Activities) CreateJobExecutionOutputs ¶
func (a *Activities) CreateJobExecutionOutputs(ctx context.Context, jobID, executionID string, req *models.ServiceCreateRunnerJobExecutionOutputsRequest) (*models.AppRunnerJobExecutionOutputs, error)
func (*Activities) CreateJobExecutionResult ¶
func (a *Activities) CreateJobExecutionResult(ctx context.Context, jobID, executionID string, req *models.ServiceCreateRunnerJobExecutionResultRequest) (*models.AppRunnerJobExecutionResult, error)
func (*Activities) EnsureExecution ¶
func (a *Activities) EnsureExecution(ctx context.Context, req *EnsureExecutionRequest) (*EnsureExecutionResponse, error)
func (*Activities) Finalize ¶
func (a *Activities) Finalize(ctx context.Context, req *FinalizeRequest) error
func (*Activities) GetJobPlanJSON ¶
func (*Activities) RunJob ¶
func (a *Activities) RunJob(ctx context.Context, req *RunJobRequest) error
func (*Activities) UpdateJobExecution ¶
func (a *Activities) UpdateJobExecution(ctx context.Context, jobID, executionID string, req *models.ServiceUpdateRunnerJobExecutionRequest) (*models.AppRunnerJobExecution, error)
func (*Activities) WriteControlPlaneLogs ¶
func (a *Activities) WriteControlPlaneLogs(ctx context.Context, logStreamID string, records []runnercontrolplane.OTELLogRecord) error
func (*Activities) WriteControlPlaneTraces ¶
func (a *Activities) WriteControlPlaneTraces(ctx context.Context, runnerID string, records []runnercontrolplane.OTELTraceRecord) error
type ActivityParams ¶
type EnsureExecutionRequest ¶
type EnsureExecutionRequest struct {
JobID string `json:"job_id" validate:"required"`
}
type EnsureExecutionResponse ¶
type EnsureExecutionResponse struct {
ExecutionID string `json:"execution_id"`
JobExecutionTimeout time.Duration `json:"job_execution_timeout"`
}
func AwaitEnsureExecution ¶
func AwaitEnsureExecution(ctx workflow.Context, req *EnsureExecutionRequest) (*EnsureExecutionResponse, error)
type ExecuteRequest ¶
type ExecuteRequest struct {
JobID string `json:"job_id" validate:"required"`
}
type FinalizeOutcome ¶
type FinalizeRequest ¶
type FinalizeRequest struct {
JobID string `json:"job_id" validate:"required"`
ExecutionID string `json:"execution_id" validate:"required"`
Outcome FinalizeOutcome `json:"outcome"`
}
type RunJobRequest ¶
type WorkerConfig ¶
type WorkerConfig struct {
MaxConcurrentActivityExecutionSize int
MaxConcurrentActivityTaskPollers int
Interceptors []interceptor.WorkerInterceptor
WorkflowPanicPolicy worker.WorkflowPanicPolicy
}
WorkerConfig configures a control-plane build worker.
type Workflows ¶
type Workflows struct{}
func NewWorkflows ¶
func NewWorkflows() *Workflows
func (*Workflows) ExecuteControlPlaneJob ¶
func (w *Workflows) ExecuteControlPlaneJob(ctx workflow.Context, req *ExecuteRequest) error