Platform specification

Basic multi-platform example

Assuming the following layout:

tox.ini      # see below for content     # a classic distutils/setuptools file

and the following tox.ini content:

# platform specification support is available since version 2.0

# environment will be skipped if regular expression does not match against the sys.platform string
       mylinux: linux
       mymacos: darwin
       mywindows: win32

# you can specify dependencies and their versions based on platform filtered envirements
    mylinux,mymacos: py==1.4.32
    mywindows: py==1.4.30

# upon tox invocation you will be greeted according to your platform
   mylinux: python -c 'print("Hello, Linus!")'
   mymacos: python -c 'print("Hello, Steve!")'
   mywindows: python -c 'print("Hello, Bill!")'

you can invoke tox in the directory where your tox.ini resides. tox creates two virtualenv environments with the python2.7 and python3.6 interpreters, respectively, and will then run the specified command according to platform you invoke tox at.