[dconf: 2/8] build: Add GitLab CI support



commit 019299fefe2948845f9e038c9c411248ab47d232
Author: Philip Withnall <withnall endlessm com>
Date:   Thu Aug 9 12:20:49 2018 +0100

    build: Add GitLab CI support
    
    Signed-off-by: Philip Withnall <withnall endlessm com>

 .gitlab-ci.yml | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..9ef52c9
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,64 @@
+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
\ No newline at end of file


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]