chiark / gitweb /
ubuntu-paste: convert to python3/argparse/requests
[bin.git] / ubuntu-daily
index 9322569ab335c8178efcea560ec5faa7c9390037..43d56e76316f1f11d6a7ca0265ef60cad71563bf 100755 (executable)
@@ -95,7 +95,7 @@ case $1 in
 esac
 
 case $1 in
-       install|alternate|server|addon|serveraddon|dvd) ;;
+       install|alternate|server|addon|serveraddon)     ;;
        *)
                $HTTP || RSYNC=:
                ;;
@@ -114,16 +114,49 @@ else
                sed -i "s/=$DIST-$1-$2/=$PROJECT-$DIST-$1-$2/g" "$LOCAL.jigdo"
        fi
        rsync -avP "$REMOTE.template" "$LOCAL.template"
+
+       mkdir -p old
+
        EXISTING=false
+       MOUNTS=
+
+       do_mount () {
+               mkdir -p "old/$1"
+               MOUNTS="${MOUNTS:+$MOUNTS }$1"
+               sudo mount -o loop,ro "$1" "old/$1"
+       }
+
+       cleanup () {
+               trap - EXIT HUP INT QUIT TERM
+
+               local mount
+
+               for mount in $MOUNTS; do
+                       sudo umount "old/$mount"
+                       rmdir -p --ignore-fail-on-non-empty "old/$mount"
+               done
+
+               if $EXISTING; then
+                       rm -f "$LOCAL.iso.old"
+               fi
+       }
+       trap cleanup EXIT HUP INT QUIT TERM
+
        if [ -e "$LOCAL.iso" ]; then
                EXISTING=:
                mv "$LOCAL.iso" "$LOCAL.iso.old"
-               mkdir -p "old-$2"
-               sudo mount -o loop "$LOCAL.iso.old" "old-$2"
-       fi
-       ionice -c2 -n7 jigdo-lite "$LOCAL.jigdo"
-       if $EXISTING; then
-               sudo umount "old-$2" || true
-               rm -f "$LOCAL.iso.old"
+               do_mount "$LOCAL.iso.old"
        fi
+
+       for iso in *"$DIST"-*.iso; do
+               case $iso in
+                       *-install-*|*-alternate-*|*-server-*|*-addon-*|*-serveraddon-*) ;;
+                       *)
+                               continue
+                               ;;
+               esac
+               do_mount "$iso"
+       done
+
+       ionice -c2 -n7 jigdo-lite --scan "$PWD/old" "$LOCAL.jigdo"
 fi