From: Ani Sinha Date: Thu, 4 May 2023 15:46:11 +0000 (+0530) Subject: tests/lcitool: Add mtools and xorriso and remove genisoimage as dependencies X-Git-Tag: v8.1.0-rc0~124^2~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=da9000784c90d;p=thirdparty%2Fqemu.git tests/lcitool: Add mtools and xorriso and remove genisoimage as dependencies Bios bits avocado tests need mformat (provided by the mtools package) and xorriso tools in order to run within gitlab CI containers. Add those dependencies within the Dockerfiles so that containers can be built with those tools present and bios bits avocado tests can be run there. xorriso package conflicts with genisoimage package on some distributions. Therefore, it is not possible to have both the packages at the same time in the container image uniformly for all distribution flavors. Further, on some distributions like RHEL, both xorriso and genisoimage packages provide /usr/bin/genisoimage and on some other distributions like Fedora, only genisoimage package provides the same utility. Therefore, this change removes the dependency on geninsoimage for building container images altogether keeping only xorriso package. At the same time, cdrom-test.c is updated to use and check for existence of only xorrisofs. Signed-off-by: Ani Sinha Message-Id: <20230504154611.85854-3-anisinha@redhat.com> Reviewed-by: Thomas Huth Reviewed-by: Michael S. Tsirkin Signed-off-by: Thomas Huth --- diff --git a/.gitlab-ci.d/cirrus/freebsd-13.vars b/.gitlab-ci.d/cirrus/freebsd-13.vars index 7622c849b25..facb649f5bd 100644 --- a/.gitlab-ci.d/cirrus/freebsd-13.vars +++ b/.gitlab-ci.d/cirrus/freebsd-13.vars @@ -11,6 +11,6 @@ MAKE='/usr/local/bin/gmake' NINJA='/usr/local/bin/ninja' PACKAGING_COMMAND='pkg' PIP3='/usr/local/bin/pip-3.8' -PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cdrkit-genisoimage cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson ncurses nettle ninja opencv pixman pkgconf png py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio socat spice-protocol tesseract usbredir virglrenderer vte3 zstd' +PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson mtools ncurses nettle ninja opencv pixman pkgconf png py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio socat spice-protocol tesseract usbredir virglrenderer vte3 xorriso zstd' PYPI_PKGS='' PYTHON='/usr/local/bin/python3' diff --git a/.gitlab-ci.d/cirrus/macos-12.vars b/.gitlab-ci.d/cirrus/macos-12.vars index da6aa6469b5..ceb294e1539 100644 --- a/.gitlab-ci.d/cirrus/macos-12.vars +++ b/.gitlab-ci.d/cirrus/macos-12.vars @@ -11,6 +11,6 @@ MAKE='/opt/homebrew/bin/gmake' NINJA='/opt/homebrew/bin/ninja' PACKAGING_COMMAND='brew' PIP3='/opt/homebrew/bin/pip3' -PKGS='bash bc bison bzip2 capstone ccache cmocka ctags curl dbus diffutils dtc flex gcovr gettext git glib gnu-sed gnutls gtk+3 jemalloc jpeg-turbo json-c libepoxy libffi libgcrypt libiscsi libnfs libpng libslirp libssh libtasn1 libusb llvm lzo make meson ncurses nettle ninja pixman pkg-config python3 rpm2cpio sdl2 sdl2_image snappy socat sparse spice-protocol tesseract usbredir vde vte3 zlib zstd' +PKGS='bash bc bison bzip2 capstone ccache cmocka ctags curl dbus diffutils dtc flex gcovr gettext git glib gnu-sed gnutls gtk+3 jemalloc jpeg-turbo json-c libepoxy libffi libgcrypt libiscsi libnfs libpng libslirp libssh libtasn1 libusb llvm lzo make meson mtools ncurses nettle ninja pixman pkg-config python3 rpm2cpio sdl2 sdl2_image snappy socat sparse spice-protocol tesseract usbredir vde vte3 xorriso zlib zstd' PYPI_PKGS='PyYAML numpy pillow sphinx sphinx-rtd-theme' PYTHON='/opt/homebrew/bin/python3' diff --git a/tests/docker/dockerfiles/alpine.docker b/tests/docker/dockerfiles/alpine.docker index 81c70aeaf94..0097637dcad 100644 --- a/tests/docker/dockerfiles/alpine.docker +++ b/tests/docker/dockerfiles/alpine.docker @@ -19,7 +19,6 @@ RUN apk update && \ ca-certificates \ capstone-dev \ ccache \ - cdrkit \ ceph-dev \ clang \ cmocka-dev \ @@ -67,6 +66,7 @@ RUN apk update && \ make \ mesa-dev \ meson \ + mtools \ multipath-tools \ musl-dev \ ncurses-dev \ @@ -108,6 +108,7 @@ RUN apk update && \ which \ xen-dev \ xfsprogs-dev \ + xorriso \ zlib-dev \ zlib-static \ zstd \ diff --git a/tests/docker/dockerfiles/centos8.docker b/tests/docker/dockerfiles/centos8.docker index 1a6a9087c11..78f454b782d 100644 --- a/tests/docker/dockerfiles/centos8.docker +++ b/tests/docker/dockerfiles/centos8.docker @@ -36,7 +36,6 @@ RUN dnf distro-sync -y && \ fuse3-devel \ gcc \ gcc-c++ \ - genisoimage \ gettext \ git \ glib2-devel \ @@ -82,6 +81,7 @@ RUN dnf distro-sync -y && \ lzo-devel \ make \ mesa-libgbm-devel \ + mtools \ ncurses-devel \ nettle-devel \ ninja-build \ @@ -114,6 +114,7 @@ RUN dnf distro-sync -y && \ vte291-devel \ which \ xfsprogs-devel \ + xorriso \ zlib-devel \ zlib-static \ zstd && \ diff --git a/tests/docker/dockerfiles/debian-amd64-cross.docker b/tests/docker/dockerfiles/debian-amd64-cross.docker index 2e7eb445f16..40a2b6acc48 100644 --- a/tests/docker/dockerfiles/debian-amd64-cross.docker +++ b/tests/docker/dockerfiles/debian-amd64-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker index 28e2fa81b1d..e39871c7bb5 100644 --- a/tests/docker/dockerfiles/debian-amd64.docker +++ b/tests/docker/dockerfiles/debian-amd64.docker @@ -28,7 +28,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ g++ \ gcc \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -103,6 +102,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ multipath-tools \ ncat \ nettle-dev \ @@ -127,6 +127,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tesseract-ocr \ tesseract-ocr-eng \ xfslibs-dev \ + xorriso \ zlib1g-dev \ zstd && \ eatmydata apt-get autoremove -y && \ diff --git a/tests/docker/dockerfiles/debian-arm64-cross.docker b/tests/docker/dockerfiles/debian-arm64-cross.docker index f558770f845..c99300bbfa7 100644 --- a/tests/docker/dockerfiles/debian-arm64-cross.docker +++ b/tests/docker/dockerfiles/debian-arm64-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-armel-cross.docker b/tests/docker/dockerfiles/debian-armel-cross.docker index f3d7e07cce5..5db5c78b31a 100644 --- a/tests/docker/dockerfiles/debian-armel-cross.docker +++ b/tests/docker/dockerfiles/debian-armel-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-armhf-cross.docker b/tests/docker/dockerfiles/debian-armhf-cross.docker index 531c556ad5a..ae6600b25fc 100644 --- a/tests/docker/dockerfiles/debian-armhf-cross.docker +++ b/tests/docker/dockerfiles/debian-armhf-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker index 816dbd29113..daa2d48e36b 100644 --- a/tests/docker/dockerfiles/debian-mips64el-cross.docker +++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-mipsel-cross.docker b/tests/docker/dockerfiles/debian-mipsel-cross.docker index b115b29af3d..5af04e2054e 100644 --- a/tests/docker/dockerfiles/debian-mipsel-cross.docker +++ b/tests/docker/dockerfiles/debian-mipsel-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-ppc64el-cross.docker b/tests/docker/dockerfiles/debian-ppc64el-cross.docker index 301bddb5367..1eeba7fcabc 100644 --- a/tests/docker/dockerfiles/debian-ppc64el-cross.docker +++ b/tests/docker/dockerfiles/debian-ppc64el-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker index 5d27c91c171..52e89a6dabc 100644 --- a/tests/docker/dockerfiles/debian-s390x-cross.docker +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker @@ -25,7 +25,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ findutils \ flex \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -37,6 +36,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ ncat \ ninja-build \ openssh-client \ @@ -57,6 +57,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tar \ tesseract-ocr \ tesseract-ocr-eng \ + xorriso \ zstd && \ eatmydata apt-get autoremove -y && \ eatmydata apt-get autoclean -y && \ diff --git a/tests/docker/dockerfiles/fedora-win32-cross.docker b/tests/docker/dockerfiles/fedora-win32-cross.docker index e7966ec7fd2..dc72ae9cc9c 100644 --- a/tests/docker/dockerfiles/fedora-win32-cross.docker +++ b/tests/docker/dockerfiles/fedora-win32-cross.docker @@ -30,7 +30,6 @@ exec "$@"\n' > /usr/bin/nosync && \ findutils \ flex \ gcovr \ - genisoimage \ git \ glib2-devel \ glibc-langpack-en \ @@ -38,6 +37,7 @@ exec "$@"\n' > /usr/bin/nosync && \ llvm \ make \ meson \ + mtools \ ninja-build \ nmap-ncat \ openssh-clients \ @@ -59,6 +59,7 @@ exec "$@"\n' > /usr/bin/nosync && \ tesseract-langpack-eng \ util-linux \ which \ + xorriso \ zstd && \ nosync dnf autoremove -y && \ nosync dnf clean all -y diff --git a/tests/docker/dockerfiles/fedora-win64-cross.docker b/tests/docker/dockerfiles/fedora-win64-cross.docker index 86c3a8f2ac0..7eb4a5dba21 100644 --- a/tests/docker/dockerfiles/fedora-win64-cross.docker +++ b/tests/docker/dockerfiles/fedora-win64-cross.docker @@ -30,7 +30,6 @@ exec "$@"\n' > /usr/bin/nosync && \ findutils \ flex \ gcovr \ - genisoimage \ git \ glib2-devel \ glibc-langpack-en \ @@ -38,6 +37,7 @@ exec "$@"\n' > /usr/bin/nosync && \ llvm \ make \ meson \ + mtools \ ninja-build \ nmap-ncat \ openssh-clients \ @@ -59,6 +59,7 @@ exec "$@"\n' > /usr/bin/nosync && \ tesseract-langpack-eng \ util-linux \ which \ + xorriso \ zstd && \ nosync dnf autoremove -y && \ nosync dnf clean all -y diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker index b698b7595de..3a69eefdda0 100644 --- a/tests/docker/dockerfiles/fedora.docker +++ b/tests/docker/dockerfiles/fedora.docker @@ -43,7 +43,6 @@ exec "$@"\n' > /usr/bin/nosync && \ gcc \ gcc-c++ \ gcovr \ - genisoimage \ gettext \ git \ glib2-devel \ @@ -90,6 +89,7 @@ exec "$@"\n' > /usr/bin/nosync && \ make \ mesa-libgbm-devel \ meson \ + mtools \ ncurses-devel \ nettle-devel \ ninja-build \ @@ -128,6 +128,7 @@ exec "$@"\n' > /usr/bin/nosync && \ which \ xen-devel \ xfsprogs-devel \ + xorriso \ zlib-devel \ zlib-static \ zstd && \ diff --git a/tests/docker/dockerfiles/opensuse-leap.docker b/tests/docker/dockerfiles/opensuse-leap.docker index afb9f5419f5..185abe57d85 100644 --- a/tests/docker/dockerfiles/opensuse-leap.docker +++ b/tests/docker/dockerfiles/opensuse-leap.docker @@ -81,7 +81,7 @@ RUN zypper update -y && \ lttng-ust-devel \ lzo-devel \ make \ - mkisofs \ + mtools \ ncat \ ncurses-devel \ ninja \ @@ -111,6 +111,7 @@ RUN zypper update -y && \ which \ xen-devel \ xfsprogs-devel \ + xorriso \ zlib-devel \ zlib-devel-static \ zstd && \ diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker index aa2f5ca7b45..8f864d19e60 100644 --- a/tests/docker/dockerfiles/ubuntu2004.docker +++ b/tests/docker/dockerfiles/ubuntu2004.docker @@ -28,7 +28,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ g++ \ gcc \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -100,6 +99,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ llvm \ locales \ make \ + mtools \ multipath-tools \ ncat \ nettle-dev \ @@ -126,6 +126,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tesseract-ocr \ tesseract-ocr-eng \ xfslibs-dev \ + xorriso \ zlib1g-dev \ zstd && \ eatmydata apt-get autoremove -y && \ diff --git a/tests/docker/dockerfiles/ubuntu2204.docker b/tests/docker/dockerfiles/ubuntu2204.docker index 3f7d30e5d02..1d442cdfe67 100644 --- a/tests/docker/dockerfiles/ubuntu2204.docker +++ b/tests/docker/dockerfiles/ubuntu2204.docker @@ -28,7 +28,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ g++ \ gcc \ gcovr \ - genisoimage \ gettext \ git \ hostname \ @@ -103,6 +102,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ locales \ make \ meson \ + mtools \ multipath-tools \ ncat \ nettle-dev \ @@ -127,6 +127,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \ tesseract-ocr \ tesseract-ocr-eng \ xfslibs-dev \ + xorriso \ zlib1g-dev \ zstd && \ eatmydata apt-get autoremove -y && \ diff --git a/tests/lcitool/projects/qemu.yml b/tests/lcitool/projects/qemu.yml index af3700379a4..566db8313b5 100644 --- a/tests/lcitool/projects/qemu.yml +++ b/tests/lcitool/projects/qemu.yml @@ -26,7 +26,6 @@ packages: - gcc - gcovr - gettext - - genisoimage - glib2 - glib2-native - glib2-static @@ -73,6 +72,7 @@ packages: - llvm - lttng-ust - lzo + - mtools - netcat - nettle - ninja @@ -116,6 +116,7 @@ packages: - which - xen - xfsprogs + - xorriso - zstdtools - zlib - zlib-static diff --git a/tests/qtest/cdrom-test.c b/tests/qtest/cdrom-test.c index 31d3bacd8c3..2b7e10d920e 100644 --- a/tests/qtest/cdrom-test.c +++ b/tests/qtest/cdrom-test.c @@ -17,7 +17,7 @@ static char isoimage[] = "cdrom-boot-iso-XXXXXX"; -static int exec_genisoimg(const char **args) +static int exec_xorrisofs(const char **args) { gchar *out_err = NULL; gint exit_status = -1; @@ -43,7 +43,7 @@ static int prepare_image(const char *arch, char *isoimage) char *codefile = NULL; int ifh, ret = -1; const char *args[] = { - "genisoimage", "-quiet", "-l", "-no-emul-boot", + "xorrisofs", "-quiet", "-l", "-no-emul-boot", "-b", NULL, "-o", isoimage, srcdir, NULL }; @@ -75,9 +75,9 @@ static int prepare_image(const char *arch, char *isoimage) } args[5] = strchr(codefile, '/') + 1; - ret = exec_genisoimg(args); + ret = exec_xorrisofs(args); if (ret) { - fprintf(stderr, "genisoimage failed: %i\n", ret); + fprintf(stderr, "xorrisofs failed: %i\n", ret); } unlink(codefile); @@ -211,12 +211,12 @@ int main(int argc, char **argv) { int ret; const char *arch = qtest_get_arch(); - const char *genisocheck[] = { "genisoimage", "-version", NULL }; + const char *xorrisocheck[] = { "xorrisofs", "-version", NULL }; g_test_init(&argc, &argv, NULL); - if (exec_genisoimg(genisocheck)) { - /* genisoimage not available - so can't run tests */ + if (exec_xorrisofs(xorrisocheck)) { + /* xorrisofs not available - so can't run tests */ return g_test_run(); }