This is step one. We'll create a venv the old way and also additionally a bundle. If the bundle exists on the copy-venv side of things, we'll install using it. Otherwise, we'll just do the old relocation code. After a day or two (once all of the venv artifacts have bundles) we can remove the use of install_venv and just go to pure bundles. Change-Id: Ie56e270ac4944a29253609730b013166cae05c26
25 lines
1.1 KiB
Bash
Executable File
25 lines
1.1 KiB
Bash
Executable File
#!/bin/bash -xe
|
|
|
|
# Support jobs, such as nova-docs, which are not yet triggered by gerrit
|
|
if [ "x$GERRIT_BRANCH" = "x" ] ; then
|
|
GERRIT_BRANCH=master
|
|
fi
|
|
mv jenkins_venvs/$GERRIT_BRANCH/venv.tgz .
|
|
rm -fr jenkins_venvs
|
|
tar xfz venv.tgz
|
|
rm venv.tgz
|
|
if [ -f .cache.bundle ] ; then
|
|
pip install --upgrade -E .venv file://`pwd`/.cache.bundle
|
|
rm .cache.bundle
|
|
else
|
|
perl -MCwd -ple '$CWD=Cwd::abs_path();s,^VIRTUAL_ENV=.*,VIRTUAL_ENV="$CWD/.venv",' -i .venv/bin/activate
|
|
# This gets easy-install.pth as well as $PROJECT.pth. Examples for glance:
|
|
# easy-install.pth looks like: /home/jenkins/workspace/glance-venv/.venv/src/keystone
|
|
# $PROJECT.pth looks like: /home/jenkins/workspace/glance-venv
|
|
perl -MCwd -ple '$CWD=Cwd::abs_path();s,^/.*/workspace/[^/]+(/.*)$,$CWD$1,' -i .venv/lib/python2.7/site-packages/*.pth
|
|
# This is needed for the keystone install for glance
|
|
perl -MCwd -ple '$CWD=Cwd::abs_path();s,^/.*/.venv/src/(.*),$CWD/.venv/src/$1,' -i .venv/lib/python2.7/site-packages/*.egg-link
|
|
# This is needed for the keystone install for glance
|
|
perl -MCwd -ple '$CWD=Cwd::abs_path();s,/.*/.venv/src/(.*),$CWD/.venv/src/$1,' -i .venv/bin/*
|
|
fi
|