diff mbox series

[17/18] gitlab: wrap up test results for custom runners

Message ID 20230119180419.30304-18-alex.bennee@linaro.org
State New
Headers show
Series testing/next updates (gitlab, docker, check-tcg) | expand

Commit Message

Alex Bennée Jan. 19, 2023, 6:04 p.m. UTC
Instead of spewing the whole log to stdout lets just define them as
build artefacts so we can examine them later. Where we are running
check-tcg run it first as those tests are yet to be integrated into
meson.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 .gitlab-ci.d/custom-runners.yml                     | 11 +++++++++++
 .gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml  | 13 ++++++-------
 .../custom-runners/ubuntu-22.04-aarch32.yml         |  2 +-
 .../custom-runners/ubuntu-22.04-aarch64.yml         | 13 ++++++-------
 4 files changed, 24 insertions(+), 15 deletions(-)

Comments

Thomas Huth Jan. 20, 2023, 8:26 a.m. UTC | #1
On 19/01/2023 19.04, Alex Bennée wrote:
> Instead of spewing the whole log to stdout lets just define them as
> build artefacts so we can examine them later. Where we are running
> check-tcg run it first as those tests are yet to be integrated into
> meson.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>   .gitlab-ci.d/custom-runners.yml                     | 11 +++++++++++
>   .gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml  | 13 ++++++-------
>   .../custom-runners/ubuntu-22.04-aarch32.yml         |  2 +-
>   .../custom-runners/ubuntu-22.04-aarch64.yml         | 13 ++++++-------
>   4 files changed, 24 insertions(+), 15 deletions(-)
> 
> diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml
> index 97f99e29c2..9fdc476c48 100644
> --- a/.gitlab-ci.d/custom-runners.yml
> +++ b/.gitlab-ci.d/custom-runners.yml
> @@ -13,6 +13,17 @@
>   variables:
>     GIT_STRATEGY: clone
>   
> +# All custom runners can extend this template to upload the testlog
> +# data as an artifact and also feed the junit report
> +.custom_artifacts_template:
> +  artifacts:
> +    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
> +    expire_in: 7 days
> +    paths:
> +      - build/meson-logs/testlog.txt
> +    reports:
> +      junit: build/meson-logs/testlog.junit.xml
> +
>   include:
>     - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml'
>     - local: '/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml'
> diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
> index fcaef9e5ef..f512eaeaa3 100644
> --- a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
> +++ b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
> @@ -3,6 +3,7 @@
>   # "Install basic packages to build QEMU on Ubuntu 20.04/20.04"
>   
>   ubuntu-20.04-s390x-all-linux-static:
> + extends: .custom_artifacts_template
>    needs: []
>    stage: build
>    tags:
> @@ -19,12 +20,11 @@ ubuntu-20.04-s390x-all-linux-static:
>    - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
>      || { cat config.log meson-logs/meson-log.txt; exit 1; }
>    - make --output-sync -j`nproc`
> + - make --output-sync check-tcg
>    - make --output-sync -j`nproc` check
> -   || { cat meson-logs/testlog.txt; exit 1; } ;
> - - make --output-sync -j`nproc` check-tcg
> -   || { cat meson-logs/testlog.txt; exit 1; } ;

No more -j`nproc` for check-tcg? Maybe mention the reason in the commit message?

Anyway,
Reviewed-by: Thomas Huth <thuth@redhat.com>
Alex Bennée Jan. 20, 2023, 10:14 a.m. UTC | #2
Thomas Huth <thuth@redhat.com> writes:

> On 19/01/2023 19.04, Alex Bennée wrote:
>> Instead of spewing the whole log to stdout lets just define them as
>> build artefacts so we can examine them later. Where we are running
>> check-tcg run it first as those tests are yet to be integrated into
>> meson.
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>   .gitlab-ci.d/custom-runners.yml                     | 11 +++++++++++
>>   .gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml  | 13 ++++++-------
>>   .../custom-runners/ubuntu-22.04-aarch32.yml         |  2 +-
>>   .../custom-runners/ubuntu-22.04-aarch64.yml         | 13 ++++++-------
>>   4 files changed, 24 insertions(+), 15 deletions(-)
>> diff --git a/.gitlab-ci.d/custom-runners.yml
>> b/.gitlab-ci.d/custom-runners.yml
>> index 97f99e29c2..9fdc476c48 100644
>> --- a/.gitlab-ci.d/custom-runners.yml
>> +++ b/.gitlab-ci.d/custom-runners.yml
>> @@ -13,6 +13,17 @@
>>   variables:
>>     GIT_STRATEGY: clone
>>   +# All custom runners can extend this template to upload the
>> testlog
>> +# data as an artifact and also feed the junit report
>> +.custom_artifacts_template:
>> +  artifacts:
>> +    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
>> +    expire_in: 7 days
>> +    paths:
>> +      - build/meson-logs/testlog.txt
>> +    reports:
>> +      junit: build/meson-logs/testlog.junit.xml
>> +
>>   include:
>>     - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml'
>>     - local: '/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml'
>> diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
>> index fcaef9e5ef..f512eaeaa3 100644
>> --- a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
>> +++ b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
>> @@ -3,6 +3,7 @@
>>   # "Install basic packages to build QEMU on Ubuntu 20.04/20.04"
>>     ubuntu-20.04-s390x-all-linux-static:
>> + extends: .custom_artifacts_template
>>    needs: []
>>    stage: build
>>    tags:
>> @@ -19,12 +20,11 @@ ubuntu-20.04-s390x-all-linux-static:
>>    - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
>>      || { cat config.log meson-logs/meson-log.txt; exit 1; }
>>    - make --output-sync -j`nproc`
>> + - make --output-sync check-tcg
>>    - make --output-sync -j`nproc` check
>> -   || { cat meson-logs/testlog.txt; exit 1; } ;
>> - - make --output-sync -j`nproc` check-tcg
>> -   || { cat meson-logs/testlog.txt; exit 1; } ;
>
> No more -j`nproc` for check-tcg? Maybe mention the reason in the
> commit message?

