Use stable constraint for Tempest pinned stable branches

Stable branches till stable/rocky is using python
version <py3.6. Tempest test those branch in venv
but Tempest tox use the master upper-constraint[1]
which block installation due to dependencies
require >=py3.6. For exmaple, oslo.concurrency 4.0.0
is not compatible for <py3.6.

As we pin Tempest for EM stable brach, we should be
able to use stable constraint for Tempest installation
as well as while running during run-tempest playbook.

tox.ini is hard coded to use master constraint[1] which force
run-tempest to recreate the tox env and use the master constraint.
Fix for that- https://review.opendev.org/#/c/705870/

Devstack can set stable u-c to use via env var so that
Tempest installation in venv will use stable
branch constraint.

Depends-On: https://review.opendev.org/#/c/706426/

[1] bc9fe8eca8/tox.ini (L14)

Change-Id: I5ab1130582354c33d52afafc9720146e174e40e5
This commit is contained in:
Ghanshyam 2020-02-05 18:49:21 -06:00 committed by Ghanshyam Mann
parent 21c448b4cb
commit 7d43b099c5
1 changed files with 6 additions and 1 deletions

View File

@ -665,6 +665,12 @@ function install_tempest {
# TEMPEST_DIR already exist until RECLONE is true.
git checkout $TEMPEST_BRANCH
# NOTE(gmann): Use branch constraint because Tempest is pinned to the branch release
# instead of using master. We need to export it via env var UPPER_CONSTRAINTS_FILE
# so that initial creation of tempest tox use stable branch constraint
# instead of master constraint as defined in tempest/tox.ini
export UPPER_CONSTRAINTS_FILE=$REQUIREMENTS_DIR/upper-constraints.txt
tox -r --notest -efull
# NOTE(mtreinish) Respect constraints in the tempest full venv, things that
# are using a tox job other than full will not be respecting constraints but
@ -680,7 +686,6 @@ function install_tempest_plugins {
if [[ $TEMPEST_PLUGINS != 0 ]] ; then
# NOTE(gmann): Use branch constraint because Tempest is pinned to the branch release
# instead of using master.
(cd $REQUIREMENTS_DIR && git show origin/master:upper-constraints.txt) > u-c-m.txt
tox -evenv-tempest -- pip install -c $REQUIREMENTS_DIR/upper-constraints.txt $TEMPEST_PLUGINS
echo "Checking installed Tempest plugins:"
tox -evenv-tempest -- tempest list-plugins