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
- 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
- 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
respdiff:basic:
<<: *test
+ dependencies:
+ - build-asan
script:
- ulimit -n "$(ulimit -Hn)" # applies only for kresd ATM
- ./ci/respdiff/start-resolvers.sh
# 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