Jak testować różne wersje Pythona z Tox z poziomu Travis-CI?Jak uruchomić Tox z Travis-CI
mam tox.ini
:
[tox]
envlist = py{27,33,34,35}
recreate = True
[testenv]
basepython =
py27: python2.7
py33: python3.3
py34: python3.4
py35: python3.5
deps =
-r{toxinidir}/pip-requirements.txt
-r{toxinidir}/pip-requirements-test.txt
commands = py.test
która biegnie moje unittests Python w kilku wersjach Pythona i działa idealnie.
Chcę konfiguracji kompilacji w Travis-ci do automatycznego uruchamiania tego kiedy wciskam zmiany Github, więc mam .travis.yml
:
language: python
python:
- "2.7"
- "3.3"
- "3.4"
- "3.5"
install:
- pip install tox
script:
- tox
Wydaje się to technicznie do pracy, ale nadmiarowo uruchamia wszystkie moje testy w każdej wersji Pythona ... z każdej wersji Pythona. Budowa trwająca 5 minut zajmuje teraz 45 minut.
Próbowałem usunąć listę python
z mojego pliku yaml, więc Travis uruchomi tylko jedną instancję Pythona, ale to spowoduje, że moje testy w Python3.5 zawiodą, ponieważ nie można znaleźć interpretera w wersji 3.5. Najwyraźniej jest to known limitation, ponieważ Travis-CI nie zainstaluje Python3.5, chyba że podasz dokładną wersję w swojej konfiguracji ... ale nie robi to dla innych wersji.
Czy istnieje sposób można obejść to?