]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
use jemalloc in CI
authorVladimír Čunát <vladimir.cunat@nic.cz>
Fri, 7 Oct 2022 13:46:13 +0000 (15:46 +0200)
committerVladimír Čunát <vladimir.cunat@nic.cz>
Wed, 30 Nov 2022 16:39:23 +0000 (17:39 +0100)
.gitlab-ci.yml
ci/images/debian-11/Dockerfile

index ceaf11b84a8ba3f965436e3a2635608794e03f4c..34493376660c37dbd0d2cfaf299706be891777a7 100644 (file)
@@ -106,7 +106,7 @@ archive:
 build:
   <<: *build
   script:
-    - meson build_ci --default-library=static --prefix=$PREFIX -Dwerror=true -Dextra_tests=enabled
+    - meson build_ci --default-library=static --prefix=$PREFIX -Dmalloc=disabled -Dwerror=true -Dextra_tests=enabled
     - ninja -C build_ci
     - ninja -C build_ci install >/dev/null
     - ${MESON_TEST} --suite unit --suite config --no-suite snowflake
@@ -115,7 +115,7 @@ build-knot32:
   <<: *build
   image: $CI_REGISTRY/knot/knot-resolver/ci/debian-11:knot-3.2
   script:
-    - meson build_ci_knot32 --default-library=static --prefix=$PREFIX -Dwerror=true -Dextra_tests=enabled
+    - meson build_ci_knot32 --default-library=static --prefix=$PREFIX -Dmalloc=disabled -Dwerror=true -Dextra_tests=enabled
     - ninja -C build_ci_knot32
     - ninja -C build_ci_knot32 install >/dev/null
     - ${MESON_TEST} --suite unit --suite config --no-suite snowflake
@@ -124,7 +124,7 @@ build-asan:
   <<: *build
   script:
       # "undefined" sanitizer causes C++ issues when loading ahocorasick.so in CI
-    - CC=clang CXX=clang++ CFLAGS=-fno-sanitize-recover=all CXXFLAGS=-fno-sanitize=undefined meson build_ci_asan --default-library=static --prefix=$PREFIX -Db_sanitize=address,undefined -Dextra_tests=enabled
+    - CC=clang CXX=clang++ CFLAGS=-fno-sanitize-recover=all CXXFLAGS=-fno-sanitize=undefined meson build_ci_asan --default-library=static --prefix=$PREFIX -Dmalloc=jemalloc -Db_sanitize=address,undefined -Dextra_tests=enabled
     - ninja -C build_ci_asan
     - ninja -C build_ci_asan install >/dev/null
       # TODO _leaks: not sure what exactly is wrong in leak detection on config tests
@@ -170,7 +170,7 @@ sonarcloud:
     - tags
     - master@knot/knot-resolver
   script:
-    - meson build_sonarcloud --default-library=static --prefix=$PREFIX
+    - meson build_sonarcloud --default-library=static --prefix=$PREFIX -Dmalloc=disabled
     - build-wrapper-linux-x86-64 --out-dir bw-output ninja -C build_sonarcloud
     - >
         sonar-scanner
@@ -319,6 +319,8 @@ root.hints:
 
 deckard:
   <<: *test_flaky
+  # Deckard won't work with jemalloc due to a faketime bug:
+  # https://github.com/wolfcw/libfaketime/issues/130
   only:  # trigger job only in repos under our control (privileged runner required)
     - branches@knot/knot-resolver
     - branches@knot/security/knot-resolver
index 4ed7cff6a6b4a6c97a11ce1af39f89f8a9cad1e0..dd9455722173203d5967b3fbbf3ebb7904fd84d0 100644 (file)
@@ -16,7 +16,7 @@ RUN apt-get update -qq
 RUN apt-get install -y -qqq git make cmake pkg-config meson \
        build-essential bsdmainutils libtool autoconf libcmocka-dev \
        liburcu-dev libgnutls28-dev libedit-dev liblmdb-dev libcap-ng-dev libsystemd-dev \
-       libelf-dev libmnl-dev libidn11-dev libuv1-dev \
+       libelf-dev libmnl-dev libidn11-dev libuv1-dev libjemalloc-dev \
        libluajit-5.1-dev lua-http libssl-dev libnghttp2-dev
 
 # Build and testing deps for Resolver's dnstap module (go stuff is just for testing)