]> git.ipfire.org Git - thirdparty/strongswan.git/blobdiff - .travis.yml
Merge branch 'throw-type-routes'
[thirdparty/strongswan.git] / .travis.yml
index e9be72df9c4288f1449e475de33daaa987cde35c..c827f02175357ef186236465f9531cf48a72d236 100644 (file)
@@ -1,14 +1,12 @@
 language: c
 
-sudo: required
-dist: trusty
+os: linux
+dist: bionic
 
 # don't build tags separately
 if: tag IS blank
 
-compiler:
-  - gcc
-  - clang
+compiler: gcc
 
 cache: ccache
 
@@ -29,54 +27,88 @@ after_success:
 
 after_failure:
   - cat config.log
+  - sleep 1
 
 env:
   global:
     - TESTS_REDUCED_KEYLENGTHS=yes
     - LEAK_DETECTIVE=no
     - MONOLITHIC=no
-  matrix:
-    - TEST=all
-    - TEST=all MONOLITHIC=yes
-    - TEST=all LEAK_DETECTIVE=yes
-    - TEST=default
-    - TEST=default MONOLITHIC=yes
-    - TEST=default LEAK_DETECTIVE=yes
-    - TEST=botan
-    - TEST=botan LEAK_DETECTIVE=yes
-    - TEST=openssl
-    - TEST=openssl LEAK_DETECTIVE=yes
-    - TEST=gcrypt
-    - TEST=gcrypt LEAK_DETECTIVE=yes
-    # we can't test Vstr as negative int args are not properly passed to CBs
-    - TEST=printf-builtin
-    - TEST=printf-builtin LEAK_DETECTIVE=yes
 
-matrix:
+jobs:
   include:
-    - compiler: clang
-      os: osx
-      env: TEST=osx
-    - compiler: gcc
-      env: TEST=sonarcloud
-      if: env(SONAR_TOKEN) IS present
+    - env: TEST=sonarcloud
+      if: type = push AND env(SONAR_TOKEN) IS present
       git:
         depth: false
+      cache:
+        directories:
+          - $HOME/.sonar-cache
       addons:
         sonarcloud:
           organization: "strongswan"
-    - compiler: gcc
-      env: TEST=coverage
-    - compiler: clang
-      env: TEST=fuzzing MONOLITHIC=yes
-    - compiler: gcc
-      env: TEST=dist
-    - compiler: gcc
-      env: TEST=apidoc
-    - compiler: gcc
-      env: TEST=win64 MONOLITHIC=yes
-    # this does not work on 14.04 due to a missing @4 decoration for
-    # TryAcquireSRWLockExclusive in MinGW 3.1.0
-    - compiler: gcc
-      env: TEST=win32 MONOLITHIC=yes
-      dist: precise
+    - 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
+      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
+    - 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
+      dist: xenial
+    - env: TEST=openssl-1.0 LEAK_DETECTIVE=yes
+      dist: xenial
+    - env: TEST=gcrypt
+    - env: TEST=gcrypt LEAK_DETECTIVE=yes
+    - env: TEST=apidoc