summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 6a6ff0611cf17f803934a4ad9d59aac97df9fc7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
image: debian:unstable
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:
  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