]>
Commit | Line | Data |
---|---|---|
d151cd28 TB |
1 | language: c |
2 | ||
e365bef4 | 3 | os: linux |
393e39a1 | 4 | dist: bionic |
94a69986 | 5 | |
8932d607 TB |
6 | # don't build tags separately |
7 | if: tag IS blank | |
8 | ||
b76a1cf2 | 9 | compiler: gcc |
d151cd28 | 10 | |
1bbb736e TB |
11 | cache: ccache |
12 | ||
d151cd28 | 13 | before_install: |
f5481496 TB |
14 | - travis_retry ./scripts/test.sh deps |
15 | - travis_retry ./scripts/test.sh pydeps | |
0ff93958 | 16 | - travis_retry ./scripts/test.sh build-deps |
d151cd28 | 17 | |
bf5754ad | 18 | before_script: |
8486b3b4 | 19 | - sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 || true |
bf5754ad | 20 | |
d151cd28 | 21 | script: |
d151cd28 TB |
22 | - ./scripts/test.sh |
23 | ||
42f7c989 TB |
24 | after_success: |
25 | if [ "$TEST" == "coverage" ]; then | |
26 | bash <(curl -s https://codecov.io/bash); | |
27 | fi | |
28 | ||
c7c9a50a TB |
29 | after_failure: |
30 | - cat config.log | |
75853dbe | 31 | - sleep 1 |
c7c9a50a | 32 | |
d151cd28 TB |
33 | env: |
34 | global: | |
35 | - TESTS_REDUCED_KEYLENGTHS=yes | |
36 | - LEAK_DETECTIVE=no | |
37 | - MONOLITHIC=no | |
d62b6636 | 38 | |
e365bef4 | 39 | jobs: |
d62b6636 | 40 | include: |
fb410305 | 41 | - env: TEST=sonarcloud |
a4e698b6 | 42 | if: type = push AND env(SONAR_TOKEN) IS present |
e2d8833f TB |
43 | git: |
44 | depth: false | |
1f2c83db TB |
45 | cache: |
46 | directories: | |
47 | - $HOME/.sonar-cache | |
9c6bcb21 TB |
48 | addons: |
49 | sonarcloud: | |
50 | organization: "strongswan" | |
c9a34303 TB |
51 | - env: TEST=lgtm |
52 | if: type = push AND env(LGTM_TOKEN) IS present | |
53 | git: | |
54 | depth: false | |
fb410305 TB |
55 | - env: TEST=osx |
56 | compiler: clang | |
ff977331 | 57 | os: osx |
763f07c5 TB |
58 | - env: TEST=android |
59 | install: | |
60 | # see https://developer.android.com/studio#command-tools | |
61 | - export ANDROID_TOOLS=commandlinetools-linux-6200805_latest.zip | |
62 | - export ANDROID_HOME=$HOME/android-sdk | |
63 | - wget -nv https://dl.google.com/android/repository/$ANDROID_TOOLS | |
64 | - unzip -q $ANDROID_TOOLS -d $ANDROID_HOME && rm $ANDROID_TOOLS | |
65 | - export PATH=$PATH:$ANDROID_HOME/tools/bin | |
66 | # sdkmanager only works with Java 8 | |
67 | - export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 | |
68 | - yes | sdkmanager --sdk_root=$ANDROID_HOME --licenses >/dev/null | |
69 | - yes | sdkmanager --sdk_root=$ANDROID_HOME --install 'ndk;20.0.5594570' | |
70 | - mkdir -p $HOME/.gradle | |
71 | - echo "org.gradle.daemon=false" >> $HOME/.gradle/gradle.properties | |
72 | - echo "org.gradle.console=plain" >> $HOME/.gradle/gradle.properties | |
73 | # since the NDK is newly installed everytime, we have to use this to avoid cache misses | |
74 | - export CCACHE_COMPILERCHECK=content | |
75 | after_success: | |
76 | - cat src/frontends/android/app/build/reports/lint-results.xml | |
77 | before_cache: | |
78 | - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock | |
79 | - rm -fr $HOME/.gradle/caches/*/plugin-resolution/ | |
80 | cache: | |
81 | ccache: true | |
82 | directories: | |
83 | - $HOME/.gradle/caches/ | |
84 | - $HOME/.gradle/wrapper/ | |
85 | - $HOME/.android/build-cache | |
b76a1cf2 TB |
86 | - env: TEST=all |
87 | - env: TEST=all | |
88 | compiler: clang | |
3be430cc TB |
89 | - env: TEST=all |
90 | arch: arm64 | |
91 | - env: TEST=all | |
92 | arch: ppc64le | |
93 | - env: TEST=all | |
94 | arch: s390x | |
e0b1b120 | 95 | - env: TEST=all UBUNTU_XENIAL=yes |
393e39a1 | 96 | dist: xenial |
e0b1b120 | 97 | - env: TEST=all UBUNTU_XENIAL=yes |
393e39a1 TB |
98 | dist: xenial |
99 | compiler: clang | |
b76a1cf2 TB |
100 | - env: TEST=all MONOLITHIC=yes |
101 | - env: TEST=all MONOLITHIC=yes | |
102 | compiler: clang | |
103 | - env: TEST=all LEAK_DETECTIVE=yes | |
104 | - env: TEST=all LEAK_DETECTIVE=yes | |
105 | compiler: clang | |
fb410305 TB |
106 | - env: TEST=coverage |
107 | - env: TEST=fuzzing MONOLITHIC=yes | |
108 | compiler: clang | |
fb410305 TB |
109 | - env: TEST=win64 MONOLITHIC=yes |
110 | - env: TEST=win32 MONOLITHIC=yes | |
b76a1cf2 TB |
111 | - env: TEST=dist |
112 | # "default" with GCC is already tested with "dist" above | |
113 | - env: TEST=default | |
114 | compiler: clang | |
115 | - env: TEST=default MONOLITHIC=yes | |
116 | - env: TEST=default MONOLITHIC=yes | |
117 | compiler: clang | |
118 | - env: TEST=default LEAK_DETECTIVE=yes | |
119 | - env: TEST=default LEAK_DETECTIVE=yes | |
120 | compiler: clang | |
121 | # we can't test Vstr as negative int args are not properly passed to CBs | |
122 | - env: TEST=printf-builtin | |
123 | - env: TEST=printf-builtin | |
124 | compiler: clang | |
125 | - env: TEST=printf-builtin LEAK_DETECTIVE=yes | |
126 | - env: TEST=printf-builtin LEAK_DETECTIVE=yes | |
127 | compiler: clang | |
658b6df4 TB |
128 | - env: TEST=nm |
129 | - env: TEST=nm-no-glib | |
7195914d | 130 | # the crypto plugins are build-tested with clang via "all" above |
b76a1cf2 | 131 | - env: TEST=botan |
b76a1cf2 | 132 | - env: TEST=botan LEAK_DETECTIVE=yes |
d50bb81c TB |
133 | - env: TEST=wolfssl |
134 | - env: TEST=wolfssl LEAK_DETECTIVE=yes | |
b76a1cf2 | 135 | - env: TEST=openssl |
b76a1cf2 | 136 | - env: TEST=openssl LEAK_DETECTIVE=yes |
e0b1b120 | 137 | - env: TEST=openssl-1.0 UBUNTU_XENIAL=yes |
393e39a1 | 138 | dist: xenial |
e0b1b120 | 139 | - env: TEST=openssl-1.0 LEAK_DETECTIVE=yes UBUNTU_XENIAL=yes |
393e39a1 | 140 | dist: xenial |
b76a1cf2 | 141 | - env: TEST=gcrypt |
b76a1cf2 | 142 | - env: TEST=gcrypt LEAK_DETECTIVE=yes |
b76a1cf2 | 143 | - env: TEST=apidoc |