Files
biboumi/.gitlab-ci.yml
T
louiz’ daa7ea04a4 Add coverage_e2e, which runs e2e, and regenerate a global coverage report
This coverage is probably more useful than the other one, because it’s not
really reasonable to try to cover everything with simple units test (e.g. on
network code etc).
However, we should strive to have 100% coverage with our e2e tests.
2016-09-28 19:48:00 +02:00

104 lines
2.3 KiB
YAML

before_script:
- uname -a
- whoami
- echo $LANG
- g++ --version
- clang++ --version
- rm -rf build/
- mkdir build/
- cd build
variables:
COMPILER: "g++"
BUILD_TYPE: "Debug"
BOTAN: "-DWITH_BOTAN=1"
CARES: "-DWITH_CARES=1"
SYSTEMD: "-DWITH_SYSTEMD=1"
LIBIDN: "-DWITH_LIBIDN=1"
LITESQL: "-DWITH_LITESQL=1"
.template:basic_build: &basic_build
stage: build
script:
- "echo Running cmake with the following parameters: -DCMAKE_CXX_COMPILER=${COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ${BOTAN} ${CARES} ${SYSTEMD} ${LIBIDN} ${LITESQL}"
- cmake .. -DCMAKE_CXX_COMPILER=${COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ${BOTAN} ${CARES} ${SYSTEMD} ${LIBIDN} ${LITESQL}
- make biboumi -j$(nproc)
- make check -j$(nproc)
image: biboumi-test-fedora:latest
build:1:
variables:
BOTAN: "-DWITHOUT_BOTAN=1"
<<: *basic_build
build:2:
variables:
CARES: "-DWITHOUT_CARES=1"
<<: *basic_build
build:3:
variables:
LITESQL: "-DWITHOUT_LITESQL=1"
<<: *basic_build
build:4:
variables:
LITESQL: "-DWITHOUT_LITESQL=1"
BOTAN: "-DWITHOUT_BOTAN=1"
<<: *basic_build
build:5:
variables:
LITESQL: "-DWITHOUT_LITESQL=1"
CARES: "-DWITHOUT_CARES=1"
<<: *basic_build
build:6:
variables:
BOTAN: "-DWITHOUT_BOTAN=1"
CARES: "-DWITHOUT_CARES=1"
<<: *basic_build
build:6:
variables:
LIBIDN: "-DWITHOUT_LIBIDN=1"
CARES: "-DWITHOUT_CARES=1"
<<: *basic_build
build:rpm:
stage: build
script:
- cmake .. -DCMAKE_CXX_COMPILER=${COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ${BOTAN} ${CARES} ${SYSTEMD} ${LIBIDN} ${LITESQL}
- make rpm -j$(nproc)
artifacts:
paths:
- build/rpmbuild/RPMS
- build/rpmbuild/SRPMS
when: always
.template:basic_test: &basic_test
stage: test
script:
- cmake .. -DCMAKE_CXX_COMPILER=${COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} ${BOTAN} ${CARES} ${SYSTEMD} ${LIBIDN} ${LITESQL}
- make biboumi -j$(nproc)
- make check
- make coverage
- mkdir tests_outputs && pushd tests_outputs && make coverage_e2e -j$(nproc) -C .. && popd
artifacts:
paths:
- build/coverage/
- build/coverage_e2e/
- build/tests_outputs/
when: always
test:debian:
stage: test
image: biboumi-test-debian:latest
<<: *basic_test
test:fedora:
stage: test
image: biboumi-test-fedora:latest
<<: *basic_test