Запустить tox на разных версиях патча

Короче говоря: есть ли способ иметь tox цикл на патч версии Python?

Долго: я хочу, чтобы тесты запускались на 2.7.7, 2.7.8 и т. Д., В основном я работаю на 2.7.6 и хочу посмотреть, смогу ли я избавиться от этого предупреждения

https://urllib3.readthedocs.org/en/latest/security.html

прежде чем идти в производство.

(Конечно, я уже проверил это "вручную" с помощью pyenv, установив 2.7.x как глобальную сборку virtualenv и протестировав его, но было бы неплохо, чтобы непрерывная интеграция запускалась каждый раз, когда все возможные комбинации)

1 ответ

Решение

Какая точная версия tox использует при указании -e py27 зависит от вашей платформы, путей по умолчанию и вашего PATH. Если вы хотите иметь полный контроль над тем, какую версию он использует, вы должны установить tox-globinterpreter и беги

for x in $(seq 7 12); do
    tox --scan /opt/python/2.7."$x"/bin/python
    tox -r -e py27
done

в каталоге, где ваш tox.ini установлено. Выше предполагается, что у вас есть установка Python рядом друг с другом в /opt/python/ с номером версии в качестве установочной директории, конечно, возможны и другие местоположения / схемы, но только когда есть некоторая закономерность, вы можете использовать for петля.

tox-globinterpreter все еще позволяет вам только одну двоичную версию Python для tox индикатор версии (py27, py35, py36, pypyи т. д.), но позволяет вам точно контролировать выбор фактического питона, используемого для каждого из них.

Другие вопросы по тегам