airflow.timetables.simple

Module Contents

Classes

NullTimetable

Timetable that never schedules anything.

OnceTimetable

Timetable that schedules the execution once as soon as possible.

ContinuousTimetable

Timetable that schedules continually, while still respecting start_date and end_date

DatasetTriggeredTimetable

Timetable that never schedules anything.

class airflow.timetables.simple.NullTimetable[source]

Bases: _TrivialTimetable

Timetable that never schedules anything.

This corresponds to schedule=None.

property summary: str[source]

A short summary for the timetable.

This is used to display the timetable in the web UI. A cron expression timetable, for example, can use this to display the expression. The default implementation returns the timetable’s type name.

description: str = 'Never, external triggers only'[source]
next_dagrun_info(*, last_automated_data_interval, restriction)[source]

Provide information to schedule the next DagRun.

The default implementation raises NotImplementedError.

Parameters
  • last_automated_data_interval (DataInterval | None) – The data interval of the associated DAG’s last scheduled or backfilled run (manual runs not considered).

  • restriction (airflow.timetables.base.TimeRestriction) – Restriction to apply when scheduling the DAG run. See documentation of TimeRestriction for details.

Returns

Information on when the next DagRun can be scheduled. None means a DagRun will not happen. This does not mean no more runs will be scheduled even again for this DAG; the timetable can return a DagRunInfo object when asked at another time.

Return type

DagRunInfo | None

class airflow.timetables.simple.OnceTimetable[source]

Bases: _TrivialTimetable

Timetable that schedules the execution once as soon as possible.

This corresponds to schedule="@once".

property summary: str[source]

A short summary for the timetable.

This is used to display the timetable in the web UI. A cron expression timetable, for example, can use this to display the expression. The default implementation returns the timetable’s type name.

description: str = 'Once, as soon as possible'[source]
next_dagrun_info(*, last_automated_data_interval, restriction)[source]

Provide information to schedule the next DagRun.

The default implementation raises NotImplementedError.

Parameters
  • last_automated_data_interval (DataInterval | None) – The data interval of the associated DAG’s last scheduled or backfilled run (manual runs not considered).

  • restriction (airflow.timetables.base.TimeRestriction) – Restriction to apply when scheduling the DAG run. See documentation of TimeRestriction for details.

Returns

Information on when the next DagRun can be scheduled. None means a DagRun will not happen. This does not mean no more runs will be scheduled even again for this DAG; the timetable can return a DagRunInfo object when asked at another time.

Return type

DagRunInfo | None

class airflow.timetables.simple.ContinuousTimetable[source]

Bases: _TrivialTimetable

Timetable that schedules continually, while still respecting start_date and end_date

This corresponds to schedule="@continuous".

property summary: str[source]

A short summary for the timetable.

This is used to display the timetable in the web UI. A cron expression timetable, for example, can use this to display the expression. The default implementation returns the timetable’s type name.

description: str = 'As frequently as possible, but only one run at a time.'[source]
active_runs_limit = 1[source]
next_dagrun_info(*, last_automated_data_interval, restriction)[source]

Provide information to schedule the next DagRun.

The default implementation raises NotImplementedError.

Parameters
  • last_automated_data_interval (DataInterval | None) – The data interval of the associated DAG’s last scheduled or backfilled run (manual runs not considered).

  • restriction (airflow.timetables.base.TimeRestriction) – Restriction to apply when scheduling the DAG run. See documentation of TimeRestriction for details.

Returns

Information on when the next DagRun can be scheduled. None means a DagRun will not happen. This does not mean no more runs will be scheduled even again for this DAG; the timetable can return a DagRunInfo object when asked at another time.

Return type

DagRunInfo | None

class airflow.timetables.simple.DatasetTriggeredTimetable[source]

Bases: NullTimetable

Timetable that never schedules anything.

This should not be directly used anywhere, but only set if a DAG is triggered by datasets.

property summary: str[source]

A short summary for the timetable.

This is used to display the timetable in the web UI. A cron expression timetable, for example, can use this to display the expression. The default implementation returns the timetable’s type name.

description: str = 'Triggered by datasets'[source]
generate_run_id(*, run_type, logical_date, data_interval, session=None, events=None, **extra)[source]
data_interval_for_events(logical_date, events)[source]

Was this entry helpful?