mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-26 11:53:53 -06:00
Revert "tests: Use separate virtual environment for avocado"
This reverts commit e8e4298fea
.
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>
This commit is contained in:
parent
c853c4d087
commit
c03f57fd5b
10 changed files with 37 additions and 42 deletions
|
@ -964,14 +964,11 @@ def _parse_groups(file: str) -> Dict[str, Dict[str, Any]]:
|
|||
"Python >=3.11 does not have tomllib... what have you done!?"
|
||||
)
|
||||
|
||||
try:
|
||||
# Use loads() to support both tomli v1.2.x (Ubuntu 22.04,
|
||||
# Debian bullseye-backports) and v2.0.x
|
||||
with open(file, "r", encoding="ascii") as depfile:
|
||||
contents = depfile.read()
|
||||
return tomllib.loads(contents) # type: ignore
|
||||
except tomllib.TOMLDecodeError as exc:
|
||||
raise Ouch(f"parsing {file} failed: {exc}") from exc
|
||||
# Use loads() to support both tomli v1.2.x (Ubuntu 22.04,
|
||||
# Debian bullseye-backports) and v2.0.x
|
||||
with open(file, "r", encoding="ascii") as depfile:
|
||||
contents = depfile.read()
|
||||
return tomllib.loads(contents) # type: ignore
|
||||
|
||||
|
||||
def ensure_group(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue