All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: "Daniel P. Berrangé" <berrange@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 14:37:02 +0200	[thread overview]
Message-ID: <c2202c0c-e504-7678-d1f3-6afc67bd2164@redhat.com> (raw)
In-Reply-To: <20190424112537.GF31388@redhat.com>

On 24/04/2019 13.25, Daniel P. Berrangé wrote:
> 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"

Ok, I think I just did not write it properly. What I meant was: the test
should not *fail* because of a missing feature (what some tests are
unfortunately doing). It's fine if the test detects the missing feature
and then marks the test as *skip*.

> 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. 

I think adding two new groups is not really needed here.
First, we already have the "quick" group that should contain most of the
tests with optional features. Second, just make sure that tests that
depend on optional features and still should be included in all CI
pipelines can detect the availability of the feature properly and report
"skip" if the feature is not available.

 Thomas

WARNING: multiple messages have this Message-ID (diff)
From: Thomas Huth <thuth@redhat.com>
To: "Daniel P. Berrangé" <berrange@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 14:37:02 +0200	[thread overview]
Message-ID: <c2202c0c-e504-7678-d1f3-6afc67bd2164@redhat.com> (raw)
Message-ID: <20190424123702.5ejSkToncJIbigTMzndUmDrmftZ_cbY7oMroJNrtmEM@z> (raw)
In-Reply-To: <20190424112537.GF31388@redhat.com>

On 24/04/2019 13.25, Daniel P. Berrangé wrote:
> 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"

Ok, I think I just did not write it properly. What I meant was: the test
should not *fail* because of a missing feature (what some tests are
unfortunately doing). It's fine if the test detects the missing feature
and then marks the test as *skip*.

> 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. 

I think adding two new groups is not really needed here.
First, we already have the "quick" group that should contain most of the
tests with optional features. Second, just make sure that tests that
depend on optional features and still should be included in all CI
pipelines can detect the availability of the feature properly and report
"skip" if the feature is not available.

 Thomas


  reply	other threads:[~2019-04-24 12:37 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é
2019-04-24 11:25     ` Daniel P. Berrangé
2019-04-24 12:37     ` Thomas Huth [this message]
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=c2202c0c-e504-7678-d1f3-6afc67bd2164@redhat.com \
    --to=thuth@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --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 \
    /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.