气流无法识别本地目录 ModuleNotFoundError:没有命名的模块

igx*_*igx 5 airflow

我的项目结构如下:

my_project
 -dags
 -config
Run Code Online (Sandbox Code Playgroud)

但是在气流仪表板上我看到一个Broken DAG指向此行的错误:from config.setup_configs import somemethod

并产生这个错误:

Broken DAG: [/usr/local/airflow/dags/airflow_foo.py] No module named 'config'
Run Code Online (Sandbox Code Playgroud)

尽管该目录存在

小智 9

根据文档Airflow 默认情况下具有三个路径目录

  • AIRFLOW_HOME/dags
  • AIRFLOW_HOME/配置
  • AIRFLOW_HOME/插件

任何其他路径都必须添加到系统路径中,如气流模块管理中所述

为了简单起见,我将模块添加mymodule.py到 AIRFLOW_HOME/plugins 中,并且可以成功导入它们。

from mymodule import my_method
Run Code Online (Sandbox Code Playgroud)

因此,在您的情况下,如果您重命名configurationspluginsDAG 并将导入语句更新为 DAG,

from setup_configs import somemethod
Run Code Online (Sandbox Code Playgroud)

它应该有效。