Airflow无法访问python代码

时间:2017-03-07 02:10:16

标签: python-import airflow

我有一个文件夹结构:

root_folder
  - file.conf
  - models
    - __init__.py
    - model1.py
  - airflow
    - dags
      - dag1.py

所以在上面的情况dag1导入model1。这样做会因为models/__init__.py加载file.conf文件而中断。我尝试通过sys.pathsys.path.append添加根文件夹,似乎无法解决问题。我也尝试过从init的相对路径,但它仍然找不到通过相对路径给出的文件。将自己的代码与气流代码捆绑在一起的好方法是什么?

在尝试各种方法使其工作之后,对我来说似乎有用的是使用文件的绝对路径os.path.abspath(os.path.join(__file__ ,"../..") + '/file.conf')。如果您知道更好的方法,请在下面回答。谢谢:))

1 个答案:

答案 0 :(得分:0)

您可以在root_folder中添加__init__.py文件:

-root_folder - __init__.py - file.conf - models - __init__.py - model1.py - airflow - dags - dag1.py

然后将$ PYTHONPATH添加到root_folder的路径。

最后在dag1.py文件中导入:

import file.conf

也可以导入

import models.model1