executionConditions
Specifies custom conditions for a task or a subflow to be executed or omitted. The conditions are provided as a list of flags. If no conditions are specified, a task or a subflow will execute normally.
Schema¶
Properties¶
| Property | Type | Description | 
|---|---|---|
| run_on_flags | List[str] | None | List of flags that will trigger a task to be run. | 
| skip_on_flags | List[str] | None | List of flags that will trigger a task to be skipped. | 
Remarks¶
Both the run_on_flags and skip_on_flags properties specify a logical disjunction. Hence if any of the flags present in the run_on_flags list is specified for the flow, the task will be executed. Similarly, if any of the flags present in the skip_on_flags list is specified for the flow, the task will be omitted.
If both run_on_flags and skip_on_flags contain the same entry, the execution condition is considered malformed. An attempt to run a flow containing such a condition will fail. Similarly, if a flow is run with flags present in both run_on_flags and skip_on_flags, its execution will fail.
Examples¶
Specifying only run_on_flags¶
Suppose you have a task that has to be run conditionally if either initial-calibration or weekly-calibration flags are set. The corresponding execution conditions object achieves this goal:
Specifying only skip_on_flags¶
Suppose you have a long-running task that you want to omit if only a quick calibration run is performed. If you use a flag quick-calibration to denote quick calibration runs, you can use the following execution conditions:
Using both run_on_flags and skip_on_flags¶
You can combine both run_on_flags and skip_on_flags in a single executionConditions object. For instance, consider the following execution conditions:
This specification will cause a task or subflow to run if either daily-run or weekly-run flags are specified, and omitted if quick-calibration or monday flags are present.