[gtk/ci-jobs] ci: Generate the report for the release builds



commit 2ee511f5b7586b7a8a887e1feec2fba2895c2da2
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Wed Jan 29 14:36:23 2020 +0100

    ci: Generate the report for the release builds
    
    We are going to need to hide the report generation into the test runner
    script, as we want the job to produce the reports even in case of
    failure, instead of bailing out immediately.

 .gitlab-ci.yml          | 20 ++++----------------
 .gitlab-ci/run-tests.sh | 22 ++++++++++++++++++++--
 2 files changed, 24 insertions(+), 18 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 276b3e903d..26e4c0ea10 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -34,17 +34,6 @@ fedora-x86_64:
             _build
     - ninja -C _build
     - .gitlab-ci/run-tests.sh _build
-    - .gitlab-ci/meson-junit-report.py
-            --project-name=gtk
-            --job-id="${CI_JOB_NAME}"
-            --output=_build/report.xml
-            _build/meson-logs/testlog.json
-    - .gitlab-ci/meson-html-report.py
-            --project-name=gtk
-            --job-id="${CI_JOB_NAME}"
-            --reftest-output-dir="_build/testsuite/reftests/output"
-            --output=_build/report.html
-            _build/meson-logs/testlog.json
   artifacts:
     when: always
     reports:
@@ -76,11 +65,6 @@ release-build:
             _build
     - ninja -C _build
     - .gitlab-ci/run-tests.sh _build
-    - .gitlab-ci/meson-junit-report.py
-            --project-name=gtk
-            --job-id="${CI_JOB_NAME}"
-            --output=_build/report.xml
-            _build/meson-logs/testlog.json
   artifacts:
     when: always
     reports:
@@ -90,6 +74,10 @@ release-build:
     paths:
       - "${CI_PROJECT_DIR}/_build/meson-logs"
       - "${CI_PROJECT_DIR}/_build/report.xml"
+      - "${CI_PROJECT_DIR}/_build/report.html"
+      - "${CI_PROJECT_DIR}/_build/testsuite/reftests/output/*.png"
+      - "${CI_PROJECT_DIR}/_build/testsuite/gsk/compare/*/*.png"
+      - "${CI_PROJECT_DIR}/_build/testsuite/css/output/*.syscap"
   cache:
     key: "$CI_JOB_NAME"
     <<: *cache-paths
diff --git a/.gitlab-ci/run-tests.sh b/.gitlab-ci/run-tests.sh
index 136988e11e..8d7454d057 100755
--- a/.gitlab-ci/run-tests.sh
+++ b/.gitlab-ci/run-tests.sh
@@ -4,8 +4,26 @@ set -e
 
 builddir=$1
 
-cd ${builddir}
 xvfb-run -a -s "-screen 0 1024x768x24" \
-        meson test --print-errorlogs \
+        meson test -C ${builddir} \
+                --print-errorlogs \
                 --suite=gtk \
                 --no-suite=gtk:a11y
+
+# Store the exit code for the CI run, but always
+# generate the reports
+exit_code=$?
+
+.gitlab-ci/meson-junit-report.py
+        --project-name=gtk
+        --job-id="${CI_JOB_NAME}"
+        --output=${builddir}/report.xml
+        ${builddir}/meson-logs/testlog.json
+.gitlab-ci/meson-html-report.py
+        --project-name=gtk
+        --job-id="${CI_JOB_NAME}"
+        --reftest-output-dir="${builddir}/testsuite/reftests/output"
+        --output=${builddir}/report.html
+        ${builddir}/meson-logs/testlog.json
+
+exit $exit_code


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]