python - Tox 为缺失的环境变量设置默认值

标签 python environment-variables tox

我想为 tox 中缺少的环境变量设置默认值但前提是它们丢失了。

最佳答案

这可以通过 env substitution 来实现。使用 TOX_WORKDIR 或默认值的示例:

毒物.ini

[tox]
envlist = py
skipsdist = true

[testenv]
setenv = TOX_WORKDIR = {env:TOX_WORKDIR:.tox}
commands = python ./envecho.py

envecho.py

#!/usr/bin/env python
import os

print(os.getenv("TOX_WORKDIR"))

没有设置环境的输出:

$ tox

py create: /home/oliver/Dropbox/projects/tox/lab/mini/.tox/py
py installed: appdirs==1.4.3,packaging==16.8,pyparsing==2.2.0,six==1.10.0
py runtests: PYTHONHASHSEED='2704413679'
py runtests: commands[0] | python ./envecho.py
.tox
______________________________ summary ______________________________
  py: commands succeeded
  congratulations :)

带有环境集的输出:

$ TOX_WORKDIR=/tmp/ tox

py installed: appdirs==1.4.3,packaging==16.8,pyparsing==2.2.0,six==1.10.0
py runtests: PYTHONHASHSEED='30398946'
py runtests: commands[0] | python ./envecho.py
/tmp/
______________________________ summary ______________________________
  py: commands succeeded
  congratulations :)

关于python - Tox 为缺失的环境变量设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42982267/

相关文章:

php - 在 apache envvars 中获取系统范围的环境变量是否安全?

pytest - 如何使用 PUDB 在 Tox 中调试我的 python 单元测试?

c# - PythonEngine.Initialize() 失败且没有任何错误消息

heroku - 如何使用 Nuxt.JS 应用程序访问 Heroku 环境变量

python - 为什么这个指令不起作用?

node.js - 如何将环境变量设置为 gulp 任务?

python - 如何在 travis 构建期间更新 tox 上的设置工具

python - 使 py.test、coverage 和 tox 一起工作 : __init__. py 在测试文件夹中?

python - 将字节字符串从 Python 传递到 C

python - Instagram Graph API 按区域指标查看 View