.gitlab-ci.yml: Exercise both libgcrypt and gnutls crypto backends

Note that gnutls 3.8.2 packages is still under testing, so we
tentatively pull in the build directly from koji.

Signed-off-by: Daiki Ueno <dueno@src.gnome.org>
This commit is contained in:
Daiki Ueno 2023-11-28 08:20:44 +09:00
parent 28486191b2
commit b3f5823d12
2 changed files with 22 additions and 6 deletions

View File

@ -1,4 +1,4 @@
image: registry.gitlab.gnome.org/gnome/libsecret/master:v2
image: registry.gitlab.gnome.org/gnome/libsecret/master:v3
stages:
- build
@ -7,12 +7,21 @@ stages:
variables:
CPPCHECK_OPTIONS: "--enable=warning --enable=style --enable=performance --enable=portability --std=c99 --template='{id}:{file}:{line},{severity},{message}'"
.build:
parallel:
matrix:
- CRYPTO: libgcrypt
- CRYPTO: gnutls
- CRYPTO: disabled
fedora:Werror:
stage: build
extends:
- .build
before_script:
- dbus-uuidgen --ensure
script:
- meson _build -Dwerror=true -Dc_args=-Wno-error=deprecated-declarations -Dgtk_doc=false
- meson _build -Dwerror=true -Dc_args=-Wno-error=deprecated-declarations -Dgtk_doc=false -Dcrypto=$CRYPTO
- meson compile -C _build
- eval `dbus-launch --sh-syntax`
- meson test -C _build --print-errorlogs
@ -23,11 +32,13 @@ fedora:Werror:
fedora:asan:
stage: build
extends:
- .build
before_script:
- dbus-uuidgen --ensure
script:
- export LSAN_OPTIONS=suppressions=$PWD/build/lsan.supp
- meson _build -Db_sanitize=address -Dgtk_doc=false -Dintrospection=false
- meson _build -Db_sanitize=address -Dgtk_doc=false -Dintrospection=false -Dcrypto=$CRYPTO
- meson compile -C _build
- eval `dbus-launch --sh-syntax`
- meson test -C _build --print-errorlogs
@ -38,10 +49,12 @@ fedora:asan:
fedora:ubsan:
stage: build
extends:
- .build
before_script:
- dbus-uuidgen --ensure
script:
- meson _build -Db_sanitize=undefined -Dgtk_doc=false
- meson _build -Db_sanitize=undefined -Dgtk_doc=false -Dcrypto=$CRYPTO
- meson compile -C _build
- eval `dbus-launch --sh-syntax`
- meson test -C _build --print-errorlogs
@ -52,10 +65,12 @@ fedora:ubsan:
fedora-static-analyzers/test:
stage: build
extends:
- .build
before_script:
- dbus-uuidgen --ensure
script:
- meson _build -Dgtk_doc=false
- meson _build -Dgtk_doc=false -Dcrypto=$CRYPTO
- meson compile -C _build --ninja-args scan-build
- cppcheck --force -q $CPPCHECK_OPTIONS libsecret/ egg/ tool/
artifacts:

View File

@ -1,4 +1,4 @@
FROM fedora:38
FROM fedora:39
RUN dnf update -y \
&& dnf install -y \
@ -10,6 +10,7 @@ RUN dnf update -y \
gi-docgen \
git \
glib2-devel \
gnutls-devel \
gobject-introspection-devel \
lcov \
libasan \