特定于平台的变量

时间:2019-05-31 08:52:01

标签: python tox

我有一个tox.ini可以在Linux / MacOS上运行,但不能在Windows上运行。相关部分看起来像

[testenv:report]
commands =
  {envbindir}/command.py file.txt /dev/null

在Windows上失败,因为/dev/null不是文件。我只需要将NUL:替换为Windows。 我尝试使用multiplatform features of tox

[tox]
envlist =
    py{27,34,35,36,37}-{posix,win}
    report
[testenv]
platform = 
    posix: linux
    posix: darwin
    win: win32
[testenv:report]
nowhere = 
    posix: /dev/null
    win: NUL:
commands =
  {envbindir}/command.py file.txt {nowhere}

但出现错误tox.exception.ConfigError: ConfigError: substitution key 'nowhere' not found

我也尝试过使用环境变量

setenv =
    posix: NOWHERE=/dev/null
    win: NOWHERE=NUL
commands =
  {envbindir}/command.py file.txt {env:NOWHERE}

给出ERROR: report: unresolvable substitution(s): 'NOWHERE'. Environment variables are missing or defined recursively.

tox版本3.12.1

0 个答案:

没有答案