tests: add "TESTS_PYTHON" variable to Makefile
This is a convenience feature: $(PYTHON) points to the Python executable we were instructed to use by the configure script. We use that Python to create a virtual environment with the "check-venv" target in tests/Makefile.include. $(TESTS_PYTHON) points to the Python executable belonging to the virtual environment tied to the build. This Python executable is a symlink to the binary used to create the venv, which will be the version provided at configure time. Using $(TESTS_PYTHON) therefore uses the $(PYTHON) executable, but with paths modified to use packages installed to the venv. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20220526000921.1581503-3-jsnow@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
e7874a50ff
commit
caa0f7cbaf
@ -89,6 +89,7 @@ TARGETS=$(patsubst libqemu-%.fa, %, $(filter libqemu-%.fa, $(ninja-targets)))
|
||||
TESTS_VENV_DIR=$(BUILD_DIR)/tests/venv
|
||||
TESTS_VENV_REQ=$(SRC_PATH)/tests/requirements.txt
|
||||
TESTS_RESULTS_DIR=$(BUILD_DIR)/tests/results
|
||||
TESTS_PYTHON=$(TESTS_VENV_DIR)/bin/python
|
||||
ifndef AVOCADO_TESTS
|
||||
AVOCADO_TESTS=tests/avocado
|
||||
endif
|
||||
@ -108,7 +109,7 @@ $(TESTS_VENV_DIR): $(TESTS_VENV_REQ)
|
||||
$(PYTHON) -m venv $@, \
|
||||
VENV, $@)
|
||||
$(call quiet-command, \
|
||||
$(TESTS_VENV_DIR)/bin/python -m pip -q install -r $(TESTS_VENV_REQ), \
|
||||
$(TESTS_PYTHON) -m pip -q install -r $(TESTS_VENV_REQ), \
|
||||
PIP, $(TESTS_VENV_REQ))
|
||||
$(call quiet-command, touch $@)
|
||||
|
||||
@ -126,7 +127,7 @@ FEDORA_31_DOWNLOAD=$(filter $(FEDORA_31_ARCHES),$(FEDORA_31_ARCHES_CANDIDATES))
|
||||
# download one specific Fedora 31 image
|
||||
get-vm-image-fedora-31-%: check-venv
|
||||
$(call quiet-command, \
|
||||
$(TESTS_VENV_DIR)/bin/python -m avocado vmimage get \
|
||||
$(TESTS_PYTHON) -m avocado vmimage get \
|
||||
--distro=fedora --distro-version=31 --arch=$*, \
|
||||
"AVOCADO", "Downloading avocado tests VM image for $*")
|
||||
|
||||
@ -135,7 +136,7 @@ get-vm-images: check-venv $(patsubst %,get-vm-image-fedora-31-%, $(FEDORA_31_DOW
|
||||
|
||||
check-avocado: check-venv $(TESTS_RESULTS_DIR) get-vm-images
|
||||
$(call quiet-command, \
|
||||
$(TESTS_VENV_DIR)/bin/python -m avocado \
|
||||
$(TESTS_PYTHON) -m avocado \
|
||||
--show=$(AVOCADO_SHOW) run --job-results-dir=$(TESTS_RESULTS_DIR) \
|
||||
$(if $(AVOCADO_TAGS),, --filter-by-tags-include-empty \
|
||||
--filter-by-tags-include-empty-key) \
|
||||
|
Loading…
Reference in New Issue
Block a user