X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=grml-live;h=0b228406dbd8e9fe88bf9b41798488f4ab50ea70;hb=ada9ee0154c453dc6f1236527e1a7ed82890ba4b;hp=956f8b4aa0402dc40325873bc5998d7b67da0cb4;hpb=7b4718b59c0edbc1b5ff6dcc1c48bb61c83689d4;p=grml-live.git diff --git a/grml-live b/grml-live index 956f8b4..0b22840 100755 --- a/grml-live +++ b/grml-live @@ -164,7 +164,7 @@ fi [ -n "$CHROOT_TARGET" ] || CHROOT_TARGET="$TARGET/grml_chroot" if [ -d "$CHROOT_TARGET" ] ; then - echo " [x] $CHROOT_TARGET exists already, skipping the stage 'fai dirnstall'" + echo " [x] $CHROOT_TARGET exists already, skipping the stage 'fai dirinstall'" else mkdir -p "$CHROOT_TARGET" || bailout 5 "Problem with creating $CHROOT_TARGET for FAI" if [ -n "${MIRROR_DIRECTORY}" ] ; then @@ -175,13 +175,21 @@ else umount $CHROOT_TARGET/proc 2>/dev/null || /bin/true umount $CHROOT_TARGET/sys 2>/dev/null || /bin/true [ -n "$MIRROR_DIRECTORY" ] && umount "${CHROOT_TARGET}/${MIRROR_DIRECTORY}" - # notice: 'fai dirinstall' does not seem to exit appropriate -> - # we need better error handling - if [ -r "$CHROOT_TARGET"/etc/grml_cd ] ; then - echo " [*] Finished execution of stage 'fai dirinstall'" - else + + # notice: 'fai dirinstall' does not seem to exit appropriate, so: + ERROR='' + [ -r "/var/log/fai/dirinstall/$HOSTNAME/software.log" ] && + grep -q 'dpkg: error processing' /var/log/fai/dirinstall/$HOSTNAME/software.log && ERROR=1 + + [ -r "/var/log/fai/dirinstall/$HOSTNAME/shell.log" ] && + grep -q 'FAILED with exit code' /var/log/fai/dirinstall/$HOSTNAME/shell.log && ERROR=2 + + if [ -n "$ERROR" ] ; then echo " [!] There was an error during execution of stage 'fai dirinstall'" + echo " Check out /var/log/fai/dirinstall/$HOSTNAME/... for details. [exit ${ERROR}]" exit 1 + else + echo " [*] Finished execution of stage 'fai dirinstall'" fi fi # }}}