Man*_*agi 21 python virtualenv setenv tox
我在setenv中使用以下命令从我运行的地方导入环境变量,但有没有办法导入所有变量,这样我就不需要逐个导入了.
例如:{env:TEMPEST_CONFIG:}和{env:TEMPEST_CONFIG_DIR:}用于导入这两个变量.
[testenv:nosetests]
setenv =
TEMPEST_CONFIG={env:TEMPEST_CONFIG:}
TEMPEST_CONFIG_DIR={env:TEMPEST_CONFIG_DIR:}
deps = {[testenv]deps}
commands =
find . -type f -name "*.pyc" -delete
bash {toxinidir}/tools/setup.sh
nosetests --with-xunit {posargs}
Run Code Online (Sandbox Code Playgroud)
Oli*_*ter 33
你可以使用passenv.如果您传递catch所有通配符*
,则可以访问父环境中的所有环境变量:
passenv =空格分隔-GLOBNAMES
2.0版中的新功能.
通配符环境变量名称列表,在执行测试命令时应从tox调用环境复制到测试环境.如果tox调用环境中不存在指定的环境变量,则忽略该变量.你可以使用*和?使用一个名称匹配多个环境变量.
最小化tox.ini
重现:
[tox]
skipsdist = True
[testenv]
passenv = *
skip_install = True
commands = python -c "print('computer says {env:MY_FANCY_ENV_VAR:}!')"
Run Code Online (Sandbox Code Playgroud)
在linux/unix shell中调用:
MY_FANCY_ENV_VAR=no tox -qq
Run Code Online (Sandbox Code Playgroud)
Windows cmd.exe上的调用:
set MY_FANCY_ENV_VAR=no & tox -qq
Run Code Online (Sandbox Code Playgroud)
输出:
computer says no!
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7531 次 |
最近记录: |