Выяснить, что вызвало запуск программы программно - PullRequest
0 голосов
/ 08 ноября 2018

Есть ли способ программно определить, что вызвало текущий запуск задачи PythonOperator изнутри оператора?

Я хочу провести различие между запусками заданий, запускаемыми по расписанию, подтягивающимися и запускаемыми командой CLI обратной засыпки.

1 Ответ

0 голосов
/ 09 ноября 2018

Контекст шаблона содержит две переменные: dag_run и run_id, которые можно использовать, чтобы определить, был ли запуск запланирован, засыпан или запущен извне.

from airflow import jobs

def python_target(**context):
  is_backfill = context["dag_run"].is_backfill
  is_external = context["dag_run"].external_trigger
  is_latest = context["execution_date"] == context["dag"].latest_execution_date
  # More code...
...