gpt4 book ai didi

python - 运行简单的 Airflow BashOperator 时出现 TemplateNotFound 错误

转载 作者:太空狗 更新时间:2023-10-29 17:02:56 25 4
gpt4 key购买 nike

我正在尝试编写我们的第一个 Airflow DAG,当我尝试使用命令 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

此 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': ['airflow@airflow.com'],
'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 模板。关于这个的想法用完了,如果有人能指出我误入歧途的地方,我将不胜感激。谢谢。

最佳答案

这是 Airflow 的陷阱。在 bash_command 末尾添加一个空格,它应该可以正常运行

来源: https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=62694614

关于python - 运行简单的 Airflow BashOperator 时出现 TemplateNotFound 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42147514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com