没有模块错误,代码不在包中。尽管有PYTHONPATH的路径

时间:2018-04-26 00:37:48

标签: python-3.x airflow

启动气流DAG时,我遇到了python路径的小问题。我是Airflow的新手。

我的目录如下:我在每个目录中都指定了 init .py

['/Users/sam/App/ProjectA/dags', '/Users/sam/App/ProjectA', '/Users/sam/App-Setup/anaconda/envs/anaconda35/lib/python35.zip', '/Users/sam/App-Setup/anaconda/envs/anaconda35/lib...........]

BashOperator的我的Dag实现如下。

pipeline {
 stages {
        stage('Perform verification') {
            steps {
                script {
                   echo "${FileParameter}"
                }
            }
        }
 }

当我从Airflow UI运行DAG时。我收到以下错误

Script Path

不确定如何检查此错误。我甚至尝试将/ Users / sam // App / ProjectA添加到我的python路径中。即使这种饮食工作。我的Python路径看起来像

@Vitalii Vitrenko

不确定如何克服这种情况,任何帮助都会得到满足。

2 个答案:

答案 0 :(得分:1)

这里有很多事情发生。

  • code.module1没有导入,但日志中出现导入错误
  • BashOperator用于执行Python任务, PythonOperator
  • bash命令失败,但似乎没有连接到模块

所以我建议:

  • 首先,尝试在同一环境中使用非Airflow Python脚本获取导入权
  • 然后,切换到PythonOperator并使用导入的功能 - 除非我没有看到为什么需要使用BashOperator运行

答案 1 :(得分:1)

尝试运行python /Users/sam/App/ProjectA/jobs/python_module.py。如果你得到同样的错误,这是一个python问题,而不是气流。

你正在使用芹菜执行者吗?在这种情况下,env变量是否在所有执行程序中定义?

在任何情况下,您都可以尝试添加python_module.py sys.path.append