Pin dependency versions when using tools/venv.sh (#4629)

* Revert "Pin python-augeas version to avoid error with 1.0.0 (#4422)"

This reverts commit 1c51ae2588.

* make dependency-requirements

* separate certbot and dependency requirements

* fix build.py

* update hashin comment

* simplify release pinning

* separate letsencrypt dependency

* pin hashes in venv

* error out when bad things happen

* use pinned dependencies in tox

* Revert "pin hashes in venv"

This reverts commit 1cd38a9e50.

* use pip_install.sh in venv_common

* quote pip install args

* bump mock version
This commit is contained in:
Brad Warren
2017-05-11 10:06:05 -07:00
committed by GitHub
parent e37d5ee92c
commit be7e99a461
11 changed files with 83 additions and 58 deletions
+14 -12
View File
@@ -10,20 +10,22 @@ envlist = modification,py{26,33,34,35,36},cover,lint
# loops, especially on Travis
[base]
# wraps pip install to use pinned versions of dependencies
pip_install = {toxinidir}/tools/pip_install.sh
# packages installed separately to ensure that downstream deps problems
# are detected, c.f. #1002
core_commands =
pip install -e acme[dev]
{[base]pip_install} -e acme[dev]
nosetests -v acme --processes=-1
pip install -e .[dev]
{[base]pip_install} -e .[dev]
nosetests -v certbot --processes=-1 --process-timeout=100
core_install_args = -e acme[dev] -e .[dev]
core_paths = acme/acme certbot
plugin_commands =
pip install -e certbot-apache
{[base]pip_install} -e certbot-apache
nosetests -v certbot_apache --processes=-1 --process-timeout=80
pip install -e certbot-nginx
{[base]pip_install} -e certbot-nginx
nosetests -v certbot_nginx --processes=-1
plugin_install_args = -e certbot-apache -e certbot-nginx
plugin_paths = certbot-apache/certbot_apache certbot-nginx/certbot_nginx
@@ -38,7 +40,7 @@ compatibility_install_args = -e certbot-compatibility-test
compatibility_paths = certbot-compatibility-test/certbot_compatibility_test
other_commands =
pip install -e letshelp-certbot
{[base]pip_install} -e letshelp-certbot
nosetests -v letshelp_certbot --processes=-1
python tests/lock_test.py
other_install_args = -e letshelp-certbot
@@ -69,12 +71,12 @@ deps =
[testenv:py27_install]
basepython = python2.7
commands =
pip install {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]other_install_args}
{[base]pip_install} {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]other_install_args}
[testenv:cover]
basepython = python2.7
commands =
pip install {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]other_install_args}
{[base]pip_install} {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]other_install_args}
./tox.cover.sh
[testenv:lint]
@@ -84,25 +86,25 @@ basepython = python2.7
# duplicate code checking; if one of the commands fails, others will
# continue, but tox return code will reflect previous error
commands =
pip install -q {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
{[base]pip_install} -q {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
pylint --reports=n --rcfile=.pylintrc {[base]core_paths} {[base]plugin_paths} {[base]dns_plugin_paths} {[base]compatibility_paths} {[base]other_paths}
[testenv:mypy]
basepython = python3.4
commands =
pip install mypy
pip install -q {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
{[base]pip_install} mypy
{[base]pip_install} -q {[base]core_install_args} {[base]plugin_install_args} {[base]dns_plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
mypy --py2 --ignore-missing-imports {[base]core_paths} {[base]plugin_paths} {[base]dns_plugin_paths} {[base]compatibility_paths} {[base]other_paths}
[testenv:apacheconftest]
#basepython = python2.7
commands =
pip install {[base]core_install_args} {[base]plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
{[base]pip_install} {[base]core_install_args} {[base]plugin_install_args} {[base]compatibility_install_args} {[base]other_install_args}
{toxinidir}/certbot-apache/certbot_apache/tests/apache-conf-files/apache-conf-test --debian-modules
[testenv:nginxroundtrip]
commands =
pip install {[base]core_install_args} -e certbot-nginx
{[base]pip_install} {[base]core_install_args} -e certbot-nginx
python certbot-compatibility-test/nginx/roundtrip.py certbot-compatibility-test/nginx/nginx-roundtrip-testdata
# This is a duplication of the command line in testenv:le_auto to