All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: "Alex Bennée" <alex.bennee@linaro.org>,
	qemu-devel@nongnu.org,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Daniel P . Berrange" <berrange@redhat.com>
Cc: Ani Sinha <anisinha@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	John Snow <jsnow@redhat.com>,
	qemu-ppc@nongnu.org, Fabiano Rosas <farosas@suse.de>
Subject: [PATCH v4 31/35] gitlab-ci: Add "check-functional" to the build tests
Date: Wed, 21 Aug 2024 10:27:32 +0200	[thread overview]
Message-ID: <20240821082748.65853-32-thuth@redhat.com> (raw)
In-Reply-To: <20240821082748.65853-1-thuth@redhat.com>

Now that we converted many tests from the "check-avocado" test suite
to the "check-functional" test suite, we should make sure that these
also get tested in the CI.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/buildtest-template.yml | 14 +++++--
 .gitlab-ci.d/buildtest.yml          | 60 ++++++++++++++---------------
 2 files changed, 41 insertions(+), 33 deletions(-)

diff --git a/.gitlab-ci.d/buildtest-template.yml b/.gitlab-ci.d/buildtest-template.yml
index 844c26623d..5f2fc7e6f4 100644
--- a/.gitlab-ci.d/buildtest-template.yml
+++ b/.gitlab-ci.d/buildtest-template.yml
@@ -59,6 +59,10 @@
     - cd build
     - find . -type f -exec touch {} +
     # Avoid recompiling by hiding ninja with NINJA=":"
+    # We also have to pre-cache the functional tests manually in this case
+    - if [ "x${QEMU_TEST_CACHE_DIR}" != "x" ]; then
+        $MAKE precache-functional ;
+      fi
     - $MAKE NINJA=":" $MAKE_CHECK_ARGS
 
 .native_test_job_template:
@@ -72,12 +76,13 @@
     reports:
       junit: build/meson-logs/testlog.junit.xml
 
-.avocado_test_job_template:
+.functional_test_job_template:
   extends: .common_test_job_template
   cache:
     key: "${CI_JOB_NAME}-cache"
     paths:
       - ${CI_PROJECT_DIR}/avocado-cache
+      - ${CI_PROJECT_DIR}/functional-cache
     policy: pull-push
   artifacts:
     name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
@@ -86,6 +91,7 @@
     paths:
       - build/tests/results/latest/results.xml
       - build/tests/results/latest/test-results
+      - build/tests/functional/*/*/*.log
     reports:
       junit: build/tests/results/latest/results.xml
   before_script:
@@ -96,11 +102,13 @@
     - echo -e '[job.output.testlogs]\nstatuses = ["FAIL", "INTERRUPT"]'
            >> ~/.config/avocado/avocado.conf
     - if [ -d ${CI_PROJECT_DIR}/avocado-cache ]; then
