summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClark Boylan <clark.boylan@gmail.com>2015-01-05 09:43:35 -0800
committerClark Boylan <clark.boylan@gmail.com>2015-01-05 10:45:11 -0800
commit3991d07543552795fbbd61ba116aa66ec2d8e1a3 (patch)
tree3d8937b81122107bdcd8c2e16088e3180af10b64
parentf3c8de8ac71df5e9c369ad4515698aae976fb335 (diff)
downloadpbr-3991d07543552795fbbd61ba116aa66ec2d8e1a3.tar.gz
Use a wheelhouse in the integration test
The integration test can take >2 hours running into a timeout. Much of the time spent in this test is consumed by recompiling dependencies like lxml. Reduce this overhead by compiling these items once in a wheelhouse then installing all dependencies from that wheelhouse preventing recompilation. Change-Id: I40cd7587ff32f1a4cf881939069dde015dc9589d
-rw-r--r--tools/integration.sh13
1 files changed, 12 insertions, 1 deletions
diff --git a/tools/integration.sh b/tools/integration.sh
index a6f0b1a..a7c47a2 100644
--- a/tools/integration.sh
+++ b/tools/integration.sh
@@ -20,7 +20,7 @@ BASE=${BASE:-/opt/stack}
REPODIR=${REPODIR:-$BASE/new}
# TODO: Figure out how to get this on to the box properly
-sudo apt-get install -y --force-yes libxml2-dev libxslt-dev libmysqlclient-dev libpq-dev libnspr4-dev pkg-config libsqlite3-dev libzmq-dev libffi-dev libldap2-dev libsasl2-dev ccache
+sudo apt-get install -y --force-yes libvirt-dev libxml2-dev libxslt-dev libmysqlclient-dev libpq-dev libnspr4-dev pkg-config libsqlite3-dev libzmq-dev libffi-dev libldap2-dev libsasl2-dev ccache
# FOR numpy / pyyaml
sudo apt-get build-dep -y --force-yes python-numpy
@@ -31,6 +31,17 @@ export PATH=/usr/lib/ccache:$PATH
tmpdir=$(mktemp -d)
+# Set up a wheelhouse
+export WHEELHOUSE=${WHEELHOUSE:-$tmpdir/.wheelhouse}
+export PIP_WHEEL_DIR=${PIP_WHEEL_DIR:-$WHEELHOUSE}
+export PIP_FIND_LINKS=${PIP_FIND_LINKS:-file://$WHEELHOUSE}
+mkvenv $tmpdir/wheelhouse
+# Not all packages properly build wheels (httpretty for example).
+# Do our best but ignore errors when making wheels.
+set +e
+$tmpdir/wheelhouse/bin/pip wheel -r $REPODIR/requirements/global-requirements.txt
+set -e
+
#BRANCH
BRANCH=${OVERRIDE_ZUUL_BRANCH=:-master}
# PROJECTS is a list of projects that we're testing