web-dev-qa-db-fra.com

Comment ajouter de nouveaux DAG à Airflow?

J'ai défini un DAG dans un fichier appelé tutorial_2.py (en fait une copie du tutorial.py fourni dans le didacticiel airflow, sauf avec le dag_id changé en tutorial_2).

Quand je regarde à l'intérieur de mon défaut, non modifié airflow.cfg (situé dans ~/airflow), Je vois ça dags_folder est réglé sur /home/alex/airflow/dags.

Je fais cd /home/alex/airflow; mkdir dags; cd dags; cp [...]/tutorial_2.py tutorial_2.py. J'ai maintenant un dossier dags correspondant au chemin défini dans airflow.cfg, contenant le tutorial_2.py fichier que j'ai créé plus tôt.

Cependant, lorsque je lance airflow list_dags, Je ne reçois que les noms correspondant aux DAG par défaut du didacticiel.

Je voudrais avoir tutorial_2 apparaître dans ma liste DAG, afin que je puisse commencer à interagir avec. Ni python tutorial_2.py ni airflow resetdb l'a fait apparaître dans la liste.

Comment y remédier?

16
Aleksey Bilogur

Je pense que la raison en est que vous n'avez pas exporté AIRFLOW_HOME. Essayez de faire: AIRFLOW_HOME="/home/alex/airflow/dags" airflow list_dags. Si cela ne fonctionne pas, effectuez deux étapes export AIRFLOW_HOME="/home/alex/airflow/dags" airflow list_dags Je crois que cela devrait fonctionner. Essayez?

9
Ace Haidrey

D'après ce que je comprends, AIRFLOW_HOME doit créer un lien vers le répertoire où airflow.cfg est stocké. Alors, airflow.cfg peut appliquer et définir le répertoire dag à la valeur que vous y mettez.

Le point important est: airflow.cfg est inutile si votre AIRFLOW_HOME n'est pas défini

6
Pierre CORBEL

Le problème est que vous pouvez avoir deux configurations d'airflow dans vos répertoires, vérifiez donc/root/airflow/dags et si oui, vous devez changer le chemin dags_folder dans les deux airflow.cfg s

0