qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Thomas Huth <thuth@redhat.com>
Cc: qemu-devel@nongnu.org, "Fam Zheng" <fam@euphon.net>,
	"Kevin Wolf" <kwolf@redhat.com>, "Ed Maste" <emaste@freebsd.org>,
	qemu-block@nongnu.org, "Alex Bennée" <alex.bennee@linaro.org>,
	"Max Reitz" <mreitz@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	"Li-Wen Hsu" <lwhsu@freebsd.org>
Subject: Re: [Qemu-devel] [PATCH 2/6] tests/qemu-iotests/group: Introduce a new "ci" group for CI pipelines
Date: Wed, 24 Apr 2019 12:25:37 +0100	[thread overview]
Message-ID: <20190424112537.GF31388@redhat.com> (raw)
In-Reply-To: <20190424103747.10173-3-thuth@redhat.com>

On Wed, Apr 24, 2019 at 12:37:43PM +0200, Thomas Huth wrote:
> Tests in this group are supposed to run in every possible QEMU configuration.
> That means they should run with every QEMU binary (also non-x86), without
> dependencies on an optional features, they must work at least with the qcow2
> image format and be able to run on all kind of host filesystems and users
> (i.e. also as "nobody" or "root").
> 
> The initial list has been created as a subset of the "quick" group, where
> I've disabled all tests that are failing with qemu-system-aarch64 or
> qemu-system-tricore or in one of our CI pipelines.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  tests/qemu-iotests/group | 194 ++++++++++++++++++++-------------------
>  1 file changed, 102 insertions(+), 92 deletions(-)
> 
> diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
> index bae7718380..2ed42dcc14 100644
> --- a/tests/qemu-iotests/group
> +++ b/tests/qemu-iotests/group
> @@ -4,63 +4,73 @@
>  # - do not start group names with a digit
>  #
>  
> +#
> +# Some notes about the groups:
> +# - Tests in the "quick" group should finish within some few seconds
> +# - Tests in the "ci" group are suitable for running in CI systems. That
> +#   means they should run with every QEMU binary (also non-x86), with
> +#   every QEMU configuration (i.e. no dependency on an optional feature),
> +#   at least with the qcow2 image format and all kind of host filesystems
> +#   and users (i.e. also as "nobody" or "root").

No dependancy on optional features feels a bit restrictive from my POV.

We have quite alot of testing coverage of stuff that depends on the
crypto libraries that is important for us to run in "CI". This includes
LUKS block drivers, qcow2 with LUKS,  NBD with TLS. Personally I expect
all of those to be tested by CI systems.

IOW for a "CI" group, the bar should be higher than "no optional features"

Since we control the env used for CI via Docker or VM images, we can ensure
that they're populated with a set of packages that maximises our coverage.
All our platforms support gnutls for example, which gets us all the crypto
bits we need.

The problem of course is the desire to put this into "make check" by default
which developers can run in any configuration.

I think this is a sign that we need two distinct groupings.

Stuff run by a generic "make check" /should not/ depend on optional features,

Stuff run by an automated CI system /should/ depend on optional features. 

IOW, we should have:

   * "ci-min" - no deps on optional things configure might disable
   * "ci-max" - as many features as possible (assume Docker & VM
                images include them)

"make check" would default to "ci-min", but our CI systems can set
SPEED=thorough, causing "make check" to use "ci-max" instead ?

> -001 rw auto quick
> -002 rw auto quick
> +001 rw auto quick ci
> +002 rw auto quick ci
>  003 rw auto
> -004 rw auto quick
> -005 img auto quick
> +004 rw auto quick ci
> +005 img auto quick ci

Does anyone call what the "auto" group is supposed to be for ?

Its name kind of suggests it was for automated CI but maybe I'm reading
too much in to that ?


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

WARNING: multiple messages have this Message-ID (diff)
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Thomas Huth <thuth@redhat.com>
Cc: "Fam Zheng" <fam@euphon.net>, "Kevin Wolf" <kwolf@redhat.com>,
	"Ed Maste" <emaste@freebsd.org>,
	qemu-block@nongnu.org,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	qemu-devel@nongnu.org, "Max Reitz" <mreitz@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Li-Wen Hsu" <lwhsu@freebsd.org>
