Особые требования Travis для каждой версии python

Мне нужны unittest2 и importlib для python 2.6, которые не требуются для других версий python, с которыми тестирует travis.

есть ли способ сказать Travis-CI, чтобы иметь разные требования.txt файлы для каждой версии Python?

2 ответов


правильный способ определения условных требований - это:

# requirements.txt
ordereddict; python_version == '2.6'

Да, комментарии можно использовать для указания условных требований. Если вы получаете некоторые ошибки, вы можете использовать устаревшую версию pip.


Travis CI добавляет переменную среды с именем $TRAVIS_PYTHON_VERSION на это можно ссылаться в вашем .Трэвис.в формате YML:

python:
  - 2.6
  - 2.7
  - 3.2
  - 3.3
  - pypy
install:
  - if [[ $TRAVIS_PYTHON_VERSION == 2.6 ]]; then pip install importlib unittest2; fi
  - pip install -r requirements.txt

это приведет к unittest2 и importlib устанавливается только для Python 2.6, с требованиями.txt устанавливается для всех перечисленных версий. Вы можете сделать столько проверок, сколько необходимо. Торнадо .Трэвис.в формате YML файл использует его совсем немного.