Skip to content

Commit b76a1cf

Browse files
committed
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)
1 parent fb41030 commit b76a1cf

File tree

1 file changed

+46
-21
lines changed

1 file changed

+46
-21
lines changed

.travis.yml

Lines changed: 46 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@ dist: xenial
66
# don't build tags separately
77
if: tag IS blank
88

9-
compiler:
10-
- gcc
11-
- clang
9+
compiler: gcc
1210

1311
cache: ccache
1412

@@ -36,22 +34,6 @@ env:
3634
- TESTS_REDUCED_KEYLENGTHS=yes
3735
- LEAK_DETECTIVE=no
3836
- MONOLITHIC=no
39-
matrix:
40-
- TEST=all
41-
- TEST=all MONOLITHIC=yes
42-
- TEST=all LEAK_DETECTIVE=yes
43-
- TEST=default
44-
- TEST=default MONOLITHIC=yes
45-
- TEST=default LEAK_DETECTIVE=yes
46-
- TEST=botan
47-
- TEST=botan LEAK_DETECTIVE=yes
48-
- TEST=openssl
49-
- TEST=openssl LEAK_DETECTIVE=yes
50-
- TEST=gcrypt
51-
- TEST=gcrypt LEAK_DETECTIVE=yes
52-
# we can't test Vstr as negative int args are not properly passed to CBs
53-
- TEST=printf-builtin
54-
- TEST=printf-builtin LEAK_DETECTIVE=yes
5537

5638
matrix:
5739
include:
@@ -65,10 +47,53 @@ matrix:
6547
- env: TEST=osx
6648
compiler: clang
6749
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
6859
- env: TEST=coverage
6960
- env: TEST=fuzzing MONOLITHIC=yes
7061
compiler: clang
71-
- env: TEST=dist
72-
- env: TEST=apidoc
7362
- env: TEST=win64 MONOLITHIC=yes
7463
- 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+
- env: TEST=botan
82+
- env: TEST=botan
83+
compiler: clang
84+
- env: TEST=botan LEAK_DETECTIVE=yes
85+
- env: TEST=botan LEAK_DETECTIVE=yes
86+
compiler: clang
87+
- env: TEST=openssl
88+
- env: TEST=openssl
89+
compiler: clang
90+
- env: TEST=openssl LEAK_DETECTIVE=yes
91+
- env: TEST=openssl LEAK_DETECTIVE=yes
92+
compiler: clang
93+
- env: TEST=gcrypt
94+
- env: TEST=gcrypt
95+
compiler: clang
96+
- env: TEST=gcrypt LEAK_DETECTIVE=yes
97+
- env: TEST=gcrypt LEAK_DETECTIVE=yes
98+
compiler: clang
99+
- env: TEST=apidoc

0 commit comments

Comments
 (0)