]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
tests: Refactor building xorriso command for iso9660 tests
authorGlenn Washburn <development@efficientek.com>
Fri, 10 Dec 2021 08:41:44 +0000 (02:41 -0600)
committerDaniel Kiper <daniel.kiper@oracle.com>
Thu, 23 Dec 2021 01:37:35 +0000 (02:37 +0100)
The iso9660 tests test creating isos with different combinations of
Joliet, Rock Ridge, and ISO 9660 conformance level. Refactor xorriso
argument generation for more readability and extensibility.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Reviewed-by: Thomas Schmitt <scdbackup@gmx.net>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
tests/util/grub-fs-tester.in

index 2dcd09f5e0c1ea20e58093d08205f8880dab6afd..aa72b2174d964878b471db5c5e5d1e31e230d51f 100644 (file)
@@ -1027,30 +1027,29 @@ for LOGSECSIZE in $(range "$MINLOGSECSIZE" "$MAXLOGSECSIZE" 1); do
                x"ziso9660")
                    FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
                    xorriso -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 3 -graft-points -R -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" -- -add /="$MASTER" -- -zisofs default -set_filter_r --zisofs / -- ;;
-               x"iso9660")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge off -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 3 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"joliet")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge off  -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 3 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"rockridge")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge on -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 3 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"rockridge_joliet")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge on -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 3 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"iso9660_1999")
+               x"iso9660" | xjoliet | xrockridge | xrockridge_joliet | x"iso9660_1999" | xjoliet_1999 | xrockridge_1999 | xrockridge_joliet_1999)
                    FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge off -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 4 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"joliet_1999")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge off  -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 4 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"rockridge_1999")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge on -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 4 -graft-points -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
-               x"rockridge_joliet_1999")
-                   FSUUID=$(date -u +%Y-%m-%d-%H-%M-%S-00);
-                   xorriso --rockridge on -compliance rec_mtime -as mkisofs $XORRISOFS_CHARSET -iso-level 4 -graft-points -J -joliet-long -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER"  ;;
+                   XORRISO_ARGS="-compliance rec_mtime"
+
+                   if [ -z "${fs##*rockridge*}" ]; then
+                       XORRISO_ARGS="$XORRISO_ARGS -rockridge on"
+                   else
+                       XORRISO_ARGS="$XORRISO_ARGS -rockridge off"
+                   fi
+
+                   XORRISO_ARGS="$XORRISO_ARGS -as mkisofs $XORRISOFS_CHARSET -graft-points"
+
+                   if [ -z "${fs##*1999*}" ]; then
+                       XORRISO_ARGS="$XORRISO_ARGS -iso-level 4"
+                   else
+                       XORRISO_ARGS="$XORRISO_ARGS -iso-level 3"
+                   fi
+
+                   if [ -z "${fs##*joliet*}" ]; then
+                       XORRISO_ARGS="$XORRISO_ARGS -J -joliet-long"
+                   fi
+
+                   xorriso $XORRISO_ARGS -V "$FSLABEL" --modification-date=$(echo ${FSUUID} | sed 's/-//g;') -o "${FSIMAGEP}0.img" /="$MASTER" ;;
                x"romfs")
                    genromfs -V "$FSLABEL" -f "${FSIMAGEP}0.img" -d "$MASTER" ;;
                xsquash4_*)