qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: "Alex Bennée" <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: fam@euphon.net, "Daniel P. Berrange" <berrange@redhat.com>,
	richard.henderson@linaro.org, f4bug@amsat.org,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	cota@braap.org, "Philippe Mathieu-Daudé" <philmd@redhat.com>,
	aurelien@aurel32.net
Subject: Re: [PATCH v3 24/30] gitlab: add acceptance testing to system builds
Date: Mon, 29 Jun 2020 12:36:25 +0200	[thread overview]
Message-ID: <8fb07d83-d70b-4f52-9d00-45b5d2bebd12@redhat.com> (raw)
In-Reply-To: <20200626181357.26211-25-alex.bennee@linaro.org>

On 26/06/2020 20.13, Alex Bennée wrote:
> As part of migrating things from Travis to GitLab add the acceptance
> tests. To do this:
> 
>    - rename system1 to system-ubuntu-main
>    - rename system2 to system-fedora-misc
>    - split into build/check/acceptance
>    - remove -j from check stages
>    - use artifacts to save build stage
>    - add post acceptance template and use
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Message-Id: <20200622143204.12921-16-alex.bennee@linaro.org>
> 
> ---
> v2
>    - updated with danp's docker changes
>    - use needs instead of dependancies
>    - touch all the build files to prevent rebuild
> ---
>   .gitlab-ci.yml | 66 +++++++++++++++++++++++++++++++++++++++++++++++---
>   .travis.yml    | 23 ------------------
>   2 files changed, 63 insertions(+), 26 deletions(-)
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index a7abc55a5c6..5ae8130bd1a 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -1,8 +1,12 @@
> +# Currently we have two build stages after our containers are built:
> +#  - build (for traditional build and test or first stage build)
> +#  - test (for test stages, using build artefacts from a build stage)
>   stages:
>     - containers
>     - containers-layer2
>     - containers-layer3
>     - build
> +  - test
>   
>   include:
>     - local: '/.gitlab-ci.d/edk2.yml'
> @@ -24,26 +28,82 @@ include:
>           ../configure --enable-werror $CONFIGURE_ARGS ;
>         fi
>       - make -j"$JOBS"
> -    - make -j"$JOBS" $MAKE_CHECK_ARGS
> +    - if test -n "$MAKE_CHECK_ARGS";
> +      then
> +        make $MAKE_CHECK_ARGS ;
> +      fi
> +
> +.native_test_job_template: &native_test_job_definition
> +  stage: test
> +  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
> +  script:
> +    - cd build
> +    - find . -type f -exec touch {} +
> +    - make $MAKE_CHECK_ARGS
> +
> +.post_acceptance_template: &post_acceptance
> +  after_script:
> +    - python3 -c 'import json; r = json.load(open("tests/results/latest/results.json")); [print(t["logfile"]) for t in r["tests"] if t["status"] not in ("PASS", "SKIP")]' | xargs cat
> +    - du -chs $HOME/avocado/data/cache
>   
> -build-system1:
> +build:system-ubuntu-main:
>     <<: *native_build_job_definition
>     variables:
>       IMAGE: ubuntu2004
>       TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu lm32-softmmu
>         moxie-softmmu microblazeel-softmmu mips64el-softmmu m68k-softmmu ppc-softmmu
>         riscv64-softmmu sparc-softmmu
> +  artifacts:
> +    paths:
> +      - build
> +
> +check:system-ubuntu-main:
> +  <<: *native_test_job_definition
> +  needs:
> +    - job: build:system-ubuntu-main
> +      artifacts: true
> +  variables:
> +    IMAGE: ubuntu2004
>       MAKE_CHECK_ARGS: check
>   
> -build-system2:
> +acceptance:system-ubuntu-main:
> +  <<: *native_test_job_definition
> +  needs:
> +    - job: build:system-ubuntu-main
> +      artifacts: true
> +  variables:
> +    IMAGE: ubuntu2004
> +    MAKE_CHECK_ARGS: check-acceptance
> +
> +build:system-fedora-alt:
>     <<: *native_build_job_definition
>     variables:
>       IMAGE: fedora
>       TARGETS: tricore-softmmu unicore32-softmmu microblaze-softmmu mips-softmmu
>         riscv32-softmmu s390x-softmmu sh4-softmmu sparc64-softmmu x86_64-softmmu
>         xtensa-softmmu nios2-softmmu or1k-softmmu
> +  artifacts:
> +    paths:
> +      - build
> +
> +check:system-fedora-alt:
> +  <<: *native_test_job_definition
> +  needs:
> +    - job: build:system-fedora-alt
> +      artifacts: true
> +  variables:
> +    IMAGE: fedora
>       MAKE_CHECK_ARGS: check
>   
> +check:system-fedora-alt:
> +  <<: *native_test_job_definition
> +  needs:
> +    - job: build:system-fedora-alt
> +      artifacts: true
> +  variables:
> +    IMAGE: fedora
> +    MAKE_CHECK_ARGS: check-acceptance

