#
# Builds VServer reference image. Requires the web and boot servers to
# be up, which complicates bootstrap. Alternatively, we could require
-# the build server to host a local yum repository.
+# the build server to host a local yum repository. Already, it is
+# required to run the same major version of yum as the nodes.
#
# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2004-2005 The Trustees of Princeton University
#
-# $Id: vserver-reference.init,v 1.11 2005/09/01 17:20:03 mlhuang Exp $
+# $Id: vserver-reference.init,v 1.16 2005/09/02 15:21:00 mlhuang Exp $
#
-YUM_CONF="http://www.planet-lab.org/PlanetLabConf/v3-yum.conf"
+# Get the URL for the production /etc/yum.conf file. XXX When MAs
+# begin deploying their own boot servers and/or code, this will have
+# to change.
+YUM_CONF=http://boot.planet-lab.org/$(curl --silent --insecure --form node_id=0 --form file=/etc/yum.conf https://boot.planet-lab.org/db/plnodeconf/getsinglefile.php)
# Make /vservers
VROOT=$PWD/vservers/vserver-reference
# completely new PlanetLab package must be installed in the reference
# image. To work around this limitation, introduce the new package in
# one release, then include it in the VServer yumgroup in the next.
-FRESHEN=$RPM_BUILD_DIR/../RPMS/*/*.rpm
-if [ -n "$FRESHEN" ] ; then
- rpm --root $VROOT --freshen --verbose $FRESHEN
+if [ -d $RPM_BUILD_DIR/../RPMS ] ; then
+ rpm --root $VROOT --freshen --verbose $RPM_BUILD_DIR/../RPMS/*/*.rpm
fi
# Remove stale RPM locks
MAKEDEV
# Disable all services in reference image
-/usr/sbin/chroot $VROOT /bin/sh -c "/sbin/chkconfig --list | awk '{ print \$1 }' | xargs -i chkconfig {} off"
+/usr/sbin/chroot $VROOT /bin/sh -c "/sbin/chkconfig --list | awk '{ print \$1 }' | xargs -i /sbin/chkconfig {} off"
# Clean up
umount $VROOT/proc