summaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml54
1 files changed, 54 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..c7e454a
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,54 @@
+image: debian:bullseye
+
+variables:
+ FF_DISABLE_UMASK_FOR_DOCKER_EXECUTOR: 1
+
+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 cppcheck shellcheck aspell aspell-en codespell 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 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 TESTSUITEFLAGS=--verbose TEST_PARALLEL=$(nproc)
+
+# Test whether the functional tests pass.
+func-tests:
+ stage: test
+ script:
+ - ./configure
+ - make
+ - cd tests
+ - echo "DPKG_BUILDTREE = $(realpath ..)" >>.pkg-tests.conf
+ - ./db-regen
+ - eatmydata make test