2017-02-09 45 views
6

我试着写我们的第一个气流DAG,并且我得到以下错误,当我尝试列出使用命令airflow list_tasks orderwarehouse的任务:TemplateNotFound错误运行时,简单的气流BashOperator

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 

这是DAG不应该使用模板。我只是试图按照the docs中的说明在指定的位置运行shell脚本。 shell脚本确实存在于该位置,拼写正确。我的DAG如下所示:

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) 

不知道为什么它认为它需要查找Jinja模板。如果有人能指出我误入歧途的地方,我会很感激。谢谢。

回答

相关问题