Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( TaskName = "run_tasks_concurrent" TaskDescriptor = &types.TaskDescriptor{ Name: TaskName, Description: "Runs multiple tasks in parallel.", Category: "flow-control", Config: DefaultConfig(), Outputs: []types.TaskOutputDefinition{}, NewTask: NewTask, } )
Functions ¶
func NewTask ¶
func NewTask(ctx *types.TaskContext, options *types.TaskOptions) (types.Task, error)
Types ¶
type Config ¶
type Config struct {
Tasks []helper.RawMessageMasked `yaml:"tasks" json:"tasks" require:"A" desc:"List of tasks to execute concurrently."`
NewVariableScope bool `yaml:"newVariableScope" json:"newVariableScope" desc:"If true, create a new variable scope for child tasks."`
// Threshold behavior:
// - 0 (default): No threshold - only evaluate result when ALL tasks complete
// - >0: Set result when threshold is reached (but continue until all complete unless StopOnThreshold=true)
SuccessThreshold uint64 `` /* 136-byte string literal not displayed */
FailureThreshold uint64 `` /* 126-byte string literal not displayed */
// Early termination - if true, stop immediately when a threshold is reached
// Default: false - always wait for all tasks to complete
StopOnThreshold bool `` /* 140-byte string literal not displayed */
// Result transformation
InvertResult bool `yaml:"invertResult" json:"invertResult" desc:"If true, swap success and failure results."`
IgnoreResult bool `yaml:"ignoreResult" json:"ignoreResult" desc:"If true, always report success regardless of child task results."`
}
func DefaultConfig ¶
func DefaultConfig() Config
type Task ¶
type Task struct {
// contains filtered or unexported fields
}
func (*Task) LoadConfig ¶
Click to show internal directories.
Click to hide internal directories.