Tox 为缺少的环境变量设置默认值

Tox set default values for missing environment variables

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

这通过 env substitution 起作用。使用 TOX_WORKDIR 或默认值的示例:

tox.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 :)