web-dev-qa-db-fra.com

Erreur TemplateNotFound lors de l'exécution de Airflow BashOperator simple

J'essaie d'écrire notre premier DAG Airflow et j'obtiens l'erreur suivante lorsque j'essaie de répertorier les tâches à l'aide de la commande airflow list_tasks orderwarehouse:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/airflow/models.py", line 2038, in resolve_template_files
    setattr(self, attr, env.loader.get_source(env, content)[0])
  File "/usr/local/lib/python2.7/site-packages/jinja2/loaders.py", line 187, in get_source
    raise TemplateNotFound(template)
TemplateNotFound: ./home/deploy/airflow-server/task_scripts/orderwarehouse/load_warehouse_tables.sh

Ce DAG n'est pas censé utiliser un modèle. J'essaie seulement d'exécuter le script Shell à l'emplacement spécifié par les instructions de the docs . Le script Shell existe à cet emplacement et est correctement orthographié. Mon DAG ressemble à ceci:

from airflow import DAG
from airflow.operators.bash_operator import BashOperator

default_args = {
    'owner': 'airflow',
    'depends_on_past': False,
    'start_date': datetime(2015, 6, 1),
    'email': ['[email protected]'],
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 1,
    'retry_delay': timedelta(minutes=5),
    # 'queue': 'bash_queue',
    # 'pool': 'backfill',
    # 'priority_weight': 10,
    # 'end_date': datetime(2016, 1, 1),
}

orderwarehouse = DAG('orderwarehouse', default_args=default_args)

load_mysql = BashOperator(
    task_id='load_warehouse_mysql',
    bash_command='./home/deploy/airflow-server/task_scripts/orderwarehouse/load_warehouse_tables.sh',
    dag=orderwarehouse)

Je ne sais pas pourquoi il pense qu'il doit rechercher un modèle Jinja. À court d'idées sur celui-ci, j'apprécierais que quelqu'un me montre où je m'égare. Merci.

21
quaintm

Il s'agit d'un écoulement d'air. Ajoutez un espace à la fin de votre commande bash et cela devrait fonctionner correctement

Source: https://cwiki.Apache.org/confluence/display/AIRFLOW/Common+Pitfalls

28
Rishi Barve