update snapshot flags in remove
authorDobrica Pavlinusic <dpavlin@rot13.org>
Thu, 26 Jun 2014 11:54:20 +0000 (13:54 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Thu, 26 Jun 2014 11:55:19 +0000 (13:55 +0200)
remove
sbin/lvremove

diff --git a/remove b/remove
index d02293b..2d49348 100755 (executable)
--- a/remove
+++ b/remove
@@ -2,5 +2,12 @@
 
 . /usr/share/ganeti/extstorage/zfs/defaults.sh
 
+test -e /dev/zvol/$EXTP_VG/$VOL_NAME || exit 0
+
+# remove snapshot flag on origin
+origin=$(zfs_get lv:origin)
+test ! -z "$origin" && zfs set lv:s='-' $EXTP_ZFS/$origin
+
 rm -f /dev/$EXTP_VG/$VOL_NAME
-zfs destroy $EXTP_DESTROY $EXTP_ZFS/$VOL_NAME || true
+zfs destroy $EXTP_DESTROY $EXTP_ZFS/$VOL_NAME
+
index ee15f23..69f5709 100755 (executable)
@@ -11,16 +11,9 @@ if echo $* | grep -q $EXTP_VG ; then
                fi
                shift;
        done
-       export VOL_NAME
-
-       origin=$(zfs_get lv:origin)
 
        # destroy snapshot and clone
        $dir/remove
-       if [ ! -z "$origin" ] ; then
-               VOL_NAME=$origin@snap $dir/remove
-               zfs set lv:s='-' $EXTP_ZFS/$origin
-       fi
 else
        /sbin/lvm lvrename $*
 fi