BranchDayOfWeekOperator
Apache AirflowBranches into one of two lists of tasks depending on the current day. For more information on how to use this operator, take a look at the guide: BranchDayOfWeekOperator
Access Instructions
Install the Apache Airflow provider package into your Airflow environment.
Import the module into your DAG file and instantiate it with your desired params.
Parameters
follow_task_ids_if_trueRequiredtask id or task ids to follow if criteria met
follow_task_ids_if_falseRequiredtask id or task ids to follow if criteria does not met
week_dayRequiredDay of the week to check (full name). Optionally, a set of days can also be provided using a set. Example values: "MONDAY", {"Saturday", "Sunday"} {WeekDay.TUESDAY} {WeekDay.SATURDAY, WeekDay.SUNDAY} To use WeekDay enum, import it from airflow.utils.weekday
use_task_logical_dateIf True, uses task’s logical date to compare with is_today. Execution Date is Useful for backfilling. If False, uses system’s day of the week.
use_task_execution_daydeprecated parameter, same effect as use_task_logical_date
Documentation
Branches into one of two lists of tasks depending on the current day. For more information on how to use this operator, take a look at the guide: BranchDayOfWeekOperator
Example (with single day):
from airflow.operators.empty import EmptyOperatormonday = EmptyOperator(task_id='monday')other_day = EmptyOperator(task_id='other_day')monday_check = DayOfWeekSensor(task_id='monday_check',week_day='Monday',use_task_logical_date=True,follow_task_ids_if_true='monday',follow_task_ids_if_false='other_day',dag=dag)monday_check >> [monday, other_day]
Example (with WeekDay
enum):
# import WeekDay Enumfrom airflow.utils.weekday import WeekDayfrom airflow.operators.empty import EmptyOperatorworkday = EmptyOperator(task_id='workday')weekend = EmptyOperator(task_id='weekend')weekend_check = BranchDayOfWeekOperator(task_id='weekend_check',week_day={WeekDay.SATURDAY, WeekDay.SUNDAY},use_task_logical_date=True,follow_task_ids_if_true='weekend',follow_task_ids_if_false='workday',dag=dag)# add downstream dependencies as you would do with any branch operatorweekend_check >> [workday, weekend]