Documentation
¶
Overview ¶
Package runnerpool provides a runner implementation based on a pool pattern for executing multiple units concurrently.
Index ¶
- func Build(ctx context.Context, l log.Logger, ...) (common.StackRunner, error)
- func NewRunnerPoolStack(l log.Logger, terragruntOptions *options.TerragruntOptions, ...) (common.StackRunner, error)
- type DAGRunner
- type DAGRunnerOption
- type RunResult
- type Runner
- func (r *Runner) GetStack() *common.Stack
- func (r *Runner) JSONUnitDeployOrder(terraformCommand string) (string, error)
- func (r *Runner) ListStackDependentUnits() map[string][]string
- func (r *Runner) LogUnitDeployOrder(l log.Logger, terraformCommand string) error
- func (r *Runner) Run(ctx context.Context, l log.Logger, opts *options.TerragruntOptions) error
- func (r *Runner) SetParseOptions(parserOptions []hclparse.Option)
- func (r *Runner) SetReport(report *report.Report)
- func (r *Runner) SetTerragruntConfig(config *config.TerragruntConfig)
- func (r *Runner) WithOptions(opts ...common.Option) *Runner
- type UnitExecutor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Build ¶
func Build(ctx context.Context, l log.Logger, terragruntOptions *options.TerragruntOptions, opts ...common.Option) (common.StackRunner, error)
Build stack runner using discovery and queueing mechanisms.
func NewRunnerPoolStack ¶
func NewRunnerPoolStack(l log.Logger, terragruntOptions *options.TerragruntOptions, discovered discovery.DiscoveredConfigs, opts ...common.Option) (common.StackRunner, error)
NewRunnerPoolStack creates a new stack from discovered units.
Types ¶
type DAGRunner ¶
type DAGRunner struct {
// contains filtered or unexported fields
}
DAGRunner orchestrates concurrent execution over a DAG.
func NewDAGRunner ¶
NewDAGRunner creates a new DAGRunner with the given options and a pre-built queue.
type DAGRunnerOption ¶
type DAGRunnerOption func(*DAGRunner)
DAGRunnerOption is a function that modifies a DAGRunner.
func WithMaxConcurrency ¶
func WithMaxConcurrency(maxConc int) DAGRunnerOption
WithMaxConcurrency sets the concurrency for the DAGRunner.
func WithRunner ¶
func WithRunner(runner UnitExecutor) DAGRunnerOption
WithRunner sets the UnitExecutor for the DAGRunner.
type Runner ¶
Runner implements the Stack interface for runner pool execution.
func (*Runner) JSONUnitDeployOrder ¶
JSONUnitDeployOrder returns the order of units to be processed for a given Terraform command in JSON format.
func (*Runner) ListStackDependentUnits ¶
ListStackDependentUnits returns a map of units and their dependent units in the stack.
func (*Runner) LogUnitDeployOrder ¶
LogUnitDeployOrder logs the order of units to be processed for a given Terraform command.
func (*Runner) Run ¶
Run executes the stack according to TerragruntOptions and returns the first error (or a joined error) once execution is finished.
func (*Runner) SetParseOptions ¶
SetParseOptions sets the ParseOptions for the stack.
func (*Runner) SetTerragruntConfig ¶
func (r *Runner) SetTerragruntConfig(config *config.TerragruntConfig)
SetTerragruntConfig sets the config for the stack.