strongswan/.travis.yml
Tobias Brunner 393e39a1bc travis: Switch to the Ubuntu 18.04 (bionic) image for tests
Do two full build tests on 16.04 (xenial) and the two for OpenSSL 1.0
also run there.  Since 18.04 ships OpenSSL 1.1.1, which conflicts with
our custom built version, we skip that until OpenSSL 3.0 is released.
A workaround is required for an issue with sonarqube on bionic.
2019-10-21 13:58:12 +02:00

100 lines
2.4 KiB
YAML

language: c
sudo: required
dist: bionic
# don't build tags separately
if: tag IS blank
compiler: gcc
cache: ccache
before_install:
- travis_retry ./scripts/test.sh deps
- travis_retry ./scripts/test.sh pydeps
before_script:
- sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 || true
script:
- ./scripts/test.sh
after_success:
if [ "$TEST" == "coverage" ]; then
bash <(curl -s https://codecov.io/bash);
fi
after_failure:
- cat config.log
- sleep 1
env:
global:
- TESTS_REDUCED_KEYLENGTHS=yes
- LEAK_DETECTIVE=no
- MONOLITHIC=no
matrix:
include:
- env: TEST=sonarcloud
if: type = push AND env(SONAR_TOKEN) IS present
git:
depth: false
addons:
sonarcloud:
organization: "strongswan"
- env: TEST=osx
compiler: clang
os: osx
- env: TEST=all
- env: TEST=all
compiler: clang
- env: TEST=all
dist: xenial
- env: TEST=all
dist: xenial
compiler: clang
- env: TEST=all MONOLITHIC=yes
- env: TEST=all MONOLITHIC=yes
compiler: clang
- env: TEST=all LEAK_DETECTIVE=yes
- env: TEST=all LEAK_DETECTIVE=yes
compiler: clang
- env: TEST=coverage
- env: TEST=fuzzing MONOLITHIC=yes
compiler: clang
- env: TEST=win64 MONOLITHIC=yes
- env: TEST=win32 MONOLITHIC=yes
- env: TEST=dist
# "default" with GCC is already tested with "dist" above
- env: TEST=default
compiler: clang
- env: TEST=default MONOLITHIC=yes
- env: TEST=default MONOLITHIC=yes
compiler: clang
- env: TEST=default LEAK_DETECTIVE=yes
- env: TEST=default LEAK_DETECTIVE=yes
compiler: clang
# we can't test Vstr as negative int args are not properly passed to CBs
- env: TEST=printf-builtin
- env: TEST=printf-builtin
compiler: clang
- env: TEST=printf-builtin LEAK_DETECTIVE=yes
- env: TEST=printf-builtin LEAK_DETECTIVE=yes
compiler: clang
# the crypto plugins are build-tested with clang via "all" above
- env: TEST=botan
- env: TEST=botan LEAK_DETECTIVE=yes
- env: TEST=wolfssl
- env: TEST=wolfssl LEAK_DETECTIVE=yes
- env: TEST=openssl
- env: TEST=openssl LEAK_DETECTIVE=yes
- env: TEST=openssl-1.0
dist: xenial
- env: TEST=openssl-1.0 LEAK_DETECTIVE=yes
dist: xenial
- env: TEST=gcrypt
- env: TEST=gcrypt LEAK_DETECTIVE=yes
- env: TEST=apidoc