check-tcg is run sequentially to prevent confusion in the output as
unlike the rest of the tests the results are not aggregated in the
testlog.

I'll update the commit message when I roll.

>
> Anyway,
> Reviewed-by: Thomas Huth <thuth@redhat.com>
diff mbox series

Patch

diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml
index 97f99e29c2..9fdc476c48 100644
--- a/.gitlab-ci.d/custom-runners.yml
+++ b/.gitlab-ci.d/custom-runners.yml
@@ -13,6 +13,17 @@ 
 variables:
   GIT_STRATEGY: clone
 
+# All custom runners can extend this template to upload the testlog
+# data as an artifact and also feed the junit report
+.custom_artifacts_template:
+  artifacts:
+    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
+    expire_in: 7 days
+    paths:
+      - build/meson-logs/testlog.txt
+    reports:
+      junit: build/meson-logs/testlog.junit.xml
+
 include:
   - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml'
   - local: '/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml'
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
index fcaef9e5ef..f512eaeaa3 100644
--- a/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
+++ b/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml
@@ -3,6 +3,7 @@ 
 # "Install basic packages to build QEMU on Ubuntu 20.04/20.04"
 
 ubuntu-20.04-s390x-all-linux-static:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -19,12 +20,11 @@  ubuntu-20.04-s390x-all-linux-static:
  - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc`
+ - make --output-sync check-tcg
  - make --output-sync -j`nproc` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
- - make --output-sync -j`nproc` check-tcg
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-20.04-s390x-all:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -41,9 +41,9 @@  ubuntu-20.04-s390x-all:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc`
  - make --output-sync -j`nproc` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-20.04-s390x-alldbg:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -64,9 +64,9 @@  ubuntu-20.04-s390x-alldbg:
  - make clean
  - make --output-sync -j`nproc`
  - make --output-sync -j`nproc` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-20.04-s390x-clang:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -86,7 +86,6 @@  ubuntu-20.04-s390x-clang:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc`
  - make --output-sync -j`nproc` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-20.04-s390x-tci:
  needs: []
@@ -109,6 +108,7 @@  ubuntu-20.04-s390x-tci:
  - make --output-sync -j`nproc`
 
 ubuntu-20.04-s390x-notcg:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -128,4 +128,3 @@  ubuntu-20.04-s390x-notcg:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc`
  - make --output-sync -j`nproc` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml b/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml
index 2c386fa3e9..42137aaf2a 100644
--- a/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml
+++ b/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml
@@ -3,6 +3,7 @@ 
 # "Install basic packages to build QEMU on Ubuntu 20.04"
 
 ubuntu-22.04-aarch32-all:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -22,4 +23,3 @@  ubuntu-22.04-aarch32-all:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc --ignore=40`
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml b/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml
index 725ca8ffea..8ba85be440 100644
--- a/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml
+++ b/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml
@@ -3,6 +3,7 @@ 
 # "Install basic packages to build QEMU on Ubuntu 20.04"
 
 ubuntu-22.04-aarch64-all-linux-static:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -19,12 +20,11 @@  ubuntu-22.04-aarch64-all-linux-static:
  - ../configure --enable-debug --static --disable-system --disable-pie
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc --ignore=40`
+ - make check-tcg
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
- - make --output-sync -j`nproc --ignore=40` check-tcg
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-22.04-aarch64-all:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -44,9 +44,9 @@  ubuntu-22.04-aarch64-all:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc --ignore=40`
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-22.04-aarch64-alldbg:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -63,9 +63,9 @@  ubuntu-22.04-aarch64-alldbg:
  - make clean
  - make --output-sync -j`nproc --ignore=40`
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-22.04-aarch64-clang:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -85,7 +85,6 @@  ubuntu-22.04-aarch64-clang:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc --ignore=40`
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;
 
 ubuntu-22.04-aarch64-tci:
  needs: []
@@ -108,6 +107,7 @@  ubuntu-22.04-aarch64-tci:
  - make --output-sync -j`nproc --ignore=40`
 
 ubuntu-22.04-aarch64-notcg:
+ extends: .custom_artifacts_template
  needs: []
  stage: build
  tags:
@@ -127,4 +127,3 @@  ubuntu-22.04-aarch64-notcg:
    || { cat config.log meson-logs/meson-log.txt; exit 1; }
  - make --output-sync -j`nproc --ignore=40`
  - make --output-sync -j`nproc --ignore=40` check
-   || { cat meson-logs/testlog.txt; exit 1; } ;