X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=build.sh;h=dc0d7a1eaa3e421bfdecb11d1ef669eb59ca5d09;hb=20a0c897a6b069c87ef1f022f0648d5d3b3f3382;hp=d1d9caaf26bc4c2b7a0ba1b16cc2ce330f464536;hpb=67ee6f71546f501094d23c2cc469a18d1ced3877;p=bootstrapfs.git diff --git a/build.sh b/build.sh index d1d9caa..dc0d7a1 100755 --- a/build.sh +++ b/build.sh @@ -62,8 +62,14 @@ pkgsfile=$(pl_locateDistroFile ../build/ ${pldistro} bootstrapfs.pkgs) # -k = exclude kernel* packages pl_root_mkfedora -k -f $pkgsfile ${vref} +# optionally invoke a post processing script after packages from +# $pkgsfile have been installed +pkgsdir=$(dirname $pkgsfile) +pkgsname=$(basename $pkgsfile .pkgs) +postfile="${pkgsdir}/${pkgsname}.post" +[ -f $postfile ] && /bin/bash $postfile ${vref} || : + # for distros that do not define bootstrapfs variants -shopt -s nullglob pkgs_count=$(ls ../build/config.${pldistro}/bootstrapfs-*.pkgs 2> /dev/null | wc -l) [ $pkgs_count -gt 0 ] && for pkgs in $(ls ../build/config.${pldistro}/bootstrapfs-*.pkgs); do NAME=$(basename $pkgs .pkgs | sed -e s,bootstrapfs-,,) @@ -93,17 +99,13 @@ pkgs_count=$(ls ../build/config.${pldistro}/bootstrapfs-*.pkgs 2> /dev/null | wc umount ${vdir}/proc fi - # Remove unneeded services - for service in util-vserver vprocunhide vservers-default; do - chroot ${vdir} /sbin/chkconfig $service off - done - - # Disable splaying of cron. - # At this step, vdir is base, and vref is the set of changes that end up in the nodegroup - echo > ${vdir}/etc/sysconfig/crontab + # optionally invoke a post processing script after packages from + # $pkgs have been installed + pkgsdir=$(dirname $pkgs) + pkgsname=$(basename $pkgs .pkgs) + postfile="${pkgsdir}/${pkgsname}.post" + [ -f $postfile ] && /bin/bash $postfile ${vdir} || : - # Add site_admin account - chroot ${vdir} /usr/sbin/useradd -p "" -u 502 -m site_admin # Create a copy of the ${NAME} bootstrap filesystem w/o the base # bootstrap filesystem and make it smaller. This is a three step @@ -142,6 +144,7 @@ done # Build the base Bootstrap filesystem # clean out yum cache to reduce space requirements yum -c ${vref}/etc/yum.conf --installroot=${vdir} -y clean all + echo "--------STARTING tar'ing PlanetLab-Bootstrap.tar.bz2: $(date)" tar -cpjf PlanetLab-Bootstrap.tar.bz2 -C ${vref} . echo "--------FINISHED tar'ing PlanetLab-Bootstrap.tar.bz2: $(date)"