libsecret/.gitlab-ci.yml

79 lines
1.9 KiB
YAML

stages:
- build
- deploy
variables:
DEPENDENCIES: dbus-x11 gcc gjs meson ninja-build python3-dbus python3-gobject redhat-rpm-config
fedora:Werror:
image: fedora:latest
stage: build
before_script:
- dnf upgrade -y
- dnf install -y 'dnf-command(builddep)'
- dnf builddep -y libsecret
- dnf install -y $DEPENDENCIES
- dbus-uuidgen --ensure
script:
- meson _build -Dwerror=true -Dc_args=-Wno-error=deprecated-declarations
- eval `dbus-launch --sh-syntax`
- meson test -C _build
fedora:asan:
image: fedora:latest
stage: build
before_script:
- dnf upgrade -y
- dnf install -y 'dnf-command(builddep)'
- dnf builddep -y libsecret
- dnf install -y $DEPENDENCIES libasan
- dbus-uuidgen --ensure
script:
- meson _build -Dsanitize=address
- eval `dbus-launch --sh-syntax`
- meson test -C _build
fedora:ubsan:
image: fedora:latest
stage: build
before_script:
- dnf upgrade -y
- dnf install -y 'dnf-command(builddep)'
- dnf builddep -y libsecret
- dnf install -y $DEPENDENCIES libubsan
- dbus-uuidgen --ensure
script:
- meson _build -Dsanitize=undefined
- eval `dbus-launch --sh-syntax`
- meson test -C _build
fedora:coverage:
image: fedora:latest
stage: build
before_script:
- dnf upgrade -y
- dnf install -y 'dnf-command(builddep)'
- dnf builddep -y libsecret
- dnf install -y $DEPENDENCIES lcov
- dbus-uuidgen --ensure
script:
- meson _build -Db_coverage=true
- eval `dbus-launch --sh-syntax`
- meson test -C _build
- ninja coverage-html -C _build
coverage: '/^\s+lines.+:\s+([\d.]+\%)\s+/'
artifacts:
name: "libsecret-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
paths:
- _build/meson-logs/coveragereport/
# https://github.com/linux-test-project/lcov/issues/58
allow_failure: true
pages:
stage: deploy
script:
- mv _build/meson-logs/coveragereport/ public/
artifacts:
paths:
- public