]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
gitlabci: use ASAN build for tests
authorTomas Krizek <tomas.krizek@nic.cz>
Wed, 27 Feb 2019 11:28:18 +0000 (12:28 +0100)
committerTomas Krizek <tomas.krizek@nic.cz>
Tue, 12 Mar 2019 09:43:39 +0000 (10:43 +0100)
.gitlab-ci.yml

index a85e6132d0a42bdbd7afb37f89643ad62b5a8dad..5e8b826b1a6fa5aa3150252fd58d88495075e252 100644 (file)
@@ -13,6 +13,7 @@ variables:
   LIBKRES_NAME: libkres
   MESON_TEST: meson test -C build_ci* -t 2 --print-errorlogs
   PREFIX: $CI_PROJECT_DIR/.local
+  LSAN_OPTIONS: suppressions=$CI_PROJECT_DIR/tests/asan.suppr
 
 image: $CI_REGISTRY/knot/knot-resolver/ci/debian-buster:knot-$KNOT_VERSION
 
@@ -60,9 +61,8 @@ build-asan:
     - meson build_ci_asan --default-library=static --prefix=$PREFIX -Db_sanitize=address,undefined -Dpostinstall_tests=enabled
     - ninja -C build_ci_asan
     - ninja -C build_ci_asan install >/dev/null
-    - LSAN_OPTIONS=suppressions=$PWD/tests/asan.suppr ${MESON_TEST} --suite unit --suite config
-  # TODO remove allow_failure and privileged
-  allow_failure: true
+    - ${MESON_TEST} --suite unit --suite config
+  # TODO remove privileged when CI runners have --cap-add SYS_PTRACE
   tags:
     - privileged
 
@@ -106,7 +106,7 @@ kres-gen:
     - linux
     - amd64
   dependencies:
-    - build  # NOTE switch to asan if build passes (where it makes sense)
+    - build
   before_script:
     # meson detects changes and performs useless rebuild; hide the log
     - ninja -C build_ci* &>/dev/null
@@ -254,6 +254,8 @@ pkg:fedora-29:
 
 respdiff:basic:
   <<: *test
+  dependencies:
+    - build-asan
   script:
     - ulimit -n "$(ulimit -Hn)" # applies only for kresd ATM
     - ./ci/respdiff/start-resolvers.sh
@@ -287,6 +289,8 @@ test:valgrind:
 # extended {{{
 pytests:
   <<: *test_flaky
+  dependencies:
+    - build-asan
   stage: extended  # use this stage to avoid clash with other resource-intensive jobs
   script:
     - ${MESON_TEST} --suite pytests