Subject: Re: [Qemu-devel] [PATCH 2/6] tests/qemu-iotests/group: Introduce a new "ci" group for CI pipelines
Date: Wed, 24 Apr 2019 12:25:37 +0100	[thread overview]
Message-ID: <20190424112537.GF31388@redhat.com> (raw)
Message-ID: <20190424112537.RgNyQoxrK7TTjkQGFHt9GGbV-c5QoOTM5ts2Wmx_uDA@z> (raw)
In-Reply-To: <20190424103747.10173-3-thuth@redhat.com>

On Wed, Apr 24, 2019 at 12:37:43PM +0200, Thomas Huth wrote:
> Tests in this group are supposed to run in every possible QEMU configuration.
> That means they should run with every QEMU binary (also non-x86), without
> dependencies on an optional features, they must work at least with the qcow2
> image format and be able to run on all kind of host filesystems and users
> (i.e. also as "nobody" or "root").
> 
> The initial list has been created as a subset of the "quick" group, where
> I've disabled all tests that are failing with qemu-system-aarch64 or
> qemu-system-tricore or in one of our CI pipelines.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  tests/qemu-iotests/group | 194 ++++++++++++++++++++-------------------
>  1 file changed, 102 insertions(+), 92 deletions(-)
> 
> diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
> index bae7718380..2ed42dcc14 100644
> --- a/tests/qemu-iotests/group
> +++ b/tests/qemu-iotests/group
> @@ -4,63 +4,73 @@
>  # - do not start group names with a digit
>  #
>  
> +#
> +# Some notes about the groups:
> +# - Tests in the "quick" group should finish within some few seconds
> +# - Tests in the "ci" group are suitable for running in CI systems. That
> +#   means they should run with every QEMU binary (also non-x86), with
> +#   every QEMU configuration (i.e. no dependency on an optional feature),
> +#   at least with the qcow2 image format and all kind of host filesystems
> +#   and users (i.e. also as "nobody" or "root").

No dependancy on optional features feels a bit restrictive from my POV.

We have quite alot of testing coverage of stuff that depends on the
crypto libraries that is important for us to run in "CI". This includes
LUKS block drivers, qcow2 with LUKS,  NBD with TLS. Personally I expect
all of those to be tested by CI systems.

IOW for a "CI" group, the bar should be higher than "no optional features"

Since we control the env used for CI via Docker or VM images, we can ensure
that they're populated with a set of packages that maximises our coverage.
All our platforms support gnutls for example, which gets us all the crypto
bits we need.

The problem of course is the desire to put this into "make check" by default
which developers can run in any configuration.

I think this is a sign that we need two distinct groupings.

Stuff run by a generic "make check" /should not/ depend on optional features,

Stuff run by an automated CI system /should/ depend on optional features. 

IOW, we should have:

   * "ci-min" - no deps on optional things configure might disable
   * "ci-max" - as many features as possible (assume Docker & VM
                images include them)

"make check" would default to "ci-min", but our CI systems can set
SPEED=thorough, causing "make check" to use "ci-max" instead ?

> -001 rw auto quick
> -002 rw auto quick
> +001 rw auto quick ci
> +002 rw auto quick ci
>  003 rw auto
> -004 rw auto quick
> -005 img auto quick
> +004 rw auto quick ci
> +005 img auto quick ci

Does anyone call what the "auto" group is supposed to be for ?

