image: debian:unstable before_script: - apt update -qq - apt install -y -qq build-essential meson pkg-config gtk-doc-tools libxml2-utils gobject-introspection dbus dbus-x11 libgirepository1.0-dev libglib2.0-dev lcov valac - export LANG=C.UTF-8 stages: - build - test - deploy build-job: stage: build script: - meson --buildtype debug --werror _build . - ninja -C _build except: - tags artifacts: when: on_failure name: "dconf-_${CI_COMMIT_REF_NAME}" paths: - "${CI_PROJECT_DIR}/_build/meson-logs" test: stage: test script: - meson _build . -Db_coverage=true - ninja -C _build test - ninja -C _build coverage coverage: '/^\s+lines\.+:\s+([\d.]+\%)\s+/' # FIXME: Run gtkdoc-check when we can. See: # https://github.com/mesonbuild/meson/issues/3580 dist-job: stage: build only: - tags script: - meson --buildtype release _build . - ninja -C _build dist artifacts: paths: - "${CI_PROJECT_DIR}/_build/meson-dist/dconf-*.tar.xz" pages: stage: deploy only: - master script: - meson -Db_coverage=true -Ddocumentation=true _build . - ninja -C _build test dconf-doc - ninja -C _build coverage - mkdir -p public/ - mv _build/dconf/docs/html/ public/docs/ - mv _build/meson-logs/coveragereport/ public/coverage/ artifacts: paths: - public