airflow.models.skipmixin
¶
Module Contents¶
Attributes¶
- class airflow.models.skipmixin.SkipMixin(context=None)[source]¶
Bases:
airflow.utils.log.logging_mixin.LoggingMixin
A Mixin to skip Tasks Instances
- skip(dag_run, execution_date, tasks, session=NEW_SESSION)[source]¶
Sets tasks instances to skipped from the same dag run.
If this instance has a task_id attribute, store the list of skipped task IDs to XCom so that NotPreviouslySkippedDep knows these tasks should be skipped when they are cleared.
- Parameters
dag_run (airflow.models.dagrun.DagRun) -- the DagRun for which to set the tasks to skipped
execution_date (pendulum.DateTime) -- execution_date
tasks (Iterable[airflow.models.taskmixin.DAGNode]) -- tasks to skip (not task_ids)
session (sqlalchemy.Session) -- db session to use
- skip_all_except(ti, branch_task_ids)[source]¶
This method implements the logic for a branching operator; given a single task ID or list of task IDs to follow, this skips all other tasks immediately downstream of this operator.
branch_task_ids is stored to XCom so that NotPreviouslySkippedDep knows skipped tasks or newly added tasks should be skipped when they are cleared.