travis: Don't run sonarcloud in forked repositories
[strongswan.git] / .travis.yml
1 language: c
2
3 sudo: required
4 dist: xenial
5
6 # don't build tags separately
7 if: tag IS blank
8
9 compiler: gcc
10
11 cache: ccache
12
13 before_install:
14   - travis_retry ./scripts/test.sh deps
15   - travis_retry ./scripts/test.sh pydeps
16
17 before_script:
18   - sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 || true
19
20 script:
21   - ./scripts/test.sh
22
23 after_success:
24   if [ "$TEST" == "coverage" ]; then
25     bash <(curl -s https://codecov.io/bash);
26   fi
27
28 after_failure:
29   - cat config.log
30   - sleep 1
31
32 env:
33   global:
34     - TESTS_REDUCED_KEYLENGTHS=yes
35     - LEAK_DETECTIVE=no
36     - MONOLITHIC=no
37
38 matrix:
39   include:
40     - env: TEST=sonarcloud
41       if: type = push AND env(SONAR_TOKEN) IS present
42       git:
43         depth: false
44       addons:
45         sonarcloud:
46           organization: "strongswan"
47     - env: TEST=osx
48       compiler: clang
49       os: osx
50     - env: TEST=all
51     - env: TEST=all
52       compiler: clang
53     - env: TEST=all MONOLITHIC=yes
54     - env: TEST=all MONOLITHIC=yes
55       compiler: clang
56     - env: TEST=all LEAK_DETECTIVE=yes
57     - env: TEST=all LEAK_DETECTIVE=yes
58       compiler: clang
59     - env: TEST=coverage
60     - env: TEST=fuzzing MONOLITHIC=yes
61       compiler: clang
62     - env: TEST=win64 MONOLITHIC=yes
63     - env: TEST=win32 MONOLITHIC=yes
64     - env: TEST=dist
65     # "default" with GCC is already tested with "dist" above
66     - env: TEST=default
67       compiler: clang
68     - env: TEST=default MONOLITHIC=yes
69     - env: TEST=default MONOLITHIC=yes
70       compiler: clang
71     - env: TEST=default LEAK_DETECTIVE=yes
72     - env: TEST=default LEAK_DETECTIVE=yes
73       compiler: clang
74     # we can't test Vstr as negative int args are not properly passed to CBs
75     - env: TEST=printf-builtin
76     - env: TEST=printf-builtin
77       compiler: clang
78     - env: TEST=printf-builtin LEAK_DETECTIVE=yes
79     - env: TEST=printf-builtin LEAK_DETECTIVE=yes
80       compiler: clang
81     # the crypto plugins are build-tested with clang via "all" above
82     - env: TEST=botan
83     - env: TEST=botan LEAK_DETECTIVE=yes
84     - env: TEST=openssl
85     - env: TEST=openssl LEAK_DETECTIVE=yes
86     - env: TEST=openssl-1.0
87     - env: TEST=openssl-1.0 LEAK_DETECTIVE=yes
88     - env: TEST=gcrypt
89     - env: TEST=gcrypt LEAK_DETECTIVE=yes
90     - env: TEST=apidoc