From d580423868c5ca4d249c0e05f9a3d6a92b934e1d Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Mon, 29 Aug 2016 19:29:17 +0200 Subject: [PATCH] Add special handling for functional tests Import changes from neutron-vpnaas to run functional tests against neutron: We need to install the proper version of neutron when testing neutron changes with functional tests from this repo. Otherwise those tests install neutron HEAD. Change-Id: Ic7889f763884aadf7c2e31e273b3857e3d563c7b --- tools/tox_install.sh | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/tools/tox_install.sh b/tools/tox_install.sh index 00223e915..c09d81872 100755 --- a/tools/tox_install.sh +++ b/tools/tox_install.sh @@ -16,20 +16,35 @@ ZUUL_CLONER=/usr/zuul-env/bin/zuul-cloner BRANCH_NAME=master neutron_installed=$(echo "import neutron" | python 2>/dev/null ; echo $?) +NEUTRON_DIR=$HOME/neutron set -e +set -x install_cmd="pip install -c$1" shift -if [ $neutron_installed -eq 0 ]; then +# The devstack based functional tests have neutron checked out in +# $NEUTRON_DIR on the test systems - with the change to test in it. +# Use this directory if it exists, so that this script installs the +# neutron version to test here. +# Note that the functional tests use sudo to run tox and thus +# variables used for zuul-cloner to check out the correct version are +# lost. +if [ -d "$NEUTRON_DIR" ]; then + echo "FOUND Neutron code at $NEUTRON_DIR - using" + $install_cmd -U -e $NEUTRON_DIR +elif [ $neutron_installed -eq 0 ]; then echo "ALREADY INSTALLED" > /tmp/tox_install.txt + location=$(python -c "import neutron; print(neutron.__file__)") + echo "ALREADY INSTALLED at $location" + echo "Neutron already installed; using existing package" elif [ -x "$ZUUL_CLONER" ]; then echo "ZUUL CLONER" > /tmp/tox_install.txt # Make this relative to current working directory so that # git clean can remove it. We cannot remove the directory directly - # since it is reference after $install_cmd -e. + # since it is referenced after $install_cmd -e. mkdir -p .tmp NEUTRON_DIR=$(/bin/mktemp -d -p $(pwd)/.tmp) pushd $NEUTRON_DIR