malcontent/.gitlab-ci.yml

50 lines
1.2 KiB
YAML

image: debian:unstable
before_script:
- apt update
- apt install -y meson pkg-config gtk-doc-tools libxml2-utils
libglib2.0-dev libgirepository1.0-dev libpam0g-dev
gettext policykit-1 libpolkit-gobject-1-dev git
lcov libgtk-3-dev libaccountsservice-dev libflatpak-dev
libglib-testing-0-dev libappstream-glib-dev
- export LANG=C.UTF-8
stages:
- build
- deploy
cache:
paths:
- _ccache/
debian:
stage: build
except:
- tags
script:
- meson --buildtype debug --werror -Db_coverage=true -Ddocumentation=true -Dprivileged_group=sudo _build .
- meson test -C _build
# FIXME: lcov doesn't support gcc9 yet:
# https://github.com/linux-test-project/lcov/issues/58
- ninja -C _build coverage || true
coverage: '/^\s+lines\.+:\s+([\d.]+\%)\s+/'
artifacts:
when: always
name: "malcontent-${CI_JOB_NAME}-${CI_COMMIT_REF_NAME}"
paths:
- "_build/meson-logs"
# FIXME: Run gtkdoc-check when we can. See:
# https://github.com/mesonbuild/meson/issues/3580
pages:
stage: deploy
only:
- master
script:
- mkdir -p public/
- mv _build/meson-logs/coveragereport/ public/coverage/
artifacts:
paths:
- public