Bug#1001250: reprotest: code copied from autopkgtest is no longer compatible with current qemu
Simon McVittie
smcv at debian.org
Mon Dec 6 23:22:39 GMT 2021
Package: reprotest
Version: 0.7.19
Severity: important
To reproduce: try building some random package using a VM image produced by
autopkgtest-build-qemu, on a sid host.
> $ reprotest . -- qemu ~/.cache/vectis/debian/sid/amd64/autopkgtest.qcow2
> WARNING:reprotest:The control build runs on 1 CPU by default, give --min-cpus to increase this.
> <VirtSubproc>: failure: ['qemu-img', 'create', '-f', 'qcow2', '-b', '/home/smcv/.cache/vectis/debian/sid/amd64/autopkgtest.qcow2', '/tmp/autopkgtest-virt-qemu.wnvmilzt/overlay.img'] failed (exit status 1, stderr 'qemu-img: /tmp/autopkgtest-virt-qemu.wnvmilzt/overlay.img: Backing file specified without backing format\nDetected format of qcow2.')
> Traceback (most recent call last):
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 847, in run
> return 0 if check_func(*check_args) else 1
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 360, in check
> proc = test_args._replace(result_dir=result_dir).corun_builds(testbed_args)
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 114, in start
> next(cr)
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 312, in corun_builds
> with start_testbed(virtual_server_args, temp_dir, no_clean_on_error,
> File "/usr/lib/python3.9/contextlib.py", line 119, in __enter__
> return next(self.gen)
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 86, in start_testbed
> testbed.open()
> File "/usr/lib/python3/dist-packages/reprotest/lib/adt_testbed.py", line 164, in open
> pl = self.command('open', (), 1)
> File "/usr/lib/python3/dist-packages/reprotest/lib/adt_testbed.py", line 435, in command
> ll = self.expect('ok', nresults)
> File "/usr/lib/python3/dist-packages/reprotest/lib/adt_testbed.py", line 403, in expect
> self.bomb('unexpected eof from the testbed')
> File "/usr/lib/python3/dist-packages/reprotest/__init__.py", line 70, in bomb
> raise _type(m)
> reprotest.lib.adtlog.TestbedFailure: unexpected eof from the testbed
I think the necessary change to copy from autopkgtest is this one:
* qemu: Guess format of main disk image (Closes: #968598)
from autopkgtest/5.14, but there have been a lot of other changes to
autopkgtest-virt-qemu, and it now depends on a new private module shared
with autopkgtest-build-qemu.
I would recommend depending on autopkgtest and running the autopkgtest
virt backends (autopkgtest-virt-*) from the PATH, rather than having
a private copy of them: the interface between autopkgtest and its virt
backends is stable (and documented!), even if the adtlog, adt_testbed
and VirtSubproc private Python modules are not currently suitable to be
shared as-is.
smcv
-- System Information:
Debian Release: bookworm/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'stable-security'), (500, 'oldstable-debug'), (500, 'oldoldstable'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.15.0-2-amd64 (SMP w/4 CPU threads)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages reprotest depends on:
ii apt-utils 2.3.13
ii libdpkg-perl 1.21.0
ii procps 2:3.3.17-5
ii python3 3.9.8-1
ii python3-debian 0.1.42
ii python3-distro 1.6.0-2
ii python3-pkg-resources 59.4.0-1
ii python3-rstr 2.2.6-3
Versions of packages reprotest recommends:
ii diffoscope-minimal 195
ii disorderfs 0.5.11-2
ii faketime 0.9.8-9
ii locales-all 2.32-5
ii sudo 1.9.5p2-3
Versions of packages reprotest suggests:
ii autodep8 0.25
ii qemu-system 1:6.1+dfsg-8+b1
ii qemu-utils 1:6.1+dfsg-8+b1
ii schroot 1.6.10-12
-- no debconf information
More information about the Reproducible-builds
mailing list