#!/bin/bash
#
-# Builds bootmanager.sh[.sgn], the PlanetLab Boot Manager script, and
-# PlanetLab-Bootstrap.tar.bz2, the initial root filesystem of a new
-# PlanetLab node. For backward compatibility with old version 2.0 Boot
-# CDs, additional utilities are also built and packaged as
-# alpina-BootLVM.tar.gz and alpina-PartDisks.tar.gz.
+# Builds bootmanager.sh[.sgn], which is the PlanetLab Boot Manager script.
#
# The bootmanager.sh script contains in it a uuencoded tarball of the
# Boot Manager, customized for this PLC installation.
#
# Aaron Klingaman <alk@absarokasoft.com>
# Mark Huang <mlhuang@cs.princeton.edu>
-# Copyright (C) 2004-2006 The Trustees of Princeton University
+# Marc E. Fiuczynski <mef@cs.princeton.edu>
+# Copyright (C) 2004-2007 The Trustees of Princeton University
#
-# $Id$
+# $Id: build.sh,v 1.5 2006/04/03 19:40:55 mlhuang Exp $
#
# Source PLC configuration
$srcdir/source/configuration
# Replace the default debug SSH key
-if [ -f "$PLC_DEBUG_SSH_KEY" ] ; then
- install -D -m 644 "$PLC_DEBUG_SSH_KEY" $srcdir/source/debug_files/debug_root_ssh_key
+if [ -f "$PLC_DEBUG_SSH_KEY_PUB" ] ; then
+ install -D -m 644 "$PLC_DEBUG_SSH_KEY_PUB" $srcdir/source/debug_files/debug_root_ssh_key
fi
+# Add pypcilib
+pypcilib=`mktemp -d "/tmp/.bootmanager.XXXXXX"`
+mkdir $pypcilib/source
+cp $(rpm -ql pypcilib | grep -v '\.py[co]$') $pypcilib/source
+
# Embed the uuencoded tarball in the script
-tar -cj -C $srcdir source/ | uuencode -m - >> $DEST_SCRIPT
+tar -cj -C $srcdir source/ -C $pypcilib source/ | uuencode -m - >> $DEST_SCRIPT
+
+# Remove temp directory
+rm -fr $pypcilib
echo '_EOF_' >> $DEST_SCRIPT
echo 'cd /tmp/source' >> $DEST_SCRIPT