Allow users to control which machine to use in tests where no particular
machine is specified. This is a good way to run tests in a machine
that's not the arch default, e.g. for qemu-system-x86_64 tests can be
run using a machine other than pc-i440fx.
This env var has greater effect when used together with the recently
added AVOCADO_DEFAULT_ARCH, allowing full control of what the tests
should use if no default arch/machine is given. In this example, a
check-avocado run will use the RISC-V 'virt' machine if no default
arch/machine is set:
AVOCADO_DEFAULT_ARCH=riscv64 AVOCADO_DEFAULT_MACHINE=virt make check-avocado
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
---
docs/devel/testing.rst | 8 +++++---
tests/avocado/avocado_qemu/__init__.py | 3 +++
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/docs/devel/testing.rst b/docs/devel/testing.rst
index 95d0a3e626..128b6ae964 100644
--- a/docs/devel/testing.rst
+++ b/docs/devel/testing.rst
@@ -1178,9 +1178,11 @@ The machine type that will be set to all QEMUMachine
instances created
by the test.
The ``machine`` attribute will be set to the test parameter of the same
-name. If one is not given explicitly, it will either be set to
-``None``, or, if the test is tagged with one (and only one)
-``:avocado: tags=machine:VALUE`` tag, it will be set to ``VALUE``.
+name. If one is not given explicitly, an env variable
+AVOCADO_DEFAULT_MACHINE can be used as default value if set. Otherwise
+it will either be set to ``None``, or, if the test is tagged with one
+(and only one) ``:avocado: tags=machine:VALUE`` tag, it will be set to
+``VALUE``.
qemu_bin
''''''''
diff --git a/tests/avocado/avocado_qemu/__init__.py
b/tests/avocado/avocado_qemu/__init__.py
index bc42985cbb..75eaaa9265 100644
--- a/tests/avocado/avocado_qemu/__init__.py
+++ b/tests/avocado/avocado_qemu/__init__.py
@@ -282,6 +282,9 @@ def setUp(self):
self.machine = self.params.get('machine',
default=self._get_unique_tag_val('machine'))