gitlab CI: run the test suite through valgrind
authorPeter Hutterer <peter.hutterer@who-t.net>
Mon, 17 Feb 2020 09:24:29 +0000 (19:24 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Mon, 17 Feb 2020 09:46:23 +0000 (19:46 +1000)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
.gitlab-ci.yml
.gitlab-ci/gitlab-ci.tmpl
meson.build

index 1ce3e95425a93f63e4764c639ff03d82caca8b9e..4652abefe2e02484a6b09b5afb788c06dbb09878 100644 (file)
@@ -80,7 +80,7 @@ variables:
   artifacts:
     paths:
       - _build/test/test-suite.log
-      - builddir/meson-logs/testlog-*.txt
+      - builddir/meson-logs/testlog*.txt
     expire_in: 1 week
     when: on_failure
     reports:
@@ -104,6 +104,9 @@ variables:
   script:
     - meson builddir $MESON_ARGS
     - ninja -C builddir $NINJA_ARGS
+    - if ! [[ -z '$MESON_TEST_ARGS' ]]; then
+        meson test -C builddir $MESON_TEST_ARGS;
+      fi
 
 #################################################################
 #                                                               #
@@ -751,6 +754,10 @@ fedora:31@enable-gcov-meson:
   variables:
     MESON_ARGS: '-Dcoverity=true'
 
+fedora:31@valgrind-meson:
+  extends: .fedora-custom-build@meson-template
+  variables:
+    MESON_TEST_ARGS: '--setup=valgrind'
 
 fedora:31@meson-from-tarball:
   stage: tarballs
index 2b39601202d1152f70c470fcd0a6cafc0bef51a4..80af5ef1d847f9637721ae433dda04d54242404b 100644 (file)
@@ -80,7 +80,7 @@ variables:
   artifacts:
     paths:
       - _build/test/test-suite.log
-      - builddir/meson-logs/testlog-*.txt
+      - builddir/meson-logs/testlog*.txt
     expire_in: 1 week
     when: on_failure
     reports:
@@ -104,6 +104,9 @@ variables:
   script:
     - meson builddir $MESON_ARGS
     - ninja -C builddir $NINJA_ARGS
+    - if ! [[ -z '$MESON_TEST_ARGS' ]]; then
+        meson test -C builddir $MESON_TEST_ARGS;
+      fi
 
 #################################################################
 #                                                               #
@@ -423,6 +426,10 @@ fedora:31@enable-gcov-meson:
   variables:
     MESON_ARGS: '-Dcoverity=true'
 
+fedora:31@valgrind-meson:
+  extends: .fedora-custom-build@meson-template
+  variables:
+    MESON_TEST_ARGS: '--setup=valgrind'
 
 fedora:31@meson-from-tarball:
   stage: tarballs
index e7d388cf6518422ac0017a271e7e8cb073fe26e8..babb5f4b1b48ca70712d1f8cf6b75c73f82736f3 100644 (file)
@@ -188,6 +188,8 @@ if dep_check.found()
        valgrind = find_program('valgrind', required : false)
        if valgrind.found()
                valgrind_env = environment()
+               valgrind_env.set('CK_TIMEOUT_MULTIPLIER', '10')
+               valgrind_env.set('CK_FORK', 'no')
                valgrind_suppressions_file = join_paths(dir_src_test, 'valgrind.suppressions')
                add_test_setup('valgrind',
                                exe_wrapper : [ valgrind,