summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmrith Kumar <amrith@tesora.com>2016-03-29 12:07:14 -0400
committerAmrith Kumar <amrith@tesora.com>2016-03-30 16:30:17 -0400
commit4e3e804f7c375b1519267d35ab14b8515106ae6d (patch)
tree527e868868d7aac86b848bb86d762b239e7370f2
parentf34581a9d71d296b699e3d4324a35bf457488074 (diff)
downloadtrove-4e3e804f7c375b1519267d35ab14b8515106ae6d.tar.gz
Trove's tox tests should 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. The releasenotes job has no constraints file, so override the install command there. This commit is being proposed on stable/mitaka and therefore the install command includes the clear designation of the branch. This is because, on branches other than master, we need to be sure to get the upper-constraints.txt file for that branch. Change-Id: I8417e0fefae9711d0f71b8f97bbb0e4ea5f8ccf2 Closes-Bug: #1563038 (cherry picked from commit aca90168f52169afb36500d6af77723b1a707008)
-rw-r--r--tox.ini26
1 files changed, 25 insertions, 1 deletions
diff --git a/tox.ini b/tox.ini
index 2d32d7a2..632e7eb1 100644
--- a/tox.ini
+++ b/tox.ini
@@ -6,7 +6,7 @@ skipsdist = True
[testenv]
setenv = VIRTUAL_ENV={envdir}
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} -U {opts} {packages}
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands = find ./trove -type f -name "*.pyc" -delete
@@ -30,6 +30,12 @@ commands =
commands = oslo_debug_helper {posargs}
[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}
basepython = python2.7
commands =
coverage erase
@@ -41,6 +47,12 @@ commands =
[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 venv 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}
[flake8]
@@ -61,7 +73,19 @@ commands =
openstack-doc-test --check-build {posargs}
[testenv:publishdocs]
+# 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 publishdocs 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 = openstack-doc-test --check-build --publish --force
[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}
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html