From ae2dfaec367dabadb4c74a5d635d9633247465f1 Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Wed, 22 Nov 2017 07:20:00 -0600 Subject: [PATCH] Update tox_install.sh to align for sphinx jobs The updates to the sphinx docs jobs in support of the updates to the PTI wound up exposing an unintended interface. There are two flavors of the tox_install.sh file out there, and we basically need to collapse them into one flavor. Update the tox_install.sh script to match the constraints-as-first-argument form. Change-Id: I7cb4b44952713752435e1faf0f63bf0d37e7dda6 --- tools/tox_install.sh | 39 +++++++++++++++++++-------------------- tox.ini | 3 +-- 2 files changed, 20 insertions(+), 22 deletions(-) diff --git a/tools/tox_install.sh b/tools/tox_install.sh index 15aa9dec..43468e45 100755 --- a/tools/tox_install.sh +++ b/tools/tox_install.sh @@ -4,28 +4,27 @@ # with installing the client from source. We should remove the version pin in # the constraints file before applying it for from-source installation. +CONSTRAINTS_FILE=$1 +shift 1 + set -e -if [[ -z "$CONSTRAINTS_FILE" ]]; then - echo 'WARNING: expected $CONSTRAINTS_FILE to be set' >&2 - PIP_FLAGS=(-U) -else - # NOTE(tonyb): Place this in the tox enviroment's log dir so it will get - # published to logs.openstack.org for easy debugging. - localfile="$VIRTUAL_ENV/log/upper-constraints.txt" +# NOTE(tonyb): Place this in the tox enviroment's log dir so it will get +# published to logs.openstack.org for easy debugging. +localfile="$VIRTUAL_ENV/log/upper-constraints.txt" - if [[ "$CONSTRAINTS_FILE" != http* ]]; then - CONSTRAINTS_FILE="file://$CONSTRAINTS_FILE" - fi - curl "$CONSTRAINTS_FILE" --insecure --progress-bar --output "$localfile" - - pip install -c"$localfile" openstack-requirements - - # This is the main purpose of the script: Allow local installation of - # the current repo. It is listed in constraints file and thus any - # install will be constrained and we need to unconstrain it. - edit-constraints "$localfile" -- "$CLIENT_NAME" - PIP_FLAGS=(-c"$localfile" -U) +if [[ $CONSTRAINTS_FILE != http* ]]; then + CONSTRAINTS_FILE=file://$CONSTRAINTS_FILE fi +# NOTE(tonyb): need to add curl to bindep.txt if the project supports bindep +curl $CONSTRAINTS_FILE --insecure --progress-bar --output $localfile -pip install "${PIP_FLAGS[@]}" "$@" +pip install -c$localfile openstack-requirements + +# This is the main purpose of the script: Allow local installation of +# the current repo. It is listed in constraints file and thus any +# install will be constrained and we need to unconstrain it. +edit-constraints $localfile -- $CLIENT_NAME + +pip install -c$localfile -U $* +exit $? diff --git a/tox.ini b/tox.ini index 1be9a39c..303ce660 100644 --- a/tox.ini +++ b/tox.ini @@ -5,13 +5,12 @@ skipsdist = True [testenv] usedevelop = True -install_command = {toxinidir}/tools/tox_install.sh {opts} {packages} +install_command = {toxinidir}/tools/tox_install.sh {env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages} setenv = LANG=en_US.utf8 VIRTUAL_ENV={envdir} BRANCH_NAME=master CLIENT_NAME=python-swiftclient - CONSTRAINTS_FILE={env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt