Make tox respect upper-constraints.txt
This will force pip install to use the upper-constraints.txt specified version of pip modules. When you don't do this, you are out on the bleeding edge and become unstable everytime some python library in the wide world changes in a way that you don't expect. Post jobs are not yet compatible with the upper-constraints file, so override the install_command there to skip upper-constraints. Credit to the equivalent Ironic patch https://review.openstack.org/#/c/300146/ Change-Id: Ica668afedf622a0be8e8566ac88e1d0020ed9bc7 Closes-Bug: #1563038
This commit is contained in:
parent
c5657decbe
commit
16594518f3
@ -58,6 +58,10 @@ interpreter of one of supported versions (currently 2.7 and 3.4), use
|
||||
a db named 'openstack_citest' with user 'openstack_citest' and password
|
||||
'openstack_citest' on localhost.
|
||||
|
||||
.. note::
|
||||
Users of Fedora <= 23 will need to run "sudo dnf --releasever=24 update
|
||||
python-virtualenv" to run unit tests
|
||||
|
||||
To run the functional tests, use::
|
||||
|
||||
tox -e func
|
||||
|
19
tox.ini
19
tox.ini
@ -3,6 +3,7 @@ envlist = py34,py27,pep8,func
|
||||
|
||||
[testenv]
|
||||
usedevelop = True
|
||||
install_command = pip install -U -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
||||
deps =
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
-r{toxinidir}/plugin-requirements.txt
|
||||
@ -13,13 +14,31 @@ setenv = PYTHONDONTWRITEBYTECODE=1
|
||||
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
||||
|
||||
[testenv:venv]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the environment job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
commands = {posargs}
|
||||
|
||||
[testenv:releasenotes]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the release notes job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
envdir = {toxworkdir}/venv
|
||||
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||
|
||||
[testenv:cover]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the cover job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
commands =
|
||||
coverage run --branch --include "ironic_inspector*" -m unittest discover ironic_inspector.test
|
||||
coverage report -m
|
||||
|
Loading…
x
Reference in New Issue
Block a user