X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=build.sh;h=545d040bdc96a2a90f1bb33f3d489abc9dc1cb60;hb=392955e7388889dc644569d06dbed5558cb1d530;hp=35cecab274fd59aee336b12a15b69f042653c47a;hpb=1dc466186b2ba51649ffc000429fe9496ca467bb;p=myplc.git diff --git a/build.sh b/build.sh index 35cecab..545d040 100755 --- a/build.sh +++ b/build.sh @@ -10,6 +10,7 @@ # root/ (mount point) # data/ (various data files) # data/etc/planetlab/ (configuration files) +# data/root (root's homedir) # # Mark Huang # Copyright (C) 2006 The Trustees of Princeton University @@ -34,38 +35,36 @@ if [ "$PLC_DEVEL_BOOTSTRAP" = "true" ] ; then # If we used a local mirror, bind mount it into the chroot so that # we can use it again. if [ "${PLC_DEVEL_FEDORA_URL:0:7}" = "file://" ] ; then - mkdir -p devel/root/usr/share/mirrors/fedora - mount -o bind,ro ${PLC_DEVEL_FEDORA_URL#file://} devel/root/usr/share/mirrors/fedora + mkdir -p devel/root/data/fedora + mount -o bind,ro ${PLC_DEVEL_FEDORA_URL#file://} devel/root/data/fedora fi # Clean up before exiting if anything goes wrong - trap "umount $PWD/devel/root/data; - umount $PWD/devel/root/proc; - umount $PWD/devel/root/usr/share/mirrors/fedora" ERR INT + trap "umount $PWD/devel/root/data/fedora; + umount $PWD/devel/root/data; + umount $PWD/devel/root/proc" ERR INT # Build myplc inside myplc-devel. Make sure PLC_DEVEL_BOOTSTRAP is # false to avoid infinite recursion. - chroot devel/root sh -s < $roothome/.profile +export PS1=" \$PS1" +EOF +chmod 644 $roothome/.profile +# Move "data" directories out of the installation +echo "* myplc: Moving data directories out of the installation" move_datadirs root data "${datadirs[@]}" +# Fix permissions on tmp directories +chmod 1777 data/tmp data/usr/tmp data/var/tmp + +# Remove generated bootmanager script +rm -f data/var/www/html/boot/bootmanager.sh + # Initialize node RPMs directory. The PlanetLab-Bootstrap.tar.bz2 # tarball already contains all of the node RPMs pre-installed. Only # updates or optional packages should be placed in this directory. -if [ -n "$RPM_BUILD_DIR" ] ; then - echo "* myplc: Initializing node RPMs directory" - RPM_RPMS_DIR=$(cd $(dirname $RPM_BUILD_DIR)/RPMS && pwd -P) - mkdir -p data/var/www/html/install-rpms/planetlab - if [ -f $RPM_RPMS_DIR/yumgroups.xml ] ; then - install -D -m 644 $RPM_RPMS_DIR/yumgroups.xml \ - data/var/www/html/install-rpms/planetlab/yumgroups.xml - fi - # yum-2.0.x - if [ -x /usr/bin/yum-arch ] ; then - yum-arch data/var/www/html/install-rpms/planetlab - fi - # yum-2.4.x - if [ -x /usr/bin/createrepo ] ; then - if [ -f data/var/www/html/install-rpms/planetlab/yumgroups.xml ] ; then - groupfile="-g yumgroups.xml" - fi - createrepo $groupfile data/var/www/html/install-rpms/planetlab - fi -fi +install -D -m 644 ../build/groups/v3_yumgroups.xml \ + data/var/www/html/install-rpms/planetlab/yumgroups.xml # Make image out of directory echo "* myplc: Building loopback image"