-        du -chs ${CI_PROJECT_DIR}/avocado-cache ;
+        du -chs ${CI_PROJECT_DIR}/*-cache ;
       fi
     - export AVOCADO_ALLOW_UNTRUSTED_CODE=1
+    - export QEMU_TEST_ALLOW_UNTRUSTED_CODE=1
+    - export QEMU_TEST_CACHE_DIR=${CI_PROJECT_DIR}/functional-cache
   after_script:
     - cd build
-    - du -chs ${CI_PROJECT_DIR}/avocado-cache
+    - du -chs ${CI_PROJECT_DIR}/*-cache
   variables:
     QEMU_JOB_AVOCADO: 1
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index aa32782405..1d2afae996 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -22,14 +22,14 @@ check-system-alpine:
     IMAGE: alpine
     MAKE_CHECK_ARGS: check-unit check-qtest
 
-avocado-system-alpine:
-  extends: .avocado_test_job_template
+functional-system-alpine:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-alpine
       artifacts: true
   variables:
     IMAGE: alpine
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:avr arch:loongarch64 arch:mips64 arch:mipsel
 
 build-system-ubuntu:
@@ -53,14 +53,14 @@ check-system-ubuntu:
     IMAGE: ubuntu2204
     MAKE_CHECK_ARGS: check
 
-avocado-system-ubuntu:
-  extends: .avocado_test_job_template
+functional-system-ubuntu:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-ubuntu
       artifacts: true
   variables:
     IMAGE: ubuntu2204
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:alpha arch:microblazeel arch:mips64el
 
 build-system-debian:
@@ -85,14 +85,14 @@ check-system-debian:
     IMAGE: debian
     MAKE_CHECK_ARGS: check
 
-avocado-system-debian:
-  extends: .avocado_test_job_template
+functional-system-debian:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-debian
       artifacts: true
   variables:
     IMAGE: debian
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:arm arch:i386 arch:riscv64 arch:sh4 arch:sparc arch:xtensa
 
 crash-test-debian:
@@ -129,14 +129,14 @@ check-system-fedora:
     IMAGE: fedora
     MAKE_CHECK_ARGS: check
 
-avocado-system-fedora:
-  extends: .avocado_test_job_template
+functional-system-fedora:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-fedora
       artifacts: true
   variables:
     IMAGE: fedora
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:microblaze arch:mips arch:xtensa arch:m68k
       arch:riscv32 arch:ppc arch:sparc64
 
@@ -243,14 +243,14 @@ check-system-centos:
     IMAGE: centos9
     MAKE_CHECK_ARGS: check
 
-avocado-system-centos:
-  extends: .avocado_test_job_template
+functional-system-centos:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-centos
       artifacts: true
   variables:
     IMAGE: centos9
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:ppc64 arch:or1k arch:s390x arch:x86_64 arch:rx
       arch:sh4
 
@@ -274,14 +274,14 @@ check-system-opensuse:
     IMAGE: opensuse-leap
     MAKE_CHECK_ARGS: check
 
-avocado-system-opensuse:
-  extends: .avocado_test_job_template
+functional-system-opensuse:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-opensuse
       artifacts: true
   variables:
     IMAGE: opensuse-leap
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     AVOCADO_TAGS: arch:s390x arch:x86_64 arch:aarch64
 
 #
@@ -302,15 +302,15 @@ build-system-flaky:
       ppc64-softmmu rx-softmmu s390x-softmmu sh4-softmmu x86_64-softmmu
     MAKE_CHECK_ARGS: check-build
 
-avocado-system-flaky:
-  extends: .avocado_test_job_template
+functional-system-flaky:
+  extends: .functional_test_job_template
   needs:
     - job: build-system-flaky
       artifacts: true
   allow_failure: true
   variables:
     IMAGE: debian
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
     QEMU_JOB_OPTIONAL: 1
     QEMU_TEST_FLAKY_TESTS: 1
     AVOCADO_TAGS: flaky
@@ -485,14 +485,14 @@ check-cfi-aarch64:
     IMAGE: fedora
     MAKE_CHECK_ARGS: check
 
-avocado-cfi-aarch64:
-  extends: .avocado_test_job_template
+functional-cfi-aarch64:
+  extends: .functional_test_job_template
   needs:
     - job: build-cfi-aarch64
       artifacts: true
   variables:
     IMAGE: fedora
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
 
 build-cfi-ppc64-s390x:
   extends:
@@ -523,14 +523,14 @@ check-cfi-ppc64-s390x:
     IMAGE: fedora
     MAKE_CHECK_ARGS: check
 
-avocado-cfi-ppc64-s390x:
-  extends: .avocado_test_job_template
+functional-cfi-ppc64-s390x:
+  extends: .functional_test_job_template
   needs:
     - job: build-cfi-ppc64-s390x
       artifacts: true
   variables:
     IMAGE: fedora
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
 
 build-cfi-x86_64:
   extends:
@@ -557,14 +557,14 @@ check-cfi-x86_64:
     IMAGE: fedora
     MAKE_CHECK_ARGS: check
 
-avocado-cfi-x86_64:
-  extends: .avocado_test_job_template
+functional-cfi-x86_64:
+  extends: .functional_test_job_template
   needs:
     - job: build-cfi-x86_64
       artifacts: true
   variables:
     IMAGE: fedora
-    MAKE_CHECK_ARGS: check-avocado
+    MAKE_CHECK_ARGS: check-avocado check-functional
 
 tsan-build:
   extends: .native_build_job_template
-- 
2.46.0



  parent reply	other threads:[~2024-08-21  8:31 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-21  8:27 [PATCH v4 00/35] Convert avocado tests to normal Python unittests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 01/35] tests/avocado: machine aarch64: standardize location and RO access Thomas Huth
2024-08-21  9:30   ` Philippe Mathieu-Daudé
2024-08-21  8:27 ` [PATCH v4 02/35] tests/avocado/boot_xen.py: fetch kernel during test setUp() Thomas Huth
2024-08-21  8:27 ` [PATCH v4 03/35] tests/avocado/machine_aarch64_sbsaref.py: allow for rw usage of image Thomas Huth
2024-08-21  8:27 ` [PATCH v4 04/35] Bump avocado to 103.0 Thomas Huth
2024-08-21 10:34   ` Philippe Mathieu-Daudé
2024-08-29  9:45     ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 05/35] tests/avocado/avocado_qemu: Fix the "from" statements in linuxtest.py Thomas Huth
2024-08-21  9:31   ` Philippe Mathieu-Daudé
2024-08-21 10:07     ` Thomas Huth
2024-08-21 10:18       ` Philippe Mathieu-Daudé
2024-08-21  8:27 ` [PATCH v4 06/35] tests/avocado/boot_linux_console: Remove the s390x subtest Thomas Huth
2024-08-29  9:46   ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 07/35] python: Install pycotap in our venv if necessary Thomas Huth
2024-08-29  9:49   ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 08/35] tests/functional: Add base classes for the upcoming pytest-based tests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 09/35] tests/functional: Set up logging Thomas Huth
2024-08-21  8:27 ` [PATCH v4 10/35] tests/Makefile.include: Increase the level of indentation in the help text Thomas Huth
2024-08-21  8:27 ` [PATCH v4 11/35] tests/functional: Prepare the meson build system for the functional tests Thomas Huth
2024-08-21 14:30   ` Philippe Mathieu-Daudé
2024-08-23 12:54   ` Philippe Mathieu-Daudé
2024-08-26  8:18     ` Thomas Huth
2024-08-29  9:54       ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 12/35] tests/functional: Convert simple avocado tests into standalone python tests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 13/35] tests/functional: Convert avocado tests that just need a small adjustment Thomas Huth
2024-08-21  8:27 ` [PATCH v4 14/35] tests/functional: add a module for handling asset download & caching Thomas Huth
2024-08-21 14:49   ` Philippe Mathieu-Daudé
2024-08-29  9:57     ` Daniel P. Berrangé
2024-08-23  6:24   ` Philippe Mathieu-Daudé
2024-08-29 10:00     ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 15/35] tests/functional: enable pre-emptive caching of assets Thomas Huth
2024-08-23  7:28   ` Philippe Mathieu-Daudé
2024-08-27 13:16     ` Thomas Huth
2024-08-27 14:24       ` Thomas Huth
2024-08-29 10:15         ` Daniel P. Berrangé
2024-08-30  7:38           ` Thomas Huth
2024-08-30  7:42             ` Daniel P. Berrangé
2024-08-30 11:27               ` Thomas Huth
2024-08-30 11:37                 ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 16/35] tests/functional: Convert some tests that download files via fetch_asset() Thomas Huth
2024-08-21  8:27 ` [PATCH v4 17/35] tests/functional: Add a function for extracting files from an archive Thomas Huth
2024-08-21  8:27 ` [PATCH v4 18/35] tests/functional: Convert some avocado tests that needed avocado.utils.archive Thomas Huth
2024-08-21  8:27 ` [PATCH v4 19/35] tests/functional: Convert the s390x avocado tests into standalone tests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 20/35] tests/functional: Convert the x86_cpu_model_versions test Thomas Huth
2024-08-21  8:27 ` [PATCH v4 21/35] tests/functional: Convert the microblaze avocado tests into standalone tests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 22/35] tests/functional: Convert the riscv_opensbi avocado test into a standalone test Thomas Huth
2024-08-21  8:27 ` [PATCH v4 23/35] tests/functional: Convert the virtio_gpu " Thomas Huth
2024-08-21  8:27 ` [PATCH v4 24/35] tests/functional: Convert most ppc avocado tests into standalone tests Thomas Huth
2024-08-21  8:27 ` [PATCH v4 25/35] tests/functional: Convert the ppc_amiga avocado test into a standalone test Thomas Huth
2024-08-21  8:27 ` [PATCH v4 26/35] tests/functional: Convert the ppc_hv " Thomas Huth
2024-08-21  9:43   ` Philippe Mathieu-Daudé
2024-08-21 10:11     ` Thomas Huth
2024-08-21 11:47   ` Philippe Mathieu-Daudé
2024-08-21  8:27 ` [PATCH v4 27/35] tests/functional: Convert the m68k nextcube test with tesseract Thomas Huth
2024-08-21  8:27 ` [PATCH v4 28/35] tests/functional: Convert the acpi-bits test into a standalone test Thomas Huth
2024-08-21  8:27 ` [PATCH v4 29/35] tests/functional: Convert the rx_gdbsim avocado " Thomas Huth
2024-08-21  8:27 ` [PATCH v4 30/35] tests/functional: Convert the linux_initrd " Thomas Huth
2024-08-21  8:27 ` Thomas Huth [this message]
2024-08-21  8:27 ` [PATCH v4 32/35] docs/devel: Split testing docs from the build docs and move to separate folder Thomas Huth
2024-08-21  8:27 ` [PATCH v4 33/35] docs/devel/testing: Split the Avocado documentation into a separate file Thomas Huth
2024-08-29 10:18   ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 34/35] docs/devel/testing: Rename avocado_qemu.Test class Thomas Huth
2024-08-29 10:27   ` Daniel P. Berrangé
2024-08-21  8:27 ` [PATCH v4 35/35] docs/devel/testing: Add documentation for functional tests Thomas Huth
2024-08-29 10:34   ` Daniel P. Berrangé
2024-08-29 11:35     ` Thomas Huth
2024-08-29 11:43       ` Daniel P. Berrangé
2024-08-29 10:35   ` Daniel P. Berrangé

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=20240821082748.65853-32-thuth@redhat.com \
    --to=thuth@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=anisinha@redhat.com \
    --cc=berrange@redhat.com \
    --cc=farosas@suse.de \
    --cc=jsnow@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=richard.henderson@linaro.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.