sudo: required
+dist: xenial
services:
- docker
jobs:
include:
- stage: Build & test
- name: Fedora Rawhide
+ name: Debian Testing
language: bash
env:
- - FEDORA_RELEASE="rawhide"
- - CONT_NAME="systemd-fedora-$FEDORA_RELEASE"
+ - DEBIAN_RELEASE="testing"
+ - CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
before_install:
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
- docker --version
install:
- - $CI_MANAGERS/fedora.sh SETUP
+ - $CI_MANAGERS/debian.sh SETUP
script:
- set -e
# Build systemd
- - $DOCKER_EXEC meson build
- - $DOCKER_EXEC ninja -C build
- # Run 'make check'
- - $DOCKER_EXEC ninja -C build test
+ - $CI_MANAGERS/debian.sh RUN
- set +e
after_script:
- - $CI_MANAGERS/fedora.sh CLEANUP
+ - $CI_MANAGERS/debian.sh CLEANUP
+
+ - name: Debian Testing (ASan+UBSan)
+ language: bash
+ env:
+ - DEBIAN_RELEASE="testing"
+ - CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
+ - DOCKER_EXEC="docker exec -ti $CONT_NAME"
+ before_install:
+ - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
+ - docker --version
+ install:
+ - $CI_MANAGERS/debian.sh SETUP
+ script:
+ - set -e
+ - $CI_MANAGERS/debian.sh RUN_ASAN
+ - set +e
+ after_script:
+ - $CI_MANAGERS/debian.sh CLEANUP
+
+ - name: Debian Testing (clang)
+ language: bash
+ env:
+ - DEBIAN_RELEASE="testing"
+ - CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
+ - DOCKER_EXEC="docker exec -ti $CONT_NAME"
+ before_install:
+ - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
+ - docker --version
+ install:
+ - $CI_MANAGERS/debian.sh SETUP
+ script:
+ - set -e
+ - $CI_MANAGERS/debian.sh RUN_CLANG
+ - set +e
+ after_script:
+ - $CI_MANAGERS/debian.sh CLEANUP
+
+ - name: Debian Testing (clang ASan+UBSan)
+ language: bash
+ env:
+ - DEBIAN_RELEASE="testing"
+ - CONT_NAME="systemd-debian-$DEBIAN_RELEASE"
+ - DOCKER_EXEC="docker exec -ti $CONT_NAME"
+ before_install:
+ - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
+ - docker --version
+ install:
+ - $CI_MANAGERS/debian.sh SETUP
+ script:
+ - set -e
+ - $CI_MANAGERS/debian.sh RUN_CLANG_ASAN
+ - set +e
+ after_script:
+ - $CI_MANAGERS/debian.sh CLEANUP
+
+ - name: Ubuntu Xenial
+ language: bash
+ script:
+ - set -e
+ - sudo $CI_MANAGERS/xenial.sh
+ - set +e
- stage: Coverity
language: bash
- FEDORA_RELEASE="latest"
- CONT_NAME="coverity-fedora-$FEDORA_RELEASE"
- DOCKER_EXEC="docker exec -ti $CONT_NAME"
- - DOCKER_RUN="docker run --env-file .cov-env"
+ - TOOL_BASE="/var/tmp/coverity-scan-analysis"
+ - DOCKER_RUN="docker run -v $TOOL_BASE:$TOOL_BASE:rw --env-file .cov-env"
# Coverity env variables
- PLATFORM="$(uname)"
- - TOOL_BASE="/var/tmp/coverity-scan-analysis"
- TOOL_ARCHIVE="/var/tmp/cov-analysis-$PLATFORM.tgz
- SCAN_URL="https://scan.coverity.com"
- UPLOAD_URL="https://scan.coverity.com/builds"