[tor-commits] [tor/maint-0.2.9] Travis: Unroll the build matrix into matrix: include:
teor at torproject.org
teor at torproject.org
Thu Oct 17 04:53:15 UTC 2019
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor <teor at torproject.org>
Date: Thu Sep 26 17:25:17 2019 +1000
Travis: Unroll the build matrix into matrix: include:
The jobs should be the same, but Travis may display them differently.
Part of 31859.
---
.travis.yml | 33 +++++++++++++--------------------
1 file changed, 13 insertions(+), 20 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
compiler:
- gcc
- - clang
os:
- linux
- - osx
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
env:
global:
## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
## We turn off asciidoc by default, because it's slow
- ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
-
matrix:
- ## include creates builds with gcc, linux
+ ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## gcc is the default compiler for most jobs, so we want a clang Linux job
+ - compiler: clang
+ ## clang is the default macOS compiler, so we use it for the macOS job
+ - compiler: clang
+ os: osx
## We include a single coverage build with the best options for coverage
- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
## https://github.com/travis-ci/travis-ci/issues/1696
# fast_finish: true
- ## Careful! We use global envs, which makes it hard to exclude or
- ## allow failures by env:
+ ## Careful! We use global envs, which makes it hard to allow failures by env:
## https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
- exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
- os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds use
- ## gcc on Linux
- - compiler: gcc
- os: linux
- env:
+ # allow_failures:
+ # - compiler: gcc
+ # os: linux
## (Linux only) Use the latest Linux image (Ubuntu Trusty)
dist: trusty
More information about the tor-commits
mailing list