我正在尝试编写我们的第一个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
Run Code Online (Sandbox Code Playgroud)
此DAG不应使用模板.我只是按照文档中的说明尝试在指定位置运行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 = …Run Code Online (Sandbox Code Playgroud) 我有一个在本地运行良好的Flask应用程序,但是当我推送到Heroku时,我收到错误消息:
* Running on http://127.0.0.1:5000/
[INFO] Starting gunicorn 18.0
[ERROR] Connection in use: ('0.0.0.0', 8163)
Run Code Online (Sandbox Code Playgroud)
我在这个问题上尝试了解决方案,其中gunicorn和werkzeug正在互相争斗,但是__name__ == "__main__"在我的主应用程序文件(run.py)中添加一个 块并没有解决我的错误.
这篇SO帖子建议确保我的流程全部清理完毕.我这样做但它仍然无法正常工作,所以我实际上删除了我的整个heroku应用程序并进行了修复,它仍然给出了同样的错误.
我的run.py文件看起来像:
#!pl_env/bin/python
from app import app
if __name__ == "__main__":
app.run(debug=True, port=33507)
# [33507 is the Flask port on Heroku]
Run Code Online (Sandbox Code Playgroud)
我的Procfile是:web:gunicorn run:app
__init__.py应用程序中的文件是:
from flask import Flask
import os
from flask.ext.login import LoginManager
app = Flask(__name__)
app.config.from_object('config')
lm = LoginManager()
lm.init_app(app)
lm.login_view = 'login'
from app import views …Run Code Online (Sandbox Code Playgroud)