Workflow Preconditions
In the Workflow Orchestration, when Workflow/DAG starts to run it can check other Workflow/DAGs' states as preconditions whether to continue or not.

If preconditions are not met, the DAG won't run the tasks it is having, the tasks are skipped for that run. If preconditions are met, then the DAG will continue and execute the tasks.
These preconditions can be configured at schedule configurations in CONFIG_LOAD_SCHEDULES configuration package.
The schedule can have one or multiple other schedules configured as upstream schedules to be checked as preconditions when the Workflow/DAG executes.

Precondition type
UPSTREAM_SUCCESS
- upstream schedule must have run successfully inside given time windowUPSTREAM_FAILURE
- upstream schedule must have failed inside given time windowUPSTREAM_RUN
- upstream schedule must have run inside given time window (successful or not)UPSTREAM_NOT_RUN
- upstream schedule must not have run inside given time window (successful or not)
Time window
A time window in minutes within the upstream Workflow/DAG status is expected to be found. It is check for the end time of the upstream Workflow/DAG. It is not reasonable to have a time window more than one day in minutes.
Enabled
The precondition can be disabled by this, so it will be skipped in the precondition evaluation in the Workflow/DAG execution.
Workflow/DAG execution
In the Workflow Orchestration, the precondition decision can be seen from the task log of the first task (The START task) of the Workflow/DAG.
Below is an example of the result when all Workflow/DAG preconditions are met:

Below is an example when one of the Workflow/DAG preconditions is not met:

Manual execution of the Workflow/DAG
Workflows/DAGs can be executed manually with parameters in Workflow Orchestration by pressing Trigger DAG. This might be useful especially in the development phase. See details in the Triggering Workflow. There is also a parameter (SKIP_PRECONDITIONS) to skip the precondition check when triggering Workflow/DAG manually.
See also: