use build/build.common functions
[vserver-reference.git] / system-packages.sh
index 57cd7f8..d225ed5 100755 (executable)
@@ -6,12 +6,12 @@
 # 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
 
@@ -26,47 +26,11 @@ list ()
     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
@@ -98,8 +62,8 @@ for slice in pl_netflow pl_conf ; do
                    # 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
@@ -109,7 +73,7 @@ for slice in pl_netflow pl_conf ; do
 
                    # 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
 
@@ -140,7 +104,7 @@ EOF
                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
@@ -152,7 +116,7 @@ EOF
 
     for dependency in "${dependencies[@]}" ; do
        echo $dependency
-    done >$rpms/$slice.lst
+    done >$rpms/$vref.lst
 done
 
 # Clean yum cache