Why is Ubuntu "-main" and "Fedora "-alt" ? ... that does not make sense 
to me.

We also might want to rework the list of targets. To speed up the 
testing, I originally omitted some targets like sh4eb-softmmu which did 
not seem very interesting, but now that we add more and more builds in 
parallel, we could maybe split the two system targets into three or even 
four instead, and then add these targets, too. It would also be nice to 
have some tests with "centos8" and a debian container, too.

And "rx-softmmu" is also still missing in the target list.

Ok, it's quite a bit of change that still needs to be done here ... 
maybe that's rather something for a separate patch later.

  Thomas



  parent reply	other threads:[~2020-06-29 10:37 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-26 18:13 [PATCH v3 00/30] testing/next (gitlab, vm, docker) Alex Bennée
2020-06-26 18:13 ` [PATCH v3 01/30] iotests: Fix 051 output after qdev_init_nofail() removal Alex Bennée
2020-06-26 18:13 ` [PATCH v3 02/30] crypto/linux_keyring: fix 'secret_keyring' configure test Alex Bennée
2020-06-26 18:13 ` [PATCH v3 03/30] tests/vm: pass args through to BaseVM's __init__ Alex Bennée
2020-06-26 18:13 ` [PATCH v3 04/30] tests/vm: Add configuration to basevm.py Alex Bennée
2020-06-26 18:13 ` [PATCH v3 05/30] tests/vm: Added configuration file support Alex Bennée
2020-06-26 18:13 ` [PATCH v3 06/30] tests/vm: Add common Ubuntu python module Alex Bennée
2020-06-26 18:13 ` [PATCH v3 07/30] tests/vm: Added a new script for ubuntu.aarch64 Alex Bennée
2020-06-26 18:13 ` [PATCH v3 08/30] tests/vm: Added a new script for centos.aarch64 Alex Bennée
2020-06-26 18:13 ` [PATCH v3 09/30] tests/vm: change scripts to use self._config Alex Bennée
2020-06-29 10:06   ` Philippe Mathieu-Daudé
2020-06-26 18:13 ` [PATCH v3 10/30] python/qemu: Add ConsoleSocket for optional use in QEMUMachine Alex Bennée
2020-06-26 18:13 ` [PATCH v3 11/30] tests/vm: Add workaround to consume console Alex Bennée
2020-06-26 18:13 ` [PATCH v3 12/30] tests/vm: switch from optsparse to argparse Alex Bennée
2020-06-26 18:13 ` [PATCH v3 13/30] tests/vm: allow us to take advantage of MTTCG Alex Bennée
2020-06-26 18:13 ` [PATCH v3 14/30] tests/docker: check for an parameters not empty string Alex Bennée
2020-06-26 18:13 ` [PATCH v3 15/30] tests/docker: change tag naming scheme of our images Alex Bennée
2020-06-29 10:04   ` Philippe Mathieu-Daudé
2020-06-26 18:13 ` [PATCH v3 16/30] .gitignore: un-ignore .gitlab-ci.d Alex Bennée
2020-06-29  9:25   ` Thomas Huth
2020-06-29 10:04   ` Philippe Mathieu-Daudé
2020-06-26 18:13 ` [PATCH v3 17/30] gitlab-ci: Fix the change rules after moving the YML files Alex Bennée
2020-07-02  7:42   ` Laszlo Ersek
2020-06-26 18:13 ` [PATCH v3 18/30] gitlab: introduce explicit "container" and "build" stages Alex Bennée
2020-06-26 18:13 ` [PATCH v3 19/30] gitlab: build all container images during CI Alex Bennée
2020-06-29  9:54   ` Thomas Huth
2020-06-26 18:13 ` [PATCH v3 20/30] gitlab: convert jobs to use custom built containers Alex Bennée
2020-06-29 10:13   ` Thomas Huth
2020-06-26 18:13 ` [PATCH v3 21/30] gitlab: build containers with buildkit and metadata Alex Bennée
2020-06-26 18:13 ` [PATCH v3 22/30] tests/docker: add --registry support to tooling Alex Bennée
2020-06-26 18:13 ` [PATCH v3 23/30] tests/docker: add packages needed for check-acceptance Alex Bennée
2020-06-29 10:11   ` Philippe Mathieu-Daudé
2020-06-29 10:15   ` Thomas Huth
2020-06-26 18:13 ` [PATCH v3 24/30] gitlab: add acceptance testing to system builds Alex Bennée
2020-06-29 10:15   ` Philippe Mathieu-Daudé
2020-06-29 10:36   ` Thomas Huth [this message]
2020-06-29 12:51     ` Alex Bennée
2020-06-29 11:12   ` Thomas Huth
2020-06-26 18:13 ` [PATCH v3 25/30] tests/docker: add a linux-user testing focused image Alex Bennée
2020-06-29 10:18   ` Philippe Mathieu-Daudé
2020-06-26 18:13 ` [PATCH v3 26/30] gitlab: enable check-tcg for linux-user tests Alex Bennée
2020-06-29 10:03   ` Philippe Mathieu-Daudé
2020-06-29 10:42   ` Thomas Huth
2020-06-29 11:03   ` Thomas Huth
2020-06-29 11:35     ` Laurent Vivier
2020-06-29 12:54     ` Alex Bennée
2020-06-26 18:13 ` [PATCH v3 27/30] gitlab: add avocado asset caching Alex Bennée
2020-06-29 12:25   ` Thomas Huth
2020-06-26 18:13 ` [PATCH v3 28/30] gitlab: split build-disabled into two phases Alex Bennée
2020-06-29 10:02   ` Philippe Mathieu-Daudé
2020-06-29 10:58   ` Thomas Huth
2020-06-29 12:57     ` Alex Bennée
2020-06-26 18:13 ` [PATCH v3 29/30] gitlab: limit re-builds of the containers Alex Bennée
2020-06-29 10:01   ` Philippe Mathieu-Daudé
2020-06-29 10:03   ` Daniel P. Berrangé
2020-06-29 10:11     ` Alex Bennée
2020-06-29 11:42       ` Thomas Huth
2020-06-29 11:52         ` Daniel P. Berrangé
2020-06-26 18:13 ` [PATCH v3 30/30] containers.yml: build with docker.py tooling Alex Bennée
2020-06-26 19:13 ` [PATCH v3 00/30] testing/next (gitlab, vm, docker) no-reply

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=8fb07d83-d70b-4f52-9d00-45b5d2bebd12@redhat.com \
    --to=thuth@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=aurelien@aurel32.net \
    --cc=berrange@redhat.com \
    --cc=cota@braap.org \
    --cc=f4bug@amsat.org \
    --cc=fam@euphon.net \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --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 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).