diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/include-foreign-libmagic-mgc | 2 | ||||
-rw-r--r-- | tests/include-foreign-libmagic-mgc-with-multiple-arch-options | 2 | ||||
-rw-r--r-- | tests/install-libmagic-mgc-on-foreign | 2 | ||||
-rw-r--r-- | tests/missing-dev-sys-proc-inside-the-chroot | 6 | ||||
-rw-r--r-- | tests/mmdebstrap | 15 | ||||
-rw-r--r-- | tests/skip-tar-in-mknod | 5 |
6 files changed, 24 insertions, 8 deletions
diff --git a/tests/include-foreign-libmagic-mgc b/tests/include-foreign-libmagic-mgc index 127a84e..7845b31 100644 --- a/tests/include-foreign-libmagic-mgc +++ b/tests/include-foreign-libmagic-mgc @@ -30,7 +30,7 @@ export LC_ALL=C.UTF-8 { echo "$native_arch"; echo "$foreign_arch"; } | cmp /tmp/debian-chroot/var/lib/dpkg/arch - rm /tmp/debian-chroot/usr/lib/file/magic.mgc rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/README.Debian -rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" +rm -f /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.Debian.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/copyright diff --git a/tests/include-foreign-libmagic-mgc-with-multiple-arch-options b/tests/include-foreign-libmagic-mgc-with-multiple-arch-options index 3108134..8155727 100644 --- a/tests/include-foreign-libmagic-mgc-with-multiple-arch-options +++ b/tests/include-foreign-libmagic-mgc-with-multiple-arch-options @@ -31,7 +31,7 @@ export LC_ALL=C.UTF-8 { echo "$native_arch"; echo "$foreign_arch"; } | cmp /tmp/debian-chroot/var/lib/dpkg/arch - rm /tmp/debian-chroot/usr/lib/file/magic.mgc rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/README.Debian -rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" +rm -f /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.Debian.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/copyright diff --git a/tests/install-libmagic-mgc-on-foreign b/tests/install-libmagic-mgc-on-foreign index 918224b..3254ff6 100644 --- a/tests/install-libmagic-mgc-on-foreign +++ b/tests/install-libmagic-mgc-on-foreign @@ -37,7 +37,7 @@ rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/README.Debian rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.Debian.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/changelog.gz rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/copyright -rm /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" +rm -f /tmp/debian-chroot/usr/share/doc/libmagic-mgc/"changelog.Debian.$foreign_arch.gz" rm /tmp/debian-chroot/usr/share/file/magic.mgc rm /tmp/debian-chroot/usr/share/misc/magic.mgc # delete real files diff --git a/tests/missing-dev-sys-proc-inside-the-chroot b/tests/missing-dev-sys-proc-inside-the-chroot index d127911..9c9b1c0 100644 --- a/tests/missing-dev-sys-proc-inside-the-chroot +++ b/tests/missing-dev-sys-proc-inside-the-chroot @@ -17,4 +17,8 @@ if [ "$(id -u)" -eq 0 ] && [ "{{ MODE }}" != "root" ] && [ "{{ MODE }}" != "auto prefix="runuser -u ${SUDO_USER:-user} --" fi -$prefix {{ CMD }} --mode={{ MODE }} --variant={{ VARIANT }} --include=dpkg,dash,diffutils,coreutils,libc-bin,sed {{ DIST }} /dev/null {{ MIRROR }} +# creating /sbin manually because of #1071078 +$prefix {{ CMD }} --mode={{ MODE }} --variant={{ VARIANT }} \ + --setup-hook='mkdir "$1/sbin"' \ + --include=dpkg,dash,diffutils,coreutils,libc-bin,sed \ + {{ DIST }} /dev/null {{ MIRROR }} diff --git a/tests/mmdebstrap b/tests/mmdebstrap index 3327fc6..f383ec4 100644 --- a/tests/mmdebstrap +++ b/tests/mmdebstrap @@ -5,15 +5,26 @@ export SOURCE_DATE_EPOCH={{ SOURCE_DATE_EPOCH }} [ "$(id -u)" -eq 0 ] [ {{ MODE }} = "root" ] -case {{ FORMAT }} in tar|squashfs|ext2) : ;; *) exit 1;; esac +case {{ FORMAT }} in tar|squashfs|ext2|ext4) : ;; *) exit 1;; esac -{{ CMD }} --mode={{ MODE }} --variant={{ VARIANT }} {{ DIST }} ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.{{ FORMAT }} {{ MIRROR }} +{{ CMD }} --mode={{ MODE }} --variant={{ VARIANT }} {{ DIST }} /tmp/mmdebstrap-{{ DIST }}-{{ VARIANT }}.{{ FORMAT }} {{ MIRROR }} +# creating an ext4 image on a 9p filesystem produces different results compared +# to creating it on a tmpfs or ext4 fs because 9p does not support discards and +# even when running with -E nodiscard, the number of written bytes will differ +# https://lore.kernel.org/linux-ext4/171484520952.2626447.2160419274451668597@localhost/T/#t +mv /tmp/mmdebstrap-{{ DIST }}-{{ VARIANT }}.{{ FORMAT }} ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.{{ FORMAT }} if [ "{{ FORMAT }}" = tar ]; then printf 'ustar ' | cmp --bytes=6 --ignore-initial=257:0 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.tar - elif [ "{{ FORMAT }}" = squashfs ]; then printf 'hsqs' | cmp --bytes=4 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.squashfs - elif [ "{{ FORMAT }}" = ext2 ]; then printf '\123\357' | cmp --bytes=2 --ignore-initial=1080:0 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.ext2 - + printf '\000\000\000\000\000\000\000\000\000\000\000\000' | cmp --bytes=12 --ignore-initial=1116:0 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.ext2 - +elif [ "{{ FORMAT }}" = ext4 ]; then + printf '\123\357' | cmp --bytes=2 --ignore-initial=1080:0 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.ext4 - + printf '\074\020\000\000\302\042\000\000\153\004\000\000' | cmp --bytes=12 --ignore-initial=1116:0 ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.ext4 - + + [ "$(/sbin/blkid --match-tag UUID --output value ./cache/mmdebstrap-{{ DIST }}-{{ VARIANT }}.ext4)" = "$(uuidgen --sha1 --namespace="$(uuidgen --sha1 --namespace='@dns' --name mister-muffin.de)" --name $SOURCE_DATE_EPOCH)" ] else echo "unknown format: {{ FORMAT }}" >&2 exit 1 diff --git a/tests/skip-tar-in-mknod b/tests/skip-tar-in-mknod index eb3027a..cc18977 100644 --- a/tests/skip-tar-in-mknod +++ b/tests/skip-tar-in-mknod @@ -3,7 +3,7 @@ set -eu export LC_ALL=C.UTF-8 export SOURCE_DATE_EPOCH={{ SOURCE_DATE_EPOCH }} -[ {{ MODE }} = "unshare" ] +#[ {{ MODE }} = "unshare" ] trap "rm -f /tmp/debian-chroot.tar" EXIT INT TERM @@ -22,7 +22,8 @@ fi $prefix {{ CMD }} --mode={{ MODE }} --variant=custom \ --skip=update,setup,cleanup,tar-in/mknod \ --setup-hook='tar-in ./cache/mmdebstrap-{{ DIST }}-apt.tar /' \ - '' /tmp/debian-chroot.tar + --setup-hook='/sbin/auditctl -w "$1" -p wxa -k mykey' \ + '' /tmp/debian-chroot.tar || /sbin/ausearch --format text -k mykey cmp ./cache/mmdebstrap-{{ DIST }}-apt.tar /tmp/debian-chroot.tar \ || diffoscope ./cache/mmdebstrap-{{ DIST }}-apt.tar /tmp/debian-chroot.tar |