summaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--.gitlab-ci.yml40
1 files changed, 40 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..c8de2ab
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,40 @@
+image: debian:bullseye
+variables:
+ DEBIAN_FRONTEND: noninteractive
+ CCACHE_DIR: $CI_PROJECT_DIR/.ccache
+ CCACHE_BASEDIR: $CI_PROJECT_DIR
+cache:
+ paths:
+ - .ccache
+
+test as root:
+ stage: test
+ script:
+ - adduser --home /home/travis travis --quiet --disabled-login --gecos "" --uid 1000
+ - rm -f /etc/dpkg/dpkg.cfg.d/excludes
+ - apt-get update
+ - apt-get install -qq build-essential expect sudo ccache
+ - chmod -R o+rwX $PWD
+ - ./prepare-release travis-ci
+ - sudo -u travis mkdir -p build .ccache
+ - sudo -u travis env -C build cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -G Ninja ..
+ - sudo -u travis --preserve-env=CCACHE_DIR,CCACHE_BASEDIR ninja -C build
+ - CTEST_OUTPUT_ON_FAILURE=1 ninja -C build test
+ - unbuffer ./test/integration/run-tests -q -j 4
+
+test as user:
+ image: i386/debian:bullseye
+ stage: test
+ script:
+ - adduser --home /home/travis travis --quiet --disabled-login --gecos "" --uid 1000
+ - rm -f /etc/dpkg/dpkg.cfg.d/excludes
+ - apt-get update
+ - apt-get install -qq build-essential expect sudo ccache
+ - chmod 755 /root
+ - chmod -R o+rwX $PWD
+ - ./prepare-release travis-ci
+ - sudo -u travis mkdir -p build .ccache
+ - sudo -u travis env -C build cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -G Ninja ..
+ - sudo -u travis --preserve-env=CCACHE_DIR,CCACHE_BASEDIR ninja -C build
+ - sudo -u travis CTEST_OUTPUT_ON_FAILURE=1 ninja -C build test
+ - sudo -u travis unbuffer ./test/integration/run-tests -q -j 4