Project for creating tox.ini files with multiple dependencies.
WARNING! As of version 1.8.0
of tox it is possible to create generative envlist declarations.
Described in tox documentation. That feature of tox practically makes this project obsolete.
- Free software: BSD license
- Documentation: https://tox-matrix.rtfd.org.
A little utility script to generate tox.ini
files.
It should be handy in case where your project have multiple different dependencies
with different version and you would like to test all available configurations of them.
Install it:
pip install tox-matrix
Now let's assume you'd like to test your project against different versions
of Django
(latest 1.5.X and 1.6.X ) and Fabric
(latest 1.7.X and 1.8.X)
using python2.7
and python3.3
.
You could do something like this:
tox-matrix generate -d Django -v 1.5,1.6,1.7 -d Fabric -v 1.7,1.8,1.9 -p 2.7 -p 3.3
Which should generate this tox.ini
file content to stdout:
[tox] envlist = py27-A, py27-B, py27-C, py27-D, py33-A, py33-B, py33-C, py33-D [testenv] commands = py.test [testenv:py27-A] basepython = python2.7 deps = {[testenv]deps} Django>=1.5,<1.6 Fabric>=1.7,<1.8 [testenv:py27-B] basepython = python2.7 deps = {[testenv]deps} Django>=1.5,<1.6 Fabric>=1.8,<1.9 [testenv:py27-C] basepython = python2.7 deps = {[testenv]deps} Django>=1.6,<1.7 Fabric>=1.7,<1.8 [testenv:py27-D] basepython = python2.7 deps = {[testenv]deps} Django>=1.6,<1.7 Fabric>=1.8,<1.9 [testenv:py33-A] basepython = python3.3 deps = {[testenv]deps} Django>=1.5,<1.6 Fabric>=1.7,<1.8 [testenv:py33-B] basepython = python3.3 deps = {[testenv]deps} Django>=1.5,<1.6 Fabric>=1.8,<1.9 [testenv:py33-C] basepython = python3.3 deps = {[testenv]deps} Django>=1.6,<1.7 Fabric>=1.7,<1.8 [testenv:py33-D] basepython = python3.3 deps = {[testenv]deps} Django>=1.6,<1.7 Fabric>=1.8,<1.9
- Generate tox.ini files
- Pin versions either with exact ones or by range
- Use a Jinja2 template for your tox.ini file