Use upper-constraints in tox test environments

Recently OpenStack introduced a mechanism to specify a constrained
"working set" of packages that are "guaranteed" to produce a working
OpenStack environment. This pinning of packages limits the more
broadly-defined requirements.txt which is managed by
global-requirements.

This patch modifies our tox test environment to use upper-constraints
and explictly removes those requirements from the "venv" tox
environment that is used by some commands in infra.

Conflicts:
    tox.ini

This is due to Ia1be8f60265d9dab2639a05912b4b7c51f1d4033 not being on
the stable/mitaka branch

Change-Id: I84582370e139fc5812bc85ae5341f7f9c8b93ff5
Related-Bug: 1554791
(cherry picked from commit 315958aab8)
This commit is contained in:
Richard Jones 2016-06-03 11:12:40 +10:00
parent f4b9e17315
commit e34762d777
1 changed files with 9 additions and 1 deletions

10
tox.ini
View File

@ -5,7 +5,7 @@ skipsdist = True
[testenv]
usedevelop = True
install_command = pip install -U {opts} {packages}
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/mitaka} {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
NOSE_WITH_OPENSTACK=1
NOSE_OPENSTACK_COLOR=1
@ -33,6 +33,10 @@ commands =
/bin/bash run_tests.sh -N --makemessages --check-only
[testenv:venv]
# NOTE(from nova tox.ini by jaegerandi): This target does not use constraints
# because upstream infra does not yet support it. Once that's fixed, we can
# drop the install_command.
install_command = pip install -U --force-reinstall {opts} {packages}
commands = {posargs}
[testenv:cover]
@ -63,6 +67,10 @@ setenv = DJANGO_SETTINGS_MODULE=openstack_dashboard.test.settings
commands = python setup.py build_sphinx
[testenv:releasenotes]
# NOTE(from nova tox.ini by jaegerandi): This target does not use constraints
# because upstream infra does not yet support it. Once that's fixed, we can
# drop the install_command.
install_command = pip install -U --force-reinstall {opts} {packages}
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
[flake8]