python - Airflow no module named for directory in airflow_home directory -
i'm working virtualenv. i'm trying use packages inside dag folders. current state of airflow_home
directory is:
airflow_home/airflow.cfg airflow_home/airflow.db airflow_home/dags/__init__.py airflow_home/dags/hello_world.py airflow_home/dags/support/inner.py airflow_home/dags/support/__init__.py
hello_world.py has code:
from datetime import datetime airflow import dag airflow.operators.dummy_operator import dummyoperator airflow.operators.python_operator import pythonoperator dags.support import inner def print_hello(): return 'hello world' dag = dag('hello_world', description='simple tutorial dag', schedule_interval='0 12 * * *', start_date=datetime(2017, 8, 20), catchup=false) dummy_operator = dummyoperator(task_id='dummy_task', retries=3, dag=dag) hello_operator = pythonoperator(task_id='hello_task', python_callable=print_hello, dag=dag) hello_from_inner_operator = pythonoperator(task_id='hello_from_inner', python_callable=inner.hello_from_inner, dag=dag) dummy_operator >> hello_operator hello_operator >> hello_from_inner_operator
if manually run script, runs. start airflow scheduler,
broken dag: no module named 'dags'
error appears. i'm doing wrong, way solve ?
using from support import inner
instead.
the path $airflow_home/dags
added sys.path
when airflow starts. search modules under dags
directory.
Comments
Post a Comment