From 8520071f2313ae6973082ca7cb5680a9df88ce78 Mon Sep 17 00:00:00 2001 From: teor Date: Thu, 26 Sep 2019 17:25:17 +1000 Subject: 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 a2bc6395df..b18335d743 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 -- cgit v1.2.3-54-g00ecf