程序看不到 Conda 定义的环境变量

时间:2021-04-04 14:01:12

标签: python conda

我有一个具有以下结构的 python 项目:

directory structure

conda.yml 中,我定义了一些环境变量,如下所示:

name: terraform_module_overview
dependencies:
  - pip
  - pip:
      - stashy
      - oauthlib
      - requests_oauthlib
variables:
  - BB_USER=someUser

在python程序python/terraformModuleMarkdownGenerator.py中,我尝试读取环境变量如下:

import os

print(os.getenv("BB_USER")

然后当我尝试使用 conda 环境执行它时,在项目的根目录上使用这些命令:

conda env create --file conda.yml && \
  conda run -n terraform_module_overview python/terraformModuleMarkdownGenerator.py

它成功安装了依赖项:

<块引用>

收集包元数据(repodata.json):...工作...完成

解决环境:...工作...完成

安装 pip 依赖项:...工作...完成

...但在执行时失败了:

<块引用>

错误 conda.cli.main_run:execute(33): 'conda run 的子进程 ['python/terraformModuleMarkdownGenerator.py']' 命令失败。 (看 以上为错误)

错误:BB_USER 在环境中未定义

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

定义变量的语法看起来不正确 (see documentation)。相反,尝试

conda.yml

name: terraform_module_overview
dependencies:
  - pip
  - pip:
    - stashy
    - oauthlib
    - requests_oauthlib
variables:
  BB_USER: someUser