# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2004-2006 The Trustees of Princeton University
#
-# $Id: system-packages.sh,v 1.1 2006/04/05 20:32:28 mlhuang Exp $
+# $Id: system-packages.sh,v 1.5 2007/08/24 06:06:04 mef Exp $
#
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
-vroot=$PWD/vservers/vserver-reference
+vroot=$PWD/vservers/.vref/default
rpms=$PWD/vservers/system-packages
install -d -m 755 $rpms
fi
}
-# pl_netflow requires third party MySQL RPMs
-mysql_mirrors=(
-file:///usr/share/mirrors/mysql
-http://boot.planet-lab.org/install-rpms/3rdparty
-)
-
-for mirror in "${mysql_mirrors[@]}" ; do
- baseurl=$mirror/
- if list $baseurl | grep -q "MySQL-server.*rpm" ; then
- break
- fi
- unset baseurl
-done
-
-if [ -z "$baseurl" ] ; then
- echo "Error: MySQL-server RPM package"
- echo " could not be found in any of the following locations:"
- echo
- for mirror in ${mysql_mirrors[@]} ; do
- echo $mirror
- done
- echo
- exit 1
-fi
-
-# Add MySQL mirror to yum.conf
-if ! grep -q mysql $vroot/etc/yum.conf ; then
- cat >>$vroot/etc/yum.conf <<EOF
-
-[mysql]
-name=MySQL
-baseurl=$baseurl
-EOF
-fi
-
# Space separated list of required packages
-pl_netflow="netflow"
-pl_conf="sidewinder-PlanetLab-SCS sidewinder-common"
+planetflow="netflow"
-for slice in pl_netflow pl_conf ; do
- packages=${!slice}
+for vref in planetflow ; do
+ packages=${!vref}
dependencies=()
if yum --help | grep -q shell ; then
# it would be too much trouble. Just try
# downloading it from one of the common
# subdirectories.
- echo "* $slice: $repository $package-$version.$arch.rpm"
- for subdirectory in "" Fedora/RPMS $arch ; do
+ echo "* $vref: $repository $package-$version.$arch.rpm"
+ for subdirectory in "" Fedora/RPMS Fedora $arch ; do
if curl --fail --silent --max-time 60 $baseurl/$subdirectory/$package-$version.$arch.rpm \
>$rpms/$package-$version.$arch.rpm ; then
break
# Assert that we got it successfully
if [ ! -f $rpms/$package-$version.$arch.rpm ] ; then
- echo "Failed to fetch $package-$version.$arch.rpm from $repository" >&2
+ echo "Failed to fetch $package-$version.$arch.rpm from $repository ($baseurl/$subdirectory)" >&2
false
fi
path=$(sed -ne 's/failover: path = \(.*\)/\1/p' <<<$line)
else
if [ "${path##*.}" = "rpm" ] ; then
- echo "* $slice: $(basename $path)"
+ echo "* $vref: $(basename $path)"
curl --fail --silent --max-time 60 $baseURL/$path >$rpms/$(basename $path)
dependencies[${#dependencies[*]}]=$(basename $path)
fi
for dependency in "${dependencies[@]}" ; do
echo $dependency
- done >$rpms/$slice.lst
+ done >$rpms/$vref.lst
done
# Clean yum cache