diff options
-rw-r--r-- | tools/integration.sh | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/tools/integration.sh b/tools/integration.sh index f4b5689..df055d8 100644 --- a/tools/integration.sh +++ b/tools/integration.sh @@ -7,9 +7,9 @@ function mkvenv { virtualenv $venv $venv/bin/pip install -U pip wheel - # If a change to PBR is being tested, preinstall from that source tree + # If a change to PBR is being tested, preinstall the wheel for it if [ -n "$PBR_CHANGE" ] ; then - $venv/bin/pip install $pbrsdistdir + $venv/bin/pip install $pbrsdistdir/dist/pbr-*.whl fi } @@ -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,20 @@ 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 +grep -v '^#' $REPODIR/requirements/global-requirements.txt | while read req +do + $tmpdir/wheelhouse/bin/pip wheel "$req" +done +set -e + #BRANCH BRANCH=${OVERRIDE_ZUUL_BRANCH=:-master} # PROJECTS is a list of projects that we're testing @@ -40,8 +54,10 @@ pbrsdistdir=$tmpdir/pbrsdist git clone $REPODIR/pbr $pbrsdistdir cd $pbrsdistdir -# Flag whether a change to PBR is being tested +# Prepare a wheel and flag whether a change to PBR is being tested if git fetch $ZUUL_URL/$ZUUL_PROJECT $ZUUL_REF ; then + mkvenv wheel + wheel/bin/python setup.py bdist_wheel PBR_CHANGE=1 fi |