Files
biboumi/.gitlab-ci.yml
T

128 lines
3.1 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
name: $CI_PROJECT_NAME-rpm-$CI_BUILD_ID
.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
name: $CI_PROJECT_NAME-rpm-$CI_BUILD_ID
test:debian:
stage: test
image: biboumi-test-debian:latest
<<: *basic_test
test:fedora:
stage: test
image: biboumi-test-fedora:latest
<<: *basic_test
test:openbsd:
variables:
COMPILER: "g++"
SYSTEMD: "-DWITHOUT_SYSTEMD=1"
stage: test
tags:
- openbsd
<<: *basic_test
test:coverity:
stage: test
image: biboumi-test-fedora:latest
allow_failure: true
when: manual
script:
- export PATH=$PATH:~/coverity/bin
- cmake .. -DWITHOUT_SYSTEMD=1
- cov-build --dir cov-int make biboumi test_suite -j$(nproc)
- tar czvf biboumi_coverity.tgz cov-int
- curl --form token=$COVERITY_TOKEN --form email=louiz@louiz.org --form file=@biboumi_coverity.tgz --form version="$(git rev-parse --short HEAD)" --form description="Automatic submission by gitlab-ci" https://scan.coverity.com/builds?project=louiz%2Fbiboumi