mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 05:03:43 +01:00
Travis: Sort jobs in order of speed
Putting the slowest jobs first takes full advantage of Travis concurrency. Closes 33194.
This commit is contained in:
parent
9ba147e9af
commit
25ecdf1409
56
.travis.yml
56
.travis.yml
@ -43,30 +43,48 @@ env:
|
|||||||
matrix:
|
matrix:
|
||||||
## include creates builds with gcc, linux, unless we override those defaults
|
## include creates builds with gcc, linux, unless we override those defaults
|
||||||
include:
|
include:
|
||||||
## We run basic tests on macOS
|
## We run chutney on macOS, because macOS Travis has IPv6
|
||||||
|
## But we only run the IPv6 chutney tests, to speed up the job
|
||||||
|
- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" CHUTNEY_MAKE_TARGET="test-network-ipv6"
|
||||||
|
os: osx
|
||||||
|
|
||||||
|
## We also run basic tests on macOS
|
||||||
- compiler: clang
|
- compiler: clang
|
||||||
os: osx
|
os: osx
|
||||||
## Turn off some newer features, turn on clang's -Wtypedef-redefinition
|
## Turn off some newer features, turn on clang's -Wtypedef-redefinition
|
||||||
env: C_DIALECT_OPTIONS="-std=gnu99"
|
env: C_DIALECT_OPTIONS="-std=gnu99"
|
||||||
## We check NSS
|
|
||||||
## Use -std=gnu99 to turn off some newer features, and maybe turn on some
|
|
||||||
## extra gcc warnings?
|
|
||||||
- env: NSS_OPTIONS="--enable-nss" C_DIALECT_OPTIONS="-std=gnu99"
|
|
||||||
## We run chutney on Linux, because it's faster than chutney on macOS
|
## We run chutney on Linux, because it's faster than chutney on macOS
|
||||||
## Chutney is a fast job, clang is slower on Linux, so we do Chutney clang
|
## Chutney is a fast job, clang is slower on Linux, so we do Chutney clang
|
||||||
- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
|
- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
|
||||||
compiler: clang
|
compiler: clang
|
||||||
|
|
||||||
## We check asciidoc with distcheck, to make sure we remove doc products
|
## We check asciidoc with distcheck, to make sure we remove doc products
|
||||||
- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
|
- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
|
||||||
## We include a single coverage build with the best options for coverage
|
|
||||||
- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" TOR_TEST_RNG_SEED="636f766572616765"
|
|
||||||
## 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 disable module relay
|
## We check disable module relay
|
||||||
- env: MODULES_OPTIONS="--disable-module-relay"
|
- env: MODULES_OPTIONS="--disable-module-relay"
|
||||||
## We check disable module dirauth
|
## We check disable module dirauth
|
||||||
- env: MODULES_OPTIONS="--disable-module-dirauth"
|
- env: MODULES_OPTIONS="--disable-module-dirauth"
|
||||||
|
|
||||||
|
## 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 NSS
|
||||||
|
## Use -std=gnu99 to turn off some newer features, and maybe turn on some
|
||||||
|
## extra gcc warnings?
|
||||||
|
- env: NSS_OPTIONS="--enable-nss" C_DIALECT_OPTIONS="-std=gnu99"
|
||||||
|
|
||||||
|
## We include a single coverage build with the best options for coverage
|
||||||
|
- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" TOR_TEST_RNG_SEED="636f766572616765"
|
||||||
|
|
||||||
|
## We clone our stem repo and run `make test-stem`
|
||||||
|
- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
|
||||||
|
|
||||||
|
## We run `make doxygen` without `make check`.
|
||||||
|
- env: SKIP_MAKE_CHECK="yes" DOXYGEN="yes"
|
||||||
|
|
||||||
## macOS builds are very slow, and we have a limited number of
|
## macOS builds are very slow, and we have a limited number of
|
||||||
## concurrent macOS jobs. We're not actively developing Rust, so it is
|
## concurrent macOS jobs. We're not actively developing Rust, so it is
|
||||||
## the lowest priority.
|
## the lowest priority.
|
||||||
@ -74,14 +92,6 @@ matrix:
|
|||||||
#- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
|
#- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
|
||||||
# compiler: clang
|
# compiler: clang
|
||||||
# os: osx
|
# os: osx
|
||||||
## We run chutney on macOS, because macOS Travis has IPv6
|
|
||||||
## But we only run the IPv6 chutney tests, to speed up the job
|
|
||||||
- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" CHUTNEY_MAKE_TARGET="test-network-ipv6"
|
|
||||||
os: osx
|
|
||||||
## We clone our stem repo and run `make test-stem`
|
|
||||||
- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
|
|
||||||
## We run `make doxygen` without `make check`.
|
|
||||||
- env: SKIP_MAKE_CHECK="yes" DOXYGEN="yes"
|
|
||||||
|
|
||||||
## Allow the build to report success (with non-required sub-builds
|
## Allow the build to report success (with non-required sub-builds
|
||||||
## continuing to run) if all required sub-builds have succeeded.
|
## continuing to run) if all required sub-builds have succeeded.
|
||||||
@ -93,9 +103,13 @@ matrix:
|
|||||||
## macOS rust and chutney are very slow, so we let the build finish before
|
## 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
|
## 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.
|
## any failures in the build status. But Travis doesn't have that ability.
|
||||||
- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
|
|
||||||
compiler: clang
|
## Since this job is disabled, there's not much point having an exception
|
||||||
os: osx
|
## for it
|
||||||
|
#- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
|
||||||
|
# compiler: clang
|
||||||
|
# os: osx
|
||||||
|
|
||||||
## Since we're actively developing IPv6, we want to require the IPv6
|
## Since we're actively developing IPv6, we want to require the IPv6
|
||||||
## chutney tests
|
## chutney tests
|
||||||
#- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" CHUTNEY_MAKE_TARGET="test-network-ipv6"
|
#- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" CHUTNEY_MAKE_TARGET="test-network-ipv6"
|
||||||
|
@ -1,2 +1,4 @@
|
|||||||
o Testing:
|
o Testing:
|
||||||
- Remove a redundant distcheck job. Closes ticket 33194.
|
- Remove a redundant distcheck job. Closes ticket 33194.
|
||||||
|
- Sort the Travis jobs in order of speed. Putting the slowest jobs first
|
||||||
|
takes full advantage of Travis job concurrency. Closes ticket 33194.
|
||||||
|
Loading…
Reference in New Issue
Block a user