From e34762d77714dcc8e10e17d9d252dbca4efffac7 Mon Sep 17 00:00:00 2001 From: Richard Jones Date: Fri, 3 Jun 2016 11:12:40 +1000 Subject: [PATCH] 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 315958aab8273cd2dbfdd617b173d5c063a88948) --- tox.ini | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 420a5db5ca..455c7665a3 100644 --- a/tox.ini +++ b/tox.ini @@ -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]