X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=build.sh;h=dc0d7a1eaa3e421bfdecb11d1ef669eb59ca5d09;hb=20a0c897a6b069c87ef1f022f0648d5d3b3f3382;hp=75292e6777f936a0d9e5e0c38315753fa7bfa387;hpb=54030188086d72dec6bc163e36557b0df94368bb;p=bootstrapfs.git diff --git a/build.sh b/build.sh index 75292e6..dc0d7a1 100755 --- a/build.sh +++ b/build.sh @@ -62,7 +62,16 @@ pkgsfile=$(pl_locateDistroFile ../build/ ${pldistro} bootstrapfs.pkgs) # -k = exclude kernel* packages pl_root_mkfedora -k -f $pkgsfile ${vref} -for pkgs in ../build/config.${pldistro}/bootstrapfs-*.pkgs ; do +# 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 +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-,,) echo "--------START BUILDING PlanetLab-Bootstrap-${NAME}: $(date)" @@ -90,16 +99,13 @@ for pkgs in ../build/config.${pldistro}/bootstrapfs-*.pkgs ; do umount ${vdir}/proc fi - # Remove unneeded services - for service in util-vserver vprocunhide vservers-default; do - chroot ${vdir} /sbin/chkconfig $service off - done + # 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} || : - # Disable splaying of cron. - echo > ${vref}/etc/sysconfig/crontab - - # Add site_admin account - chroot ${vref} /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 @@ -138,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)"