Workflow Components
Flow is a container for tasks and and their orchestration logic, as well as labels, variables, inputs, outputs and triggers.
Components of a flow
A flow is a container for tasks
, their inputs
, outputs
, handling errors
and overall orchestration logic. It defines the order in which tasks are executed and how they are executed, e.g. sequentially, in parallel, based on upstream task dependencies and their state, etc.
You can define a flow declaratively using a YAML file.
A flow must have:
- identifier (
id
) - namespace
- list of tasks
Flows can also have a variety of optional properties, which you can read more about below:
Flow
Flow is a container for tasks and their orchestration logic.
Tasks
Tasks are the steps within a flow.
Namespace
Namespace is a logical grouping of flows.
Execution
Execute your flows and view the outcome.
Variables
Variables are key-value pairs that help reuse some values across tasks.
Inputs
Inputs is a list of dynamic values passed to the flow at runtime.
Outputs
Outputs allow you to pass data between tasks and flows.
Triggers
Trigger is a mechanism that automates the execution of a flow.
Labels
Labels are key-value pairs used to organize flows and executions.
Plugin Defaults
Plugin defaults are a list of default values applied to each task of a certain type within your flow(s).
Subflows
Subflows allow you to build modular and reusable workflow components.
Errors
Allow your flow to continue to operate despite errors.
Retries
Retries handle transient failures in your workflows.
Timeout
Timeout allows you to set a maximum duration for a task run.
Concurrency limits
Control concurrent executions of a given flow.
Descriptions
You can document your flows, inputs, outputs, tasks and triggers by adding a description property.
Disabled flag
The disabled flag is a boolean property that allows you to skip a flow, task or trigger.
States
States control the status of your workflow execution.
Was this page helpful?