python - jinja2.exceptions.TemplateNotFound Airflow bash 运算符错误

标签 python jinja2 airflow

运行以下 DAG 任务。

dag = DAG(
    'TEST',
    default_args=default_args,
    schedule_interval=None,
    max_active_runs=1)

create_command0 = "./auto_script/jobs/start_mail.sh"
t0 = BashOperator(
    task_id='start_mail',
    bash_command=create_command0,
    dag=dag,
    env={
        'subject_area': feed_name,
        'customer_name': customer,
        'job_home': home,
        'job_start_time': start_time})

DAG 不断失败并出现错误“jinja2.exceptions.TemplateNotFound: ./auto_script/jobs/start_mail.sh”

最佳答案

这是 Airflow 的常见错误。尝试以下操作。这应该在一般情况下完成,因此有望帮助您解决具体问题。

  • 您需要像这样在命令末尾添加一个空格。 (注意字符串末尾的空格)
  • 如果可能,您还应该使用完整路径,而不是“/home/user/bob/airflow/”所在位置的相对路径。
create_command0 = "/home/user/bob/airflow/auto_script/jobs/start_mail.sh "

代替

create_command0 = "/home/user/bob/airflow/auto_script/jobs/start_mail.sh"

希望对您有所帮助。 可以在下面的链接中找到有关确切原因的更多信息。 https://cwiki.apache.org/confluence/display/AIRFLOW/Common+Pitfalls

关于python - jinja2.exceptions.TemplateNotFound Airflow bash 运算符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58023987/

相关文章:

python - numpy.float128 在 Windows 中不存在,但从 OpenGL 调用

scripting - 在 ansible Playbook 的 Jinja2 模板中使用变量

python - 如何在 jinja2 中全局定义一个计数器,以便它记住它的最后一个值

python - 无法从 flower.command 导入名称 FlowerCommand

python - 我的 if else 语句中的语法错误

python - 如何在 Python 2 中从键盘获取用户输入?

python - 通过 Jinja2 模板对 IP 进行排序

kubernetes - Cloud Composer 无法连接到 Cloud SQL 代理服务

python - 清除后 Airflow 强制重新运行上游任务,即使下游任务标记为成功

python 对数错误地计算出非常小的复数