]> ruderich.org/simon Gitweb - nsscash/nsscash.git/blob - .gitlab-ci.yml
Add build manifests for build.sr.ht
[nsscash/nsscash.git] / .gitlab-ci.yml
1 .template-docker: &template-docker
2   before_script:
3     - apt-get update
4     - apt-get install --no-install-recommends --yes golang golang-golang-x-tools golang-github-pkg-errors-dev golang-github-burntsushi-toml-dev build-essential clang git
5   script:
6     - 'test -z "$GOPATH" && export GOPATH=/usr/share/gocode'
7     # Run as user nobody so CAP_DAC_OVERRIDE is dropped and the tests can
8     # chmod a file 0000 to force "permission denied" errors.
9     - export HOME=/tmp # writable by nobody
10     - chown -R nobody .
11     # Empty TEST_* as -fsanitize doesn't work in a Docker container
12     - runuser -p -u nobody -- make      TEST_CFLAGS= TEST_LDFLAGS=
13     - runuser -p -u nobody -- make test TEST_CFLAGS= TEST_LDFLAGS=
14     - 'test -z "$(git clean -nd)"' # any untracked files left?
15     - runuser -p -u nobody -- make clean
16     - 'test -z "$(git clean -ndx)"' # any unignored files left?
17     # Build with clang
18     - runuser -p -u nobody -- make      CC=clang TEST_CFLAGS= TEST_LDFLAGS=
19     - runuser -p -u nobody -- make test CC=clang TEST_CFLAGS= TEST_LDFLAGS=
20
21 debian-stable:
22   <<: *template-docker
23   image: debian:stable
24
25 debian-testing:
26   <<: *template-docker
27   image: debian:testing
28
29 debian-sid:
30   <<: *template-docker
31   image: debian:sid