]> git.proxmox.com Git - mirror_qemu.git/commit
Revert "tests: Use separate virtual environment for avocado"
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 8 Aug 2023 09:28:08 +0000 (11:28 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 28 Aug 2023 07:55:48 +0000 (09:55 +0200)
commitc03f57fd5bf72588a05750f14202f63be7ddbd0c
tree2a64a0a9eb0180d28d3dc023333e22294e42f049
parentc853c4d08728f8e7fa6965e8508ed826b5461f04
Revert "tests: Use separate virtual environment for avocado"

This reverts commit e8e4298feadae7924cf7600bb3bcc5b0a8d7cbe9.

ensuregroup allows to specify both the acceptable versions of avocado,
and a locked version to be used when avocado is not installed as a system
pacakge.  This lets us install avocado in pyvenv/ using "mkvenv.py" and
reuse the distro package on Fedora and CentOS Stream (the only distros
where it's available).

ensuregroup's usage of "(>=..., <=...)" constraints when evaluating
the distro package, and "==" constraints when installing it from PyPI,
makes it possible to avoid conflicts between the known-good version and
a package plugins included in the distro.

This is because package plugins have "==" constraints on the version
that is included in the distro, and, using "pip install avocado==88.1"
on a venv that includes system packages will result in an error:

   avocado-framework-plugin-varianter-yaml-to-mux 98.0 requires avocado-framework==98.0, but you have avocado-framework 88.1 which is incompatible.
   avocado-framework-plugin-result-html 98.0 requires avocado-framework==98.0, but you have avocado-framework 88.1 which is incompatible.

But at the same time, if the venv does not include a system distribution
of avocado then we can install a known-good version and stick to LTS
releases.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1663
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
.gitlab-ci.d/buildtest.yml
docs/devel/acpi-bits.rst
docs/devel/testing.rst
python/scripts/mkvenv.py
pythondeps.toml
scripts/ci/org.centos/stream/8/x86_64/test-avocado
scripts/device-crash-test
tests/Makefile.include
tests/requirements.txt [deleted file]
tests/vm/Makefile.include