From bad98c67229f5b492579217e02f1830e5a3ef160 Mon Sep 17 00:00:00 2001
From: Andreas Jaeger <aj@suse.com>
Date: Fri, 1 Dec 2017 15:38:37 +0100
Subject: [PATCH] Avoid tox_install.sh for constraints support

We do not need tox_install.sh, pip can handle constraints itself
and install the project correctly. Thus update tox.ini and remove
the now obsolete tools/tox_install.sh file.

This follows https://review.openstack.org/#/c/508061 to remove
tools/tox_install.sh.

Change-Id: Ib55145fd3f0ed0d8d56379c718e91ff55aa4aa27
---
 tools/tox_install.sh | 57 --------------------------------------------
 tox.ini              |  7 +++---
 2 files changed, 4 insertions(+), 60 deletions(-)
 delete mode 100755 tools/tox_install.sh

diff --git a/tools/tox_install.sh b/tools/tox_install.sh
deleted file mode 100755
index 275e7354..00000000
--- a/tools/tox_install.sh
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/usr/bin/env bash
-
-# Constraint file contains this package version pin that is in conflict
-# with installing the package from source. We should replace the version pin in
-# the constraints file before applying it for from-source installation.
-
-ZUUL_CLONER=/usr/zuul-env/bin/zuul-cloner
-BRANCH_NAME=master
-PACKAGE_NAME=monasca-common
-requirements_installed=$(echo "import openstack_requirements" | python 2>/dev/null ; echo $?)
-
-set -e
-
-git config --global url.https://git.openstack.org/.insteadOf git://git.openstack.org/
-
-CONSTRAINTS_FILE=$1
-shift
-
-install_cmd="pip install"
-mydir=$(mktemp -dt "$PACKAGE_NAME-tox_install-XXXXXXX")
-trap "rm -rf $mydir" EXIT
-localfile=$mydir/upper-constraints.txt
-if [[ $CONSTRAINTS_FILE != http* ]]; then
-    CONSTRAINTS_FILE=file://$CONSTRAINTS_FILE
-fi
-curl $CONSTRAINTS_FILE -k -o $localfile
-install_cmd="$install_cmd -c$localfile"
-
-if [ $requirements_installed -eq 0 ]; then
-    echo "ALREADY INSTALLED" > /tmp/tox_install.txt
-    echo "Requirements already installed; using existing package"
-elif [ -x "$ZUUL_CLONER" ]; then
-    echo "ZUUL CLONER" > /tmp/tox_install.txt
-    pushd $mydir
-    $ZUUL_CLONER --cache-dir \
-        /opt/git \
-        --branch $BRANCH_NAME \
-        git://git.openstack.org \
-        openstack/requirements
-    cd openstack/requirements
-    $install_cmd -e .
-    popd
-else
-    echo "PIP HARDCODE" > /tmp/tox_install.txt
-    if [ -z "$REQUIREMENTS_PIP_LOCATION" ]; then
-        REQUIREMENTS_PIP_LOCATION="git+https://git.openstack.org/openstack/requirements@$BRANCH_NAME#egg=requirements"
-    fi
-    $install_cmd -U -e ${REQUIREMENTS_PIP_LOCATION}
-fi
-
-# 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 -- $PACKAGE_NAME "-e file://$PWD#egg=$PACKAGE_NAME"
-
-$install_cmd -U $*
-exit $?
diff --git a/tox.ini b/tox.ini
index f00c8b28..e2851d42 100644
--- a/tox.ini
+++ b/tox.ini
@@ -7,7 +7,6 @@ skipsdist = True
 usedevelop = True
 setenv = VIRTUAL_ENV={envdir}
          OS_TEST_PATH=monasca_common/tests
-         CLIENT_NAME=monasca-common
 passenv = http_proxy
           HTTP_PROXY
           https_proxy
@@ -17,8 +16,10 @@ passenv = http_proxy
 whitelist_externals = bash
                       find
                       rm
-install_command = {toxinidir}/tools/tox_install.sh {env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
-deps = -r{toxinidir}/requirements.txt
+install_command = pip install -U {opts} {packages}
+deps =
+       -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt}
+       -r{toxinidir}/requirements.txt
        -r{toxinidir}/test-requirements.txt
 commands =
   find {toxinidir} -type f -name '*.pyc' -delete