Как запустить прогон DAG с воздушным потоком из сценария Python? - PullRequest
1 голос
/ 04 февраля 2020

Используя apache airflow, я создал несколько DAGS, некоторые из которых не запускаются по расписанию.
Я пытаюсь найти способ, которым я могу запустить запуск для определенной c DAG изнутри Python скрипт. Это возможно? Как я могу сделать?

EDIT --- Сценарий python будет запущен из проекта, отличного от проекта, в котором расположены все мои DAGS

1 Ответ

2 голосов
/ 05 февраля 2020

У вас есть несколько вариантов запуска DAG для Airflow.

Использование Python

Пакет airflow python предоставляет локального клиента Вы можете использовать для запуска dag из python скрипта. Например:

from airflow.api.client.local_client import Client

c = Client(None, None)
c.trigger_dag(dag_id='test_dag_id', run_id='test_run_id', conf={})

Использование CLI Airflow

Вы можете вызвать прерывание потока воздуха вручную, используя CLI Airflow. Дополнительную информацию о том, как использовать CLI для запуска DAG, можно найти здесь .

Использование API-интерфейса REST Airflow

Вы также можете использовать API-интерфейс REST Airflow для запуска DAG работает. Подробнее об этом здесь .


Первый вариант из python может работать для вас лучше всего (это также, как я лично делал это в прошлом). Но теоретически вы можете использовать подпроцесс для взаимодействия с CLI из python или библиотеку типа , запрашивающую для взаимодействия с REST API из Python.

...