gpt4 book ai didi

python - 如何导入tox中的所有环境变量

转载 作者:IT老高 更新时间:2023-10-28 20:46:07 30 4
gpt4 key购买 nike

我在 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}

最佳答案

您可以使用 passenv .如果您通过 catch all 通配符 * 您可以访问父环境中的所有环境变量:

passenv=SPACE-SEPARATED-GLOBNAMES

New in version 2.0.

A list of wildcard environment variable names which shall be copied from the tox invocation environment to the test environment when executing test commands. If a specified environment variable doesn’t exist in the tox invocation environment it is ignored. You can use * and ? to match multiple environment variables with one name.

最小的 tox.ini 重现(无需项目):

[tox]
skipsdist = True

[testenv]
passenv = *
skip_install = True
commands = python -c "print('computer says {env:MY_FANCY_ENV_VAR:}!')"

在 linux/unix shell 中调用:

MY_FANCY_ENV_VAR=no tox -qq

在 Windows cmd.exe 上调用:

set MY_FANCY_ENV_VAR=no & tox -qq

输出:

computer says no!

关于python - 如何导入tox中的所有环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31192106/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com