python: Configure tox to skip missing interpreters

Currently tox tests against the installed interpreters, however if any
supported interpreter is absent then it will return fail. It seems not
reasonable to expect developers to have all supported interpreters
installed on their systems. Luckily tox can be configured to skip
missing interpreters.

This changed the tox setup so that missing interpreters are skipped by
default. On the CI, however, we still want to enforce it tests
against all supported. This way on CI the
--skip-missing-interpreters=false option is passed to tox.

Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Message-Id: <20210630184546.456582-1-wainersm@redhat.com>
Reviewed-by: Willian Rampazzo <willianr@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: Cleber Rosa <crosa@redhat.com>
This commit is contained in:
Wainer dos Santos Moschetta 2021-06-30 15:45:46 -03:00 committed by Cleber Rosa
parent 3843a32152
commit 6f651a6d84
3 changed files with 6 additions and 1 deletions

View file

@ -43,6 +43,7 @@ check-python-tox:
- make -C python check-tox
variables:
GIT_DEPTH: 1
QEMU_TOX_EXTRA_ARGS: --skip-missing-interpreters=false
needs:
job: python-container
allow_failure: true

View file

@ -1,4 +1,5 @@
QEMU_VENV_DIR=.dev-venv
QEMU_TOX_EXTRA_ARGS ?=
.PHONY: help
help:
@ -15,6 +16,8 @@ help:
@echo " These tests use the newest dependencies."
@echo " Requires: Python 3.6 - 3.10, and tox."
@echo " Hint (Fedora): 'sudo dnf install python3-tox python3.10'"
@echo " The variable QEMU_TOX_EXTRA_ARGS can be use to pass extra"
@echo " arguments to tox".
@echo ""
@echo "make check-dev:"
@echo " Run tests in a venv against your default python3 version."
@ -87,7 +90,7 @@ check:
.PHONY: check-tox
check-tox:
@tox
@tox $(QEMU_TOX_EXTRA_ARGS)
.PHONY: clean
clean:

View file

@ -121,6 +121,7 @@ multi_line_output=3
[tox:tox]
envlist = py36, py37, py38, py39, py310
skip_missing_interpreters = true
[testenv]
allowlist_externals = make