On 4/24/2026 8:42 AM, Daniel P. Berrangé wrote: > CI is only exercising the qcow2 'auto' tests currently. As a result we > get no exposure of changes which cause regressions in other block format > drivers. > > This adds new CI jobs for each block format, that will run the target > 'make check-block-$FORMAT'. The jobs are separate so that we have the > ability to make each format gating or not, depending on their level > of reliability. > > The 'centos' image is used to run the I/O tests since several tests > have an implicit dependency on x86_64-softmmu, and thus break with > other architecture targets. The 'centos' build job is the only one > that creates the x86_64-softmmu target in CI. Ideally this target > portability in I/O tests would be fixed to avoid this limitation. > > There is currently an undiagnosed failure of job 185 with the qcow2 > when run in CI that is marked to be skipped, reported at: > > https://gitlab.com/qemu-project/qemu/-/issues/3270 > > Signed-off-by: Daniel P. Berrangé <[email protected]> > --- > .gitlab-ci.d/buildtest.yml | 98 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 98 insertions(+) > > diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml > index 4b1949a3a5..d4591d30e9 100644 > --- a/.gitlab-ci.d/buildtest.yml > +++ b/.gitlab-ci.d/buildtest.yml > @@ -174,6 +174,104 @@ build-system-centos: > x86_64-softmmu rx-softmmu sh4-softmmu > MAKE_CHECK_ARGS: check-build > > + > +# NB: block-XXX jobs use 'centos' since that is the build > +# job that provides the x86_64-softmmu. Some I/O tests > +# are currently buggy and blindly assume characteristics > +# of x86 (such as PCIe) causing failures with other arches > + > +block-luks: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-luks > + > +block-nbd: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-nbd > + > +block-parallels: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-parallels > + > +block-qcow2: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-qcow2 > + # https://gitlab.com/qemu-project/qemu/-/issues/3270 > + QEMU_TEST_IO_SKIP: qcow2:185 > + > +block-qed: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-qed > + > +block-raw: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-raw > + > +block-vdi: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-vdi > + > +block-vhdx: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-vhdx > + > +block-vmdk: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-vmdk > + > +block-vpc: > + extends: .native_test_job_template > + needs: > + - job: build-system-centos > + artifacts: true > + variables: > + IMAGE: centos9 > + MAKE_CHECK_ARGS: check-block-vpc > + > # Previous QEMU release. Used for cross-version migration tests. > build-previous-qemu: > extends: .native_build_job_template
You may want to use a gitlab parallel matrix here, since it's basically a copy paste with driver name changed. And either you can set QEMU_TEST_IO_SKIP for all of them, or simply remove the broken test from tree. Regards, Pierrick
