diff options
author | teor <teor@torproject.org> | 2019-04-06 09:30:04 +1000 |
---|---|---|
committer | teor <teor@torproject.org> | 2019-04-06 09:30:04 +1000 |
commit | 102178e6d43ed990e972b2fbc4f611997c8943f0 (patch) | |
tree | 12458d1076106a5f0523bc082b05fcd73414d884 | |
parent | 3cfcfbac46d15f7d1cc47da03482aa70583aa455 (diff) | |
parent | a514e024769083908a35f28ac0df5f2e7b1137b8 (diff) | |
download | tor-102178e6d43ed990e972b2fbc4f611997c8943f0.tar.gz tor-102178e6d43ed990e972b2fbc4f611997c8943f0.zip |
Merge remote-tracking branch 'tor-github/pr/878' into maint-0.3.4
-rw-r--r-- | .travis.yml | 15 | ||||
-rw-r--r-- | Makefile.am | 4 | ||||
-rw-r--r-- | changes/bug29036 | 5 | ||||
-rw-r--r-- | changes/ticket29962 | 3 |
4 files changed, 22 insertions, 5 deletions
diff --git a/.travis.yml b/.travis.yml index 56d7dc0737..ed805aac31 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,8 +5,10 @@ cache: ## cargo: true directories: - $HOME/.cargo + ## caching CARGO_TARGET_DIR actually slows down the build over time, + ## because old build products are never deleted. ## where we point CARGO_TARGET_DIR in all our cargo invocations - - $TRAVIS_BUILD_DIR/src/rust/target + #- $TRAVIS_BUILD_DIR/src/rust/target compiler: - gcc @@ -201,6 +203,8 @@ script: ## We run `make check` because that's what https://jenkins.torproject.org does. - if [[ "$DISTCHECK" == "" ]]; then make check; fi - if [[ "$DISTCHECK" != "" ]]; then make distcheck DISTCHECK_CONFIGURE_FLAGS="$CONFIGURE_FLAGS"; fi + ## If this build was one that produced coverage, upload it. + - if [[ "$COVERAGE_OPTIONS" != "" ]]; then coveralls -b . --exclude src/test --exclude src/trunnel --gcov-options '\-p' || echo "Coverage failed"; fi after_failure: ## configure will leave a log file with more details of config failures. @@ -211,9 +215,12 @@ after_failure: ## `make distcheck` puts it somewhere different. - if [[ "$DISTCHECK" != "" ]]; then make show-distdir-testlog || echo "make failed"; fi -after_success: - ## If this build was one that produced coverage, upload it. - - if [[ "$COVERAGE_OPTIONS" != "" ]]; then coveralls -b . --exclude src/test --exclude src/trunnel --gcov-options '\-p'; fi +before_cache: + ## Delete all gcov files. + - if [[ "$COVERAGE_OPTIONS" != "" ]]; then make reset-gcov; fi + ## Delete the cargo registry before caching .cargo, because it's cheaper to + ## download the registry and throw it away, rather than caching it + - rm -rf $HOME/.cargo/registry notifications: irc: diff --git a/Makefile.am b/Makefile.am index c58140ae74..191620c062 100644 --- a/Makefile.am +++ b/Makefile.am @@ -170,8 +170,10 @@ test-full: need-stem-path need-chutney-path check test-network test-stem test-full-online: need-stem-path need-chutney-path check test-network test-stem-full +# We can't delete the gcno files, because they are created when tor is compiled reset-gcov: - rm -f $(top_builddir)/src/*/*.gcda $(top_builddir)/src/*/*/*.gcda + rm -f $(top_builddir)/src/*/*.gcda $(top_builddir)/src/*/*/*.gcda \ + $(top_builddir)/src/*/*.gcov $(top_builddir)/src/*/*/*.gcov HTML_COVER_DIR=$(top_builddir)/coverage_html coverage-html: all diff --git a/changes/bug29036 b/changes/bug29036 new file mode 100644 index 0000000000..8b96c5c8fa --- /dev/null +++ b/changes/bug29036 @@ -0,0 +1,5 @@ + o Minor bugfix (continuous integration): + - Reset coverage state on disk after Travis CI has finished. This is being + done to prevent future gcda file merge errors which causes the test suite + for the process subsystem to fail. The process subsystem was introduced + in 0.4.0.1-alpha. Fixes bug 29036; bugfix on 0.2.9.15. diff --git a/changes/ticket29962 b/changes/ticket29962 new file mode 100644 index 0000000000..e36cc0cf9a --- /dev/null +++ b/changes/ticket29962 @@ -0,0 +1,3 @@ + o Minor features (continuous integration): + - On Travis Rust builds, cleanup Rust registry and refrain from caching + target/ directory to speed up builds. Resolves issue 29962. |