summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Withnall <pwithnall@endlessos.org>2022-04-07 13:43:29 +0100
committerPhilip Withnall <pwithnall@endlessos.org>2022-04-07 14:59:59 +0100
commit3ad669a9a0e27ee6fd117e227faad1ea6fc227b6 (patch)
tree78e45cb2b42f04db558c9d85b0fc6b589d02aa94
parent0c753c1df646e5b8befdfa66ce55c4459ade9574 (diff)
downloadglib-wip/asan-ci.tar.gz
ci: Add a sanitizer scheduled jobwip/asan-ci
This will run the build and tests with `-Db_sanitizer` defined, on the normal job schedule, so that we periodically get address and undefined behaviour testing. This is complementary to the `valgrind` job. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
-rw-r--r--.gitlab-ci.yml35
-rw-r--r--.gitlab-ci/fedora.Dockerfile2
2 files changed, 36 insertions, 1 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d2c039d24..42364564f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -10,7 +10,7 @@ cache:
- _ccache/
variables:
- FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v13"
+ FEDORA_IMAGE: "registry.gitlab.gnome.org/gnome/glib/fedora:v14"
COVERITY_IMAGE: "registry.gitlab.gnome.org/gnome/glib/coverity:v3"
DEBIAN_IMAGE: "registry.gitlab.gnome.org/gnome/glib/debian-stable:v9"
ANDROID_IMAGE: "registry.gitlab.gnome.org/gnome/glib/android-ndk:v6"
@@ -554,6 +554,39 @@ valgrind:
- "_build/glib/glibconfig.h"
- "_build/meson-logs"
+sanitizer:
+ extends:
+ - .build-linux
+ - .only-schedules
+ image: $FEDORA_IMAGE
+ stage: analysis
+ needs: []
+ script:
+ - meson ${MESON_COMMON_OPTIONS}
+ --werror
+ --default-library=both
+ --prefix=$HOME/glib-installed
+ --localstatedir=/var
+ --libdir=lib
+ -Db_sanitize=address,undefined
+ -Dsystemtap=true
+ -Ddtrace=true
+ -Dinstalled_tests=true
+ _build
+ - ninja -C _build
+ - .gitlab-ci/run-tests.sh
+ artifacts:
+ reports:
+ junit: "_build/${CI_JOB_NAME}-report.xml"
+ name: "glib-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
+ when: always
+ expire_in: 1 week
+ paths:
+ - "_build/config.h"
+ - "_build/glib/glibconfig.h"
+ - "_build/meson-logs"
+ - "_build/${CI_JOB_NAME}-report.xml"
+
pages:
stage: deploy
only:
diff --git a/.gitlab-ci/fedora.Dockerfile b/.gitlab-ci/fedora.Dockerfile
index deaa7c74e..eb2e979b1 100644
--- a/.gitlab-ci/fedora.Dockerfile
+++ b/.gitlab-ci/fedora.Dockerfile
@@ -35,10 +35,12 @@ RUN dnf -y update \
gtk-doc \
itstool \
lcov \
+ libasan \
libattr-devel \
libffi-devel \
libmount-devel \
libselinux-devel \
+ libubsan \
libxslt \
ncurses-compat-libs \
ninja-build \