Skip to content

Commit 6cd7463

Browse files
committed
Reorder builds to improve build times
The main issue is that all iOS builds are in a block and there are only 5 simultaneous builds allowed by our Travis CI plan. So if there's a backlog of iOS builders, then the entire build process stalls. So instead of having them all clumped together, distribute the Mac and iOS builds throughout the build pipeline.
1 parent fb329e8 commit 6cd7463

File tree

1 file changed

+24
-25
lines changed

1 file changed

+24
-25
lines changed

.travis.yml

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ env:
1212

1313
matrix:
1414
# These are all the build jobs. Adjust as necessary. Comment out what you
15-
# don't need
15+
# don't need. The iOS/Mac builds are distributed throughout because Travis
16+
# likes to have a big backlog on builds on those machines. This way at least
17+
# all of the other jobs can finish while waiting on those builds.
1618
include:
1719
# Android
1820
- env: TARGET=aarch64-linux-android DISABLE_TESTS=1
@@ -21,70 +23,63 @@ matrix:
2123
rust: 1.13.0
2224
- env: TARGET=armv7-linux-androideabi DISABLE_TESTS=1
2325
rust: 1.13.0
26+
- env: TARGET=aarch64-apple-ios DISABLE_TESTS=1
27+
rust: 1.13.0
28+
os: osx
2429
- env: TARGET=i686-linux-android DISABLE_TESTS=1
2530
rust: 1.18.0
2631
- env: TARGET=x86_64-linux-android DISABLE_TESTS=1
2732
rust: 1.18.0
2833

29-
# iOS
30-
- env: TARGET=aarch64-apple-ios DISABLE_TESTS=1
34+
# Linux
35+
- env: TARGET=aarch64-unknown-linux-gnu
3136
rust: 1.13.0
32-
os: osx
3337
- env: TARGET=armv7-apple-ios DISABLE_TESTS=1
3438
rust: 1.13.0
3539
os: osx
36-
- env: TARGET=armv7s-apple-ios DISABLE_TESTS=1
37-
rust: 1.13.0
38-
os: osx
39-
- env: TARGET=i386-apple-ios DISABLE_TESTS=1
40-
rust: 1.13.0
41-
os: osx
42-
- env: TARGET=x86_64-apple-ios DISABLE_TESTS=1
43-
rust: 1.13.0
44-
os: osx
45-
46-
# Linux
47-
- env: TARGET=aarch64-unknown-linux-gnu
48-
rust: 1.13.0
4940
- env: TARGET=arm-unknown-linux-gnueabi
5041
rust: 1.13.0
5142
- env: TARGET=arm-unknown-linux-musleabi DISABLE_TESTS=1
5243
rust: 1.14.0
5344
- env: TARGET=armv7-unknown-linux-gnueabihf
5445
rust: 1.13.0
46+
- env: TARGET=armv7s-apple-ios DISABLE_TESTS=1
47+
rust: 1.13.0
48+
os: osx
5549
- env: TARGET=i686-unknown-linux-gnu
5650
rust: 1.13.0
5751
- env: TARGET=i686-unknown-linux-musl
5852
rust: 1.13.0
5953
- env: TARGET=mips-unknown-linux-gnu
6054
rust: 1.13.0
55+
- env: TARGET=i386-apple-ios DISABLE_TESTS=1
56+
rust: 1.13.0
57+
os: osx
6158
- env: TARGET=mips64-unknown-linux-gnuabi64
6259
rust: 1.13.0
6360
- env: TARGET=mips64el-unknown-linux-gnuabi64
6461
rust: 1.13.0
6562
- env: TARGET=mipsel-unknown-linux-gnu
6663
rust: 1.13.0
64+
- env: TARGET=x86_64-apple-ios DISABLE_TESTS=1
65+
rust: 1.13.0
66+
os: osx
6767
- env: TARGET=powerpc-unknown-linux-gnu DISABLE_TESTS=1
6868
rust: 1.13.0
6969
- env: TARGET=powerpc64-unknown-linux-gnu
7070
rust: 1.13.0
7171
- env: TARGET=powerpc64le-unknown-linux-gnu
7272
rust: 1.13.0
73+
- env: TARGET=i686-apple-darwin
74+
rust: 1.13.0
75+
os: osx
7376
- env: TARGET=s390x-unknown-linux-gnu DISABLE_TESTS=1
7477
rust: 1.13.0
7578
- env: TARGET=x86_64-unknown-linux-gnu
7679
rust: 1.13.0
7780
- env: TARGET=x86_64-unknown-linux-musl
7881
rust: 1.13.0
7982

80-
# OSX
81-
- env: TARGET=i686-apple-darwin
82-
rust: 1.13.0
83-
os: osx
84-
- env: TARGET=x86_64-apple-darwin
85-
rust: 1.13.0
86-
os: osx
87-
8883
# *BSD
8984
# FreeBSD i686 and x86_64 use BuildBot instead of Travis
9085
# Note that i686-unknown-freebsd is actually using stable Rust instead of
@@ -94,6 +89,10 @@ matrix:
9489
- env: TARGET=x86_64-unknown-netbsd DISABLE_TESTS=1
9590
rust: 1.13.0
9691

92+
- env: TARGET=x86_64-apple-darwin
93+
rust: 1.13.0
94+
os: osx
95+
9796
# Testing beta on main targets
9897
- env: TARGET=x86_64-unknown-linux-gnu
9998
rust: beta

0 commit comments

Comments
 (0)