blob: 33aad181151e5b8e4f325471c8031388ef15e372 [file] [log] [blame]
:py:mod:`airflow.timetables.simple`
===================================
.. py:module:: airflow.timetables.simple
Module Contents
---------------
Classes
~~~~~~~
.. autoapisummary::
airflow.timetables.simple.NullTimetable
airflow.timetables.simple.OnceTimetable
airflow.timetables.simple.DatasetTriggeredTimetable
.. py:class:: NullTimetable
Bases: :py:obj:`_TrivialTimetable`
Timetable that never schedules anything.
This corresponds to ``schedule=None``.
.. py:attribute:: description
:annotation: :str = Never, external triggers only
.. py:method:: summary()
:property:
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.
.. py:method:: next_dagrun_info(*, last_automated_data_interval, restriction)
Provide information to schedule the next DagRun.
The default implementation raises ``NotImplementedError``.
:param last_automated_data_interval: The data interval of the associated
DAG's last scheduled or backfilled run (manual runs not considered).
:param restriction: Restriction to apply when scheduling the DAG run.
See documentation of :class:`TimeRestriction` for details.
:return: 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.
.. py:class:: OnceTimetable
Bases: :py:obj:`_TrivialTimetable`
Timetable that schedules the execution once as soon as possible.
This corresponds to ``schedule="@once"``.
.. py:attribute:: description
:annotation: :str = Once, as soon as possible
.. py:method:: summary()
:property:
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.
.. py:method:: next_dagrun_info(*, last_automated_data_interval, restriction)
Provide information to schedule the next DagRun.
The default implementation raises ``NotImplementedError``.
:param last_automated_data_interval: The data interval of the associated
DAG's last scheduled or backfilled run (manual runs not considered).
:param restriction: Restriction to apply when scheduling the DAG run.
See documentation of :class:`TimeRestriction` for details.
:return: 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.
.. py:class:: DatasetTriggeredTimetable
Bases: :py:obj:`NullTimetable`
Timetable that never schedules anything.
This should not be directly used anywhere, but only set if a DAG is triggered by datasets.
:meta private:
.. py:attribute:: description
:annotation: :str = Triggered by datasets
.. py:method:: summary()
:property:
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.
.. py:method:: generate_run_id(*, run_type, logical_date, data_interval, session = None, events = None, **extra)
.. py:method:: data_interval_for_events(logical_date, events)