travis: Use manual matrix expansion to improve overall run time

The sonarcloud build runs a long time now (the win32/64 builds are also
a lot slower on xenial), which increases the overall time a build takes
because we can't run these before regular matrix jobs run.  So we do a
manual matrix expansion to control the order of jobs (slower first).
This also removes the TEST=default build with GCC as that's basically
what TEST=dist does (except for forcing the printf implementation)
This commit is contained in:
Tobias Brunner 2018-11-13 18:31:21 +01:00
parent fb4103051e
commit b76a1cf284

View File

@ -6,9 +6,7 @@ dist: xenial
# don't build tags separately
if: tag IS blank
compiler:
- gcc
- clang
compiler: gcc
cache: ccache
@ -36,22 +34,6 @@ env:
- 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:
include:
@ -65,10 +47,53 @@ matrix:
- env: TEST=osx
compiler: clang
os: osx
- env: TEST=all
- env: TEST=all
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=dist
- env: TEST=apidoc
- 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=botan
- env: TEST=botan
compiler: clang
- env: TEST=botan LEAK_DETECTIVE=yes
- env: TEST=botan LEAK_DETECTIVE=yes
compiler: clang
- env: TEST=openssl
- env: TEST=openssl
compiler: clang
- env: TEST=openssl LEAK_DETECTIVE=yes
- env: TEST=openssl LEAK_DETECTIVE=yes
compiler: clang
- env: TEST=gcrypt
- env: TEST=gcrypt
compiler: clang
- env: TEST=gcrypt LEAK_DETECTIVE=yes
- env: TEST=gcrypt LEAK_DETECTIVE=yes
compiler: clang
- env: TEST=apidoc