strongswan/.travis.yml

116 lines
2.8 KiB
YAML

language: c
os: linux
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
- travis_retry ./scripts/test.sh build-deps
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
jobs:
include:
- env: TEST=sonarcloud
if: type = push AND env(SONAR_TOKEN) IS present
git:
depth: false
cache:
directories:
- $HOME/.sonar-cache
addons:
sonarcloud:
organization: "strongswan"
- env: TEST=lgtm
if: type = push AND env(LGTM_TOKEN) IS present
git:
depth: false
- env: TEST=osx
compiler: clang
os: osx
- env: TEST=all
- env: TEST=all
compiler: clang
- env: TEST=all
arch: arm64
- env: TEST=all
arch: ppc64le
- env: TEST=all
arch: s390x
- env: TEST=all UBUNTU_XENIAL=yes
dist: xenial
- env: TEST=all UBUNTU_XENIAL=yes
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
- env: TEST=nm
- env: TEST=nm-no-glib
# 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 UBUNTU_XENIAL=yes
dist: xenial
- env: TEST=openssl-1.0 LEAK_DETECTIVE=yes UBUNTU_XENIAL=yes
dist: xenial
- env: TEST=gcrypt
- env: TEST=gcrypt LEAK_DETECTIVE=yes
- env: TEST=apidoc