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