我有一个项目,必须将公开可用的 conda 依赖项与我自己的私有 pip 包注册表中的依赖项混合在一起。这些都是 pip 依赖项。可以在 env.yml 文件中定义这样的 pip 依赖项:
name: env-name
channels:
- anaconda
- conda-forge
- defaults
dependencies:
- conda-dependency=1.0.0=s0mel3tters
- pip:
- --extra-index-url https://__token_name__:[email protected]/path/to/registry
- pippackage==1.0.0
这有效。伟大的。但。出于显而易见的原因,我不想在源代码管理中检查我的
__token_name__
和 __token__
。现在事实证明,我可以将环境变量定义到将在实际环境中创建的 env.yml 中。我想做一些稍微不同的事情。我想读取一个已经存在的环境变量并在我的 pip URL 定义中使用它。这可能吗?如果是的话,怎么办?
显然,你可以替换环境变量:
name: env-name
channels:
- anaconda
- conda-forge
- defaults
dependencies:
- conda-dependency=1.0.0=s0mel3tters
- pip:
- --extra-index-url https://${TOKEN_NAME}:${TOKEN}@gitlab.com/path/to/registry
- pippackage==1.0.0