From cbca7c3a6b0d04ad0a001e8e028e701817a82b2f Mon Sep 17 00:00:00 2001 From: Holger Levsen Date: Mon, 3 Nov 2014 03:54:51 +0100 Subject: reproducible_setup_schroot: cleanup writelock properly on failure --- bin/reproducible_setup_schroot.sh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'bin/reproducible_setup_schroot.sh') diff --git a/bin/reproducible_setup_schroot.sh b/bin/reproducible_setup_schroot.sh index 399b8a9b..0dc50ec8 100755 --- a/bin/reproducible_setup_schroot.sh +++ b/bin/reproducible_setup_schroot.sh @@ -74,6 +74,12 @@ bootstrap $@ trap - INT TERM EXIT +remove_writelock() { + # remove the lock + rm $DBDCHROOT_WRITELOCK +} + +trap remove_writelock INT TERM EXIT # aquire a write lock in any case touch $DBDCHROOT_WRITELOCK if [ -f $DBDCHROOT_READLOCK ] ; then @@ -102,7 +108,7 @@ sudo mv $CHROOT_TARGET $SCHROOT_BASE/"$TARGET" if [ -d $SCHROOT_BASE/"$TARGET"-"$rand" ] then - sudo rm -rf --one-file-system $SCHROOT_BASE/"$TARGET"-"$rand" + sudo rm -rf --one-file-system $SCHROOT_BASE/"$TARGET"-"$rand" || ( echo "Warning: $SCHROOT_BASE/${TARGET}-$rand could not be fully removed." ; ls $SCHROOT_BASE/${TARGET}-$rand -la ) fi # write the schroot config @@ -117,6 +123,5 @@ sudo tee /etc/schroot/chroot.d/jenkins-"$TARGET" <<-__END__ union-type=aufs __END__ -# remove the lock -rm $DBDCHROOT_WRITELOCK - +trap - INT TERM EXIT +remove_writelock -- cgit v1.2.3-54-g00ecf