libsecret/.gitlab-ci.yml
2020-03-10 14:05:44 +01:00

95 lines
2.3 KiB
YAML

stages:
- build
- deploy
variables:
DEPENDENCIES: dbus-x11 diffutils 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
artifacts:
when: on_failure
paths:
- _build/meson-logs/testlog.txt
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
artifacts:
when: on_failure
paths:
- _build/meson-logs/testlog.txt
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
artifacts:
when: on_failure
paths:
- _build/meson-logs/testlog.txt
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}"
when: on_success
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:
when: on_success
paths:
- public
# https://github.com/linux-test-project/lcov/issues/58
allow_failure: true