[tor-commits] [tor/maint-0.4.0] Merge branch 'bug31859_029' into bug31859_035

teor at torproject.org teor at torproject.org
Thu Oct 17 04:53:54 UTC 2019


commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor <teor at torproject.org>
Date:   Tue Oct 1 17:20:16 2019 +1000

    Merge branch 'bug31859_029' into bug31859_035
    
    While merging:
    * leave out some redundant jobs and build matrix entries

 .travis.yml         | 68 ++++++++++++++++++-----------------------------------
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ 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
      -
-     ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-     - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
    include:
-     ## 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
-     ## (they shouldn't vary by compiler or OS)
-     ## We run rust and coverage with hardening off, which seems like enough
-     # - env: HARDENING_OPTIONS=""
+     ## We run basic tests on macOS
+     - compiler: clang
+       os: osx
+     ## We run chutney on Linux, because it's faster than chutney on macOS
+     - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
      ## We check asciidoc with distcheck, to make sure we remove doc products
 -    ## We use Linux clang, because there are no other Linux clang jobs
      - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-     # We also try running a hardened clang build with chutney on Linux.
-     - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--      compiler: clang
+     ## We include a single coverage build with the best options for coverage
+     - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+     ## We run chutney on macOS, because macOS Travis has IPv6
+     - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+       os: osx
 +    # We clone our stem repo and run `make test-stem`
 +    - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +    ## Check rust online with distcheck, to make sure we remove rust products
 +    - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
 +    ## Check disable module dirauth with and without rust
 +    - env: MODULES_OPTIONS="--disable-module-dirauth" RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +    - env: MODULES_OPTIONS="--disable-module-dirauth"
 +    ## Check NSS
 +    - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   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
    allow_failures:
+     ## macOS chutney is very slow, so we let the build finish before it's done
+     ## We'd like to fast finish, but still eventually show failures.
+     ## But Travis doesn't have that option.
+     - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+       os: osx
 +    ## test-stem sometimes hangs on Travis
 +    - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   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:
-     ## offline rust builds for gcc on Linux are redundant, because we do an
-     ## online rust build for gcc on Linux
-     - compiler: gcc
-       os: linux
-       ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-       env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
  dist: trusty
  





More information about the tor-commits mailing list