From: Cornelia Huck <cohuck@redhat.com>
To: Cleber Rosa <crosa@redhat.com>
Cc: qemu-devel@nongnu.org, "Caio Carrara" <ccarrara@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Aleksandar Rikalo" <arikalo@wavecomp.com>,
"Aurelien Jarno" <aurelien@aurel32.net>,
"Fam Zheng" <fam@euphon.net>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Stefan Markovic" <smarkovic@wavecomp.com>,
qemu-s390x@nongnu.org,
"Aleksandar Markovic" <amarkovic@wavecomp.com>
Subject: Re: [Qemu-devel] [PATCH v3 07/20] Acceptance tests: look for target architecture in test tags first
Date: Fri, 1 Mar 2019 11:37:19 +0100 [thread overview]
Message-ID: <20190301113719.2111b521.cohuck@redhat.com> (raw)
In-Reply-To: <20190221005753.27955-8-crosa@redhat.com>
On Wed, 20 Feb 2019 19:57:40 -0500
Cleber Rosa <crosa@redhat.com> wrote:
> A test can, optionally, be tagged for one or many architectures. If a
> test has been tagged for a single architecture, there's a high chance
> that the test won't run on other architectures. This changes the
> default order of choosing a default target architecture to use based
> on the 'arch' tag value first.
>
> The precedence order is for choosing a QEMU binary to use for a test
> is now:
>
> * qemu_bin parameter
> * arch parameter
> * arch tag value (for example, x86_64 if ":avocado: tags=arch:x86_64
> is used)
>
> This means that if one runs:
>
> $ avocado run -p qemu_bin=/usr/bin/qemu-system-x86_64 test.py
>
> No arch parameter or tag will influence the selection of the QEMU
> target binary. If one runs:
>
> $ avocado run -p arch=ppc64 test.py
>
> The target binary selection mechanism will attempt to find a binary
> such as "ppc64-softmmu/qemu-system-ppc64". And finally, if one runs
> a test that is tagged (in its docstring) with "arch:aarch64":
>
> $ avocado run aarch64.py
>
> The target binary selection mechanism will attempt to find a binary
> such as "aarch64-softmmu/qemu-system-aarch64".
>
> At this time, no provision is made to cancel the execution of tests if
> the arch parameter given (manually) does not match the test "arch"
> tag, but it may be a useful default behavior to be added in the
> future.
Would it be useful as well to cancel a test if the passed-in qemu_bin
parameter clashed with the tagged architecture?
>
> Signed-off-by: Cleber Rosa <crosa@redhat.com>
> ---
> docs/devel/testing.rst | 4 +++-
> tests/acceptance/avocado_qemu/__init__.py | 7 ++++++-
> 2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/docs/devel/testing.rst b/docs/devel/testing.rst
> index 6035db1b44..87bcf8ef43 100644
> --- a/docs/devel/testing.rst
> +++ b/docs/devel/testing.rst
> @@ -702,7 +702,9 @@ A test may, for instance, use the same value when selecting the
> architecture of a kernel or disk image to boot a VM with.
>
> The ``arch`` attribute will be set to the test parameter of the same
> -name, and if one is not given explicitly, it will be set to ``None``.
> +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=arch:VALUE`` tag, it will be set to ``VALUE``.
>
> qemu_bin
> ~~~~~~~~
> diff --git a/tests/acceptance/avocado_qemu/__init__.py b/tests/acceptance/avocado_qemu/__init__.py
> index f580582602..9e98d113cb 100644
> --- a/tests/acceptance/avocado_qemu/__init__.py
> +++ b/tests/acceptance/avocado_qemu/__init__.py
> @@ -53,7 +53,12 @@ def pick_default_qemu_bin(arch=None):
> class Test(avocado.Test):
> def setUp(self):
> self.vm = None
> - self.arch = self.params.get('arch')
> + arches = self.tags.get('arch', [])
> + if len(arches) == 1:
> + arch = arches.pop()
> + else:
> + arch = None
> + self.arch = self.params.get('arch', default=arch)
> default_qemu_bin = pick_default_qemu_bin(arch=self.arch)
> self.qemu_bin = self.params.get('qemu_bin',
> default=default_qemu_bin)
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
next prev parent reply other threads:[~2019-03-01 10:37 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-21 0:57 [Qemu-devel] [PATCH v3 00/20] Acceptance Tests: target architecture support Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 01/20] scripts/qemu.py: log QEMU launch command line Cleber Rosa
2019-03-01 10:16 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 02/20] Acceptance tests: show avocado test execution by default Cleber Rosa
2019-03-01 10:19 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 03/20] Acceptance tests: improve docstring on pick_default_qemu_bin() Cleber Rosa
2019-03-01 10:21 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 04/20] Acceptance tests: fix doc reference to avocado_qemu directory Cleber Rosa
2019-03-01 10:22 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 05/20] Acceptance tests: introduce arch parameter and attribute Cleber Rosa
2019-03-01 10:27 ` Cornelia Huck
2019-03-11 23:28 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 06/20] Acceptance tests: use "arch:" tag to filter target specific tests Cleber Rosa
2019-03-01 10:32 ` Cornelia Huck
2019-03-11 23:45 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 07/20] Acceptance tests: look for target architecture in test tags first Cleber Rosa
2019-03-01 10:37 ` Cornelia Huck [this message]
2019-03-11 23:50 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 08/20] Boot Linux Console Test: rename the x86_64 after the arch and machine Cleber Rosa
2019-03-01 10:38 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 09/20] Boot Linux Console Test: update the x86_64 kernel Cleber Rosa
2019-03-01 10:41 ` Cornelia Huck
2019-03-11 23:58 ` Cleber Rosa
2019-03-02 21:42 ` Philippe Mathieu-Daudé
2019-03-12 0:00 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 10/20] Boot Linux Console Test: add common kernel command line options Cleber Rosa
2019-03-01 10:43 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 11/20] Boot Linux Console Test: increase timeout Cleber Rosa
2019-03-01 10:45 ` Cornelia Huck
2019-03-02 21:43 ` Philippe Mathieu-Daudé
2019-03-12 0:04 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 12/20] Boot Linux Console Test: refactor the console watcher into utility method Cleber Rosa
2019-03-01 10:47 ` Cornelia Huck
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 13/20] scripts/qemu.py: support adding a console with the default serial device Cleber Rosa
2019-03-01 10:55 ` Cornelia Huck
2019-03-12 0:47 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 14/20] Boot Linux Console Test: add a test for mips + malta Cleber Rosa
2019-02-22 20:02 ` Aleksandar Markovic
2019-03-02 21:44 ` Philippe Mathieu-Daudé
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 15/20] Boot Linux Console Test: add a test for mips64el " Cleber Rosa
2019-02-22 20:01 ` Aleksandar Markovic
2019-03-02 21:39 ` Philippe Mathieu-Daudé
2019-03-12 1:06 ` Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 16/20] Boot Linux Console Test: add a test for ppc64 + pseries Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 17/20] Boot Linux Console Test: add a test for aarch64 + virt Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 18/20] Boot Linux Console Test: add a test for arm " Cleber Rosa
2019-03-02 20:13 ` Philippe Mathieu-Daudé
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 19/20] Boot Linux Console Test: add a test for s390x + s390-ccw-virtio Cleber Rosa
2019-02-21 0:57 ` [Qemu-devel] [PATCH v3 20/20] Boot Linux Console Test: add a test for alpha + clipper Cleber Rosa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190301113719.2111b521.cohuck@redhat.com \
--to=cohuck@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=amarkovic@wavecomp.com \
--cc=arikalo@wavecomp.com \
--cc=aurelien@aurel32.net \
--cc=ccarrara@redhat.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=fam@euphon.net \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=smarkovic@wavecomp.com \
--cc=wainersm@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.