This is an automated email from the git hooks/post-receive script.

guillem pushed a commit to branch master
in repository dpkg.

View the commit online:
https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=1a16bcbe71db53a1f69d304e97df287452600ed3

commit 1a16bcbe71db53a1f69d304e97df287452600ed3
Author: Guillem Jover <[email protected]>
AuthorDate: Mon Jan 15 02:25:32 2018 +0100

    build: Add a GitLab CI configuration
    
    We add a single test stage with four jobs, each checking the various
    upstream build setups we want to make sure do not break. These are:
    
     - make distcheck
     - make check (author tests)
     - make check (VPATH)
     - external functional test suite
---
 .gitlab-ci.yml   | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am      |  1 +
 debian/changelog |  1 +
 3 files changed, 56 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 000000000..898b0a212
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,54 @@
+image: debian:sid
+
+before_script:
+  - apt update -qq
+  - apt install -qq -y eatmydata
+  - eatmydata apt install -qq -y --no-install-recommends
+    git ca-certificates
+  - eatmydata apt build-dep -qq -y .
+  - ./autogen
+
+# Test whether the release can be done.
+dist-check:
+  stage: test
+  script:
+    - eatmydata apt install -qq -y --no-install-recommends
+      libmodule-build-perl
+    - ./configure
+    - make distcheck
+
+# Test whether the unit tests pass.
+unit-tests:
+  stage: test
+  script:
+    - eatmydata apt install -qq -y --no-install-recommends
+      fakeroot gpg aspell aspell-en i18nspector
+      libtest-strict-perl libtest-minimumversion-perl libtest-perl-critic-perl
+      libtest-pod-perl libtest-pod-coverage-perl libtest-spelling-perl
+      libtest-synopsis-perl
+    - ./configure
+    - make check VERBOSE=1 TESTSUITEFLAGS=--verbose TEST_PARALLEL=$(nproc)
+                 AUTHOR_TESTING=1
+
+# Test whether the unit tests pass on a VPATH build.
+vpath-tests:
+  stage: test
+  script:
+    - mkdir -p build-tree
+    - cd build-tree
+    - ../configure
+    - make check VERBOSE=1 TESTSUITEFLAGS=--verbose TEST_PARALLEL=$(nproc)
+
+# Test whether the external functional tests pass.
+func-tests:
+  stage: test
+  script:
+    - ./configure
+    - make
+    - git clone https://git.dpkg.org/git/dpkg/dpkg-tests.git
+    - cd dpkg-tests
+    - echo "DPKG_SERIES = 1.18.x" >>.pkg-tests.conf
+    - echo "DPKG_TESTSUITE_OPTIONS = debug not-root" >>.pkg-tests.conf
+    - echo "DPKG_BUILDTREE = $(realpath ..)" >>.pkg-tests.conf
+    - ./db-regen
+    - eatmydata make test
diff --git a/Makefile.am b/Makefile.am
index 972889a89..058a8ae03 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -31,6 +31,7 @@ dist_pkgdata_DATA = \
        $(nil)
 
 EXTRA_DIST = \
+       .gitlab-ci.yml \
        .mailmap \
        ChangeLog.old \
        README.l10n \
diff --git a/debian/changelog b/debian/changelog
index 05510bd05..688c70b53 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -165,6 +165,7 @@ dpkg (1.19.1) UNRELEASED; urgency=medium
     - Add an autogen script to help people bootstrap the project.
     - Distribute the man.stamp from VPATH.
     - Preserve timestamps when distributing man pages.
+    - Add a GitLab CI configuration file.
   * Packaging:
     - Install update-alternatives policykit-1 file.
     - Add Breaks to libdpkg-perl against pkg-kde-tools (<< 0.15.28~), as

-- 
Dpkg.Org's dpkg

Reply via email to