From a060822399b8f38ca665b502c6fb4c204029c5e8 Mon Sep 17 00:00:00 2001 From: Daniel Stone Date: Tue, 5 Jun 2018 21:22:38 +0100 Subject: [PATCH] Add .gitlab-ci.yml Add a GitLab CI configuration which tests building, 'make check', and 'make distcheck' of the tree inside a Debian Stretch container. The choice of distribution base was arbitrary and may easily be changed. When commits are pushed to upstream, the commits will run this CI pipeline to run these tests, and capture the result as an artifact bundle, including the compiled binaries and full test suite logs. Results can be seen at: https://gitlab.freedesktop.org/wayland/wayland/pipelines/ Signed-off-by: Daniel Stone --- .gitlab-ci.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..bc1a005a --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,35 @@ +image: debian:stretch + +stages: + - build + +before_script: + - echo 'path-exclude=/usr/share/doc/*' > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft + - echo 'path-exclude=/usr/share/man/*' >> /etc/dpkg/dpkg.cfg.d/99-exclude-cruft + - echo '#!/bin/sh' > /usr/sbin/policy-rc.d + - echo 'exit 101' >> /usr/sbin/policy-rc.d + - chmod +x /usr/sbin/policy-rc.d + - apt-get update + - apt-get -y --no-install-recommends install build-essential automake autoconf libtool pkg-config libexpat1-dev libffi-dev libxml2-dev doxygen graphviz xmlto xsltproc docbook-xsl + +build-native: + stage: build + script: + - export BUILD_ID="wayland-$CI_JOB_NAME_$CI_COMMIT_SHA-$CI_JOB_ID" + - export PREFIX="$(pwd)/prefix-$BUILD_ID" + - export BUILDDIR="$(pwd)/build-$BUILD_ID" + - export MAKEFLAGS="-j4" + - mkdir "$BUILDDIR" "$PREFIX" + - cd "$BUILDDIR" + - ../autogen.sh --prefix="$PREFIX" --with-icondir=/usr/share/X11/icons + - make all + - make check + - make install + - make distcheck + artifacts: + name: wayland-$CI_COMMIT_SHA-$CI_JOB_ID + when: always + paths: + - build-*/wayland-*.tar.xz + - build-*/*.log + - prefix-*