CC-2894: install should check that Virtualenv is functional before proceeding

- install script now check if all python packages are installed, if not,
it will reinstall it
This commit is contained in:
James 2011-09-28 15:48:42 -04:00
parent 28f1d885f2
commit 3bbd76466a
3 changed files with 46 additions and 5 deletions

View File

@ -0,0 +1,27 @@
#!/bin/bash
# Absolute path to this script
SCRIPT=`readlink -f $0`
# Absolute directory this script is in
SCRIPTPATH=`dirname $SCRIPT`
VIRTUAL_ENV_DIR="/usr/lib/airtime/airtime_virtualenv"
if [ -d $VIRTUAL_ENV_DIR ]; then
virtualenv_bin="/usr/lib/airtime/airtime_virtualenv/bin/"
if [ -f ${virtualenv_bin}activate ]; then
. ${virtualenv_bin}activate
else
echo 1
exit 0
fi
CHECK=$(python ${SCRIPTPATH}/virtualenv-check.py)
if [ "$CHECK" == "1" ]; then
echo 1
exit 0
fi
echo 0
else
echo 1
fi

View File

@ -0,0 +1,11 @@
try:
import amqplib
import anyjson
import configobj
import kombu
import mutagen
import poster
import pyinotify
print 0
except ImportError, e:
print 1

View File

@ -1,3 +1,4 @@
#!/bin/bash
# Absolute path to this script
SCRIPT=`readlink -f $0`
# Absolute directory this script is in
@ -5,23 +6,24 @@ SCRIPTPATH=`dirname $SCRIPT`
VIRTUAL_ENV_DIR="/usr/lib/airtime/airtime_virtualenv"
VIRTUAL_ENV_SHARE="/usr/share/python-virtualenv/"
if [ ! -d "$VIRTUAL_ENV_DIR" ]; then
CHECK=$(${SCRIPTPATH}/virtualenv-check)
if [ "$CHECK" == "1" ]; then
echo -e "\n*** Creating Virtualenv for Airtime ***"
EXTRAOPTION=$(virtualenv --help | grep extra-search-dir)
if [ "$?" -eq "0" ]; then
sudo virtualenv --extra-search-dir=${SCRIPTPATH}/3rd_party --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
virtualenv --extra-search-dir=${SCRIPTPATH}/3rd_party --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
else
# copy distribute-0.6.10.tar.gz to /usr/share/python-virtualenv/
# this is due to the bug in virtualenv 1.4.9
if [ -d "$VIRTUAL_ENV_SHARE" ]; then
cp ${SCRIPTPATH}/3rd_party/distribute-0.6.10.tar.gz /usr/share/python-virtualenv/
fi
sudo virtualenv --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
virtualenv --no-site-package -p /usr/bin/python2.6 /usr/lib/airtime/airtime_virtualenv
fi
echo -e "\n*** Installing Python Libraries ***"
sudo /usr/lib/airtime/airtime_virtualenv/bin/pip install ${SCRIPTPATH}/airtime_virtual_env.pybundle -E /usr/lib/airtime/airtime_virtualenv
/usr/lib/airtime/airtime_virtualenv/bin/pip install ${SCRIPTPATH}/airtime_virtual_env.pybundle -E /usr/lib/airtime/airtime_virtualenv
echo -e "\n*** Patching Python Libraries ***"
PATCHES=${SCRIPTPATH}/patches/*
@ -30,9 +32,10 @@ if [ ! -d "$VIRTUAL_ENV_DIR" ]; then
DIRNAME=$(basename $file)
echo -e "\n ---Applying Patches for $DIRNAME---"
else
sudo patch -N -p0 -i $file
patch -N -p0 -i $file
fi
done
else
echo -e "\n*** Existing Airtime Virtualenv Found ***"
fi
exit 0