Use setuptools constraint from global-requirements-pins rather than u-c

With the new pip resolver, if a package is constrainted to two
different versions simultaneously then the package cannot be installed.

setuptools has a constraint in both OSA global-requirement-pins and
openstack upper-constraints, so the installation will fail with the
new resolver.

This patch removes any references to setuptools from openstack u-c
and allows the constraint from the OSA repo to be used.

Change-Id: Ib4c3592184973ba9908a1ba17d935a96448969a1
This commit is contained in:
Jonathan Rosser 2021-01-21 08:46:42 +00:00
parent 07cd16d016
commit 2c902788de
2 changed files with 16 additions and 16 deletions

View File

@ -169,27 +169,26 @@ fi
# This is necessary due to ARA having ansible as a
# requirement.
PIP_OPTS+=" --requirement ${COMMON_TESTS_PATH}/test-ansible-deps.txt"
PIP_OPTS+=" --constraint ${COMMON_TESTS_PATH}/test-ansible-deps.txt"
# If Depends-On is used, the integrated repo will be cloned. We
# therefore prefer a local copy over fetching it via a URL.
OSA_INTEGRATED_REPO_HOME="${TESTING_HOME}/src/opendev.org/openstack/openstack-ansible"
if [[ -d "${OSA_INTEGRATED_REPO_HOME}" ]]; then
PIP_OPTS+=" --constraint ${OSA_INTEGRATED_REPO_HOME}/global-requirement-pins.txt"
else
PIP_OPTS+=" --constraint https://opendev.org/openstack/openstack-ansible/raw/${TESTING_BRANCH}/global-requirement-pins.txt"
fi
# We add OpenStack's upper constraints last, as we want all our own
# constraints to take precedence. If Depends-On is used, the requirements
# repo will be cloned, so we prefer a local copy.
# Retrieve a copy of OpenStack's upper constraints If Depends-On is
# used, the requirements repo will be cloned, so we prefer
# local copy from zuul.
REQS_REPO_HOME="${TESTING_HOME}/src/opendev.org/openstack/requirements"
if [[ -d "${REQS_REPO_HOME}" ]]; then
PIP_OPTS+=" --constraint ${REQS_REPO_HOME}/upper-constraints.txt"
cp "${REQS_REPO_HOME}/upper-constraints.txt" /tmp/upper-constraints.txt
else
PIP_OPTS+=" --constraint ${TOX_CONSTRAINTS_FILE:-https://opendev.org/openstack/requirements/raw/${TESTING_BRANCH}/upper-constraints.txt}"
wget "${TOX_CONSTRAINTS_FILE:-https://opendev.org/openstack/requirements/raw/${TESTING_BRANCH}/upper-constraints.txt}" -O /tmp/upper-constraints.txt
fi
# Filter out setuptools/pip/wheel from OpenStack upper constraints
# These are already constrained in OSA global-requirement-pins.txt
cp /tmp/upper-constraints.txt /tmp/upper-constraints-filtered.txt
sed -i '/setuptools=/d' /tmp/upper-constraints-filtered.txt
sed -i '/pip=/d' /tmp/upper-constraints-filtered.txt
sed -i '/wheel=/d' /tmp/upper-constraints-filtered.txt
PIP_OPTS+=" --constraint /tmp/upper-constraints-filtered.txt"
source /etc/os-release || source /usr/lib/os-release
# Install selinux into venv
if [[ ${ID,,} =~ (centos|rhel|fedora) ]]; then

View File

@ -357,7 +357,8 @@ horizon_secret_key: "SuperSecreteHorizonKey"
horizon_external_ssl: False
# Tempest specific settings
tempest_git_repo: https://opendev.org/openstack/tempest
#NOTE(jrosser) tempest master is broken, fix is hopefully https://review.opendev.org/c/openstack/tempest/+/771817
#tempest_git_repo: https://opendev.org/openstack/tempest
# We prefer to use the released versions of tempest for stable branches, but
# we deploy the latest for the master branch.
tempest_developer_mode: "{{ test_branch == 'master' }}"