Its name kind of suggests it was for automated CI but maybe I'm reading
too much in to that ?


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|


  parent reply	other threads:[~2019-04-24 11:46 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-24 10:37 [Qemu-devel] [PATCH 0/6] tests/qemu-iotests: Run basic iotests during "make check" Thomas Huth
2019-04-24 10:37 ` Thomas Huth
2019-04-24 10:37 ` [Qemu-devel] [PATCH 1/6] tests/qemu-iotests/check: Pick a default machine if necessary Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-30 21:31   ` Alex Bennée
2019-04-30 21:31     ` Alex Bennée
2019-04-24 10:37 ` [Qemu-devel] [PATCH 2/6] tests/qemu-iotests/group: Introduce a new "ci" group for CI pipelines Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-24 11:25   ` Daniel P. Berrangé [this message]
2019-04-24 11:25     ` Daniel P. Berrangé
2019-04-24 12:37     ` Thomas Huth
2019-04-24 12:37       ` Thomas Huth
2019-04-24 12:50       ` Daniel P. Berrangé
2019-04-24 12:50         ` Daniel P. Berrangé
2019-04-24 13:01         ` Thomas Huth
2019-04-24 13:01           ` Thomas Huth
2019-04-24 13:12         ` Daniel P. Berrangé
2019-04-24 13:12           ` Daniel P. Berrangé
2019-04-25  7:44         ` Thomas Huth
2019-04-25  7:44           ` Thomas Huth
2019-04-24 10:37 ` [Qemu-devel] [PATCH 3/6] tests/qemu-iotests: Do not hard-code the path to bash Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-24 14:14   ` Eric Blake
2019-04-24 14:14     ` Eric Blake
2019-04-24 14:42     ` Philippe Mathieu-Daudé
2019-04-24 14:42       ` Philippe Mathieu-Daudé
2019-04-24 15:23     ` Daniel P. Berrangé
2019-04-24 15:23       ` Daniel P. Berrangé
2019-04-25  7:48       ` Thomas Huth
2019-04-25  7:48         ` Thomas Huth
2019-04-30 21:33   ` Alex Bennée
2019-04-30 21:33     ` Alex Bennée
2019-04-24 10:37 ` [Qemu-devel] [PATCH 4/6] cirrus / travis: Add gnu-sed and bash for macOS and FreeBSD Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-24 21:29   ` Wainer dos Santos Moschetta
2019-04-24 21:29     ` Wainer dos Santos Moschetta
2019-04-25  6:00     ` Thomas Huth
2019-04-25  6:00       ` Thomas Huth
2019-04-26 16:43       ` Laszlo Ersek
2019-04-26 16:43         ` Laszlo Ersek
2019-05-06 10:12         ` [Qemu-devel] Update *BSD images with gnu-sed and bash (was: [PATCH 4/6] cirrus / travis: Add gnu-sed and bash for macOS and FreeBSD) Thomas Huth
2019-05-07  8:32           ` Gerd Hoffmann
2019-05-07 10:13             ` Thomas Huth
2019-05-08  7:06           ` [Qemu-devel] Update *BSD images with gnu-sed and bash Kamil Rytarowski
2019-05-08  8:07             ` Thomas Huth
2019-05-08 19:21               ` Kamil Rytarowski
2019-04-24 10:37 ` [Qemu-devel] [PATCH 5/6] tests: Run the iotests during "make check" again Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-24 10:48   ` Daniel P. Berrangé
2019-04-24 10:48     ` Daniel P. Berrangé
2019-04-24 10:59     ` Thomas Huth
2019-04-24 10:59       ` Thomas Huth
2019-04-24 12:02       ` Vladimir Sementsov-Ogievskiy
2019-04-24 12:02         ` Vladimir Sementsov-Ogievskiy
2019-04-24 12:13         ` Daniel P. Berrangé
2019-04-24 12:13           ` Daniel P. Berrangé
2019-04-24 12:18           ` Vladimir Sementsov-Ogievskiy
2019-04-24 12:18             ` Vladimir Sementsov-Ogievskiy
2019-04-24 20:42   ` Wainer dos Santos Moschetta
2019-04-24 20:42     ` Wainer dos Santos Moschetta
2019-04-25  5:57     ` Thomas Huth
2019-04-25  5:57       ` Thomas Huth
2019-04-25 10:24       ` Thomas Huth
2019-04-25 10:24         ` Thomas Huth
2019-04-28  2:42         ` Eric Blake
2019-04-28  2:42           ` Eric Blake
2019-04-24 10:37 ` [Qemu-devel] [PATCH 6/6] tests/qemu-iotests: Remove the "_supported_os Linux" line from many tests Thomas Huth
2019-04-24 10:37   ` Thomas Huth
2019-04-27  4:51 ` [Qemu-devel] [PATCH 0/6] tests/qemu-iotests: Run basic iotests during "make check" no-reply
2019-04-27  4:51   ` no-reply
2019-04-29 12:04 ` Christian Borntraeger
2019-04-29 12:04   ` Christian Borntraeger

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=20190424112537.GF31388@redhat.com \
    --to=berrange@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=emaste@freebsd.org \
    --cc=fam@euphon.net \
    --cc=kwolf@redhat.com \
    --cc=lwhsu@freebsd.org \
    --cc=mreitz@redhat.com \
    --cc=philmd@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).