[tor-commits] [tor/maint-0.4.1] Merge branch 'bug31859_040' into bug31859_041

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


commit e5dda7f66477dad699c654c54978bbad9a999847
Merge: 6f3f93d86 07db4141a
Author: teor <teor at torproject.org>
Date:   Tue Oct 1 23:50:24 2019 +1000

    Merge branch 'bug31859_040' into bug31859_041
    
    Merge TOR_TEST_RNG_SEED in maint-0.4.1 into the coverage line
    from bug31859_040.

 .travis.yml         | 87 +++++++++++++++++++++++------------------------------
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index bbba0e204,b3b8cb977..909a3d28d
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,50 -28,55 +28,55 @@@ 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 run basic tests on macOS
+     - compiler: clang
+       os: osx
+     ## We check NSS
+     ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+     - env: NSS_OPTIONS="--enable-nss"
+       compiler: clang
+     ## 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 include a single coverage build with the best options for coverage
 -    - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 +    - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" TOR_TEST_RNG_SEED="636f766572616765"
-     ## 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 rust on Linux, because it's faster than rust on macOS
+     ## We check rust offline
+     - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
      ## We check asciidoc with distcheck, to make sure we remove doc products
      - 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"
+     ## We check disable module dirauth
+     - env: MODULES_OPTIONS="--disable-module-dirauth"
+     ## We run rust on macOS, because we have seen macOS rust failures before
+     - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
        compiler: clang
-     # We clone our stem repo and run `make test-stem`
+       os: osx
+     ## 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 rust and chutney are very slow, so we let the build finish before
+     ## they are done.  We'd like to fast finish, but still eventually show
+     ## any failures in the build status. But Travis doesn't have that ability.
+     - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+       compiler: clang
+       os: osx
+     - 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"
  





More information about the tor-commits mailing list