From 6f2a356ca10ab97ed257097996593d707eca9bd7 Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Sun, 6 Apr 2025 07:59:25 +0200 Subject: add a new family of wrappers for EFI based images debefivm-create is based on mmdebstrap-autopkgtest-build-qemu, which is is co-authored with Johannes Schauer Marin Rodrigues. Also thanks to Jochen Sprickerhof for suggesting the --rootsize option for use in Debusine. --- debian/clean | 3 +++ debian/debvm.manpages | 3 +++ debian/rules | 13 ++++++++----- 3 files changed, 14 insertions(+), 5 deletions(-) (limited to 'debian') diff --git a/debian/clean b/debian/clean index e3e1d26..2d50bae 100644 --- a/debian/clean +++ b/debian/clean @@ -1,3 +1,6 @@ +debefivm-create.1 +debefivm-run.1 +debefivm-ukify.1 debvm-create.1 debvm-run.1 debvm-waitssh.1 diff --git a/debian/debvm.manpages b/debian/debvm.manpages index e3e1d26..2d50bae 100644 --- a/debian/debvm.manpages +++ b/debian/debvm.manpages @@ -1,3 +1,6 @@ +debefivm-create.1 +debefivm-run.1 +debefivm-ukify.1 debvm-create.1 debvm-run.1 debvm-waitssh.1 diff --git a/debian/rules b/debian/rules index 36a2e9b..2677cce 100755 --- a/debian/rules +++ b/debian/rules @@ -3,10 +3,13 @@ %: dh $@ -override_dh_auto_build: - pod2man bin/debvm-create debvm-create.1 - pod2man bin/debvm-run debvm-run.1 - pod2man bin/debvm-waitssh debvm-waitssh.1 +%.1:bin/% + pod2man $< $@ + +override_dh_auto_build:debefivm-create.1 debefivm-run.1 debefivm-ukify.1 debvm-create.1 debvm-run.1 debvm-waitssh.1 execute_after_dh_install: - sed -i -e 's,^\(SHARE_DIR=\).*,\1/usr/share/debvm,' debian/debvm/usr/bin/* + sed -i \ + -e 's,^\(SHARE_DIR=\).*,\1/usr/share/debvm,' \ + -e 's,^\(BIN_DIR=\).*,\1,' \ + debian/debvm/usr/bin/* -- cgit v1.2.3 From a46f86dfc3311088c2ee3d7fca72b5f6fbbc40ef Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Sun, 6 Apr 2025 17:31:53 +0200 Subject: d/control: extend recommends and suggests for debefivm-* and document their need --- debian/control | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) (limited to 'debian') diff --git a/debian/control b/debian/control index 536b86c..0d2e123 100644 --- a/debian/control +++ b/debian/control @@ -17,18 +17,41 @@ Depends: e2fsprogs, mmdebstrap (>= 1.3.0), qemu-system-native | qemu-kvm (>> 1:8.0) | qemu-system-any, -# Required for -device virtio-net-pci,netdev=net0 +# *-run for -device virtio-net-pci,netdev=net0 ipxe-qemu, Recommends: - arch-test, - file, +# *-create + uidmap, + qemu-user-binfmt (>= 1:9.1.0+ds-1~) | qemu-user-static (<< 1:9.1.0+ds-1~), systemd | binfmt-support, - openssh-client, +# *-run for non-native qemu-system, - qemu-user-binfmt (>= 1:9.1.0+ds-1~) | qemu-user-static (<< 1:9.1.0+ds-1~), +# *-run for ppc64el seabios, - uidmap, +# debvm-run + arch-test, + file, +# debefivm-create + dosfstools, + fdisk, + mount, + mtools, + systemd, + systemd-ukify | binutils-multiarch, +# debefivm-run for amd64 + ovmf, +# debvm-waitssh + openssh-client, Suggests: +# debefivm-run for i386 + ovmf-ia32, +# debefivm-run for arm64 + qemu-efi-aarch64, +# debefivm-run for armel and armhf + qemu-efi-arm, +# debefivm-run for riscv64 + qemu-efi-riscv64, +# *-run for --graphical qemu-system-gui, Description: create and run virtual machines for various Debian releases and architectures The tool debvm-create can be used to create a virtual machine image and -- cgit v1.2.3 From 437a5587f1ac95fd340ba45a5c9933d4c7a24f4b Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Fri, 11 Apr 2025 12:44:16 +0200 Subject: enable basic debefivm salsa tests as autopkgtest --- debian/tests/control | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'debian') diff --git a/debian/tests/control b/debian/tests/control index 2bbe973..a7f5bf7 100644 --- a/debian/tests/control +++ b/debian/tests/control @@ -1,15 +1,29 @@ +Features: test-name=debvm-root Test-Command: setsid ./tests/create-and-run.sh $(dpkg --print-architecture) "" Depends: debian-archive-keyring, debvm, expect, file, openssh-client, seabios [ppc64el], qemu-kvm [!loong64], qemu-system-misc [loong64] Restrictions: allow-stderr, needs-internet, needs-root # Skip running on armel and armhf as the emulation is too slow there to actually work. Architecture: !armel !armhf +Features: test-name=debvm-unshare Test-Command: unshare -U -m -p -f -r --mount-proc true || exit 77; ./tests/create-and-run.sh $(dpkg --print-architecture) "" Depends: debian-archive-keyring, debvm, expect, file, openssh-client, seabios [ppc64el], uidmap, qemu-kvm [!loong64], qemu-system-misc [loong64] Restrictions: allow-stderr, needs-internet, skippable # Skip running on armel and armhf as the emulation is too slow there to actually work. Architecture: !armel !armhf +Features: test-name=debefivm-root +Test-Command: setsid ./tests/efi-create-and-run.sh $(dpkg --print-architecture) "" +Depends: debian-archive-keyring, debvm, dosfstools, expect, fdisk, mount, mtools, openssh-client, ovmf [amd64], qemu-efi-aarch64 [arm64], qemu-kvm, systemd, systemd-ukify +Restrictions: allow-stderr, needs-internet, needs-root +Architecture: amd64 arm64 + +Features: test-name=debefivm-unshare +Test-Command: unshare -U -m -p -f -r --mount-proc true || exit 77; ./tests/efi-create-and-run.sh $(dpkg --print-architecture) "" +Depends: debian-archive-keyring, debvm, dosfstools, expect, fdisk, mount, mtools, openssh-client, ovmf [amd64], qemu-efi-aarch64 [arm64], qemu-kvm, systemd, systemd-ukify, uidmap +Restrictions: allow-stderr, needs-internet, skippable +Architecture: amd64 arm64 + Features: test-name=hint-testsuite-triggers Test-Command: false Depends: linux-image-cloud-amd64 [amd64], linux-image-cloud-arm64 [arm64], linux-image-armmp [armhf], linux-image-5kc-malta [mips64el], linux-image-4kc-malta [mipsel], linux-image-powerpc64le [ppc64el], linux-image-s390x [s390x], mmdebstrap, qemu-system, systemd -- cgit v1.2.3