diff --git a/.travis.yml b/.travis.yml index ad633e46a0..34b7595eb3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -37,7 +37,8 @@ env: ## and it's going to take a while for them to be fixed. See: ## https:/trac.torproject.org/projects/tor/ticket/25386 ## https:/trac.torproject.org/projects/tor/ticket/26398 - - RUST_OPTIONS="--enable-rust --enable-cargo-online-mode" HARDENING_OPTIONS="" + ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2 + - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true HARDENING_OPTIONS="" matrix: ## include creates builds with gcc, linux, sudo: false @@ -50,12 +51,12 @@ matrix: # - env: HARDENING_OPTIONS="" ## We check asciidoc with distcheck, to make sure we remove doc products - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" - ## Check rust offline with distcheck, to make sure we remove rust products + ## Check rust online with distcheck, to make sure we remove rust products ## But without hardening (see above) - - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true HARDENING_OPTIONS="" - ## Check disable module dirauth with rust, and without rust but with distcheck + - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust --enable-cargo-online-mode" HARDENING_OPTIONS="" + ## Check disable module dirauth with and without rust - env: MODULES_OPTIONS="--disable-module-dirauth" RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true HARDENING_OPTIONS="" - - env: DISTCHECK="yes" MODULES_OPTIONS="--disable-module-dirauth" + - env: MODULES_OPTIONS="--disable-module-dirauth" ## Uncomment to allow the build to report success (with non-required ## sub-builds continuing to run) if all required sub-builds have @@ -72,9 +73,23 @@ matrix: ## Clang doesn't work in containerized builds, see below. - compiler: clang sudo: false - ## We also exclude non-containerized gcc, because they're slow and redundant. + ## Non-containerized gcc are slow and redundant. - compiler: gcc sudo: required + ## 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 HARDENING_OPTIONS="" ## We don't need sudo. (The "apt:" stanza after this allows us to not need ## sudo; otherwise, we would need it for getting dependencies.) diff --git a/changes/ticket27252 b/changes/ticket27252 new file mode 100644 index 0000000000..410ddef8c0 --- /dev/null +++ b/changes/ticket27252 @@ -0,0 +1,6 @@ + o Minor features (continuous integration): + - Skip gcc on OSX in Travis CI, it's rarely used. + Skip a duplicate hardening-off build in Travis on Tor 0.2.9. + Skip gcc on Linux with default settings, because all the non-default + builds use gcc on Linux. + Implements ticket 27252. diff --git a/changes/ticket27252-032 b/changes/ticket27252-032 new file mode 100644 index 0000000000..4752aedcf6 --- /dev/null +++ b/changes/ticket27252-032 @@ -0,0 +1,5 @@ + o Minor features (continuous integration): + - Only run one online rust build in Travis, to reduce network errors. + Skip offline rust builds on Travis for Linux gcc, because they're + redundant. + Implements ticket 27252. diff --git a/changes/ticket27252-034 b/changes/ticket27252-034 new file mode 100644 index 0000000000..620ad83efe --- /dev/null +++ b/changes/ticket27252-034 @@ -0,0 +1,3 @@ + o Minor features (continuous integration): + - Don't do a distcheck with --disable-module-dirauth in Travis. + Implements ticket 27252.