Commit graph

176 commits

Author SHA1 Message Date
Ben Woosley
119d360aab
travis: Document whether functional tests are run in the job name 2019-01-31 22:13:45 -08:00
Ben Woosley
64f28545e3
Revert "travis: Compile trusty with depends for now"
Thus building against system rather than depends libs

This reverts commit fa5ce3f10e.
2019-01-31 22:10:55 -08:00
MarcoFalke
bb36f5e24b
Merge #15276: travis: Compile once on trusty
fa5ce3f10e travis: Compile trusty with depends for now (MarcoFalke)
fa83999d92 travis: Compile once on trusty (MarcoFalke)

Pull request description:

  To avoid accidentally regressing again on #15172, we should compile at least once with gcc4.8 (the minimum required version)

  Note that this uses the trusty image, which will be removed in a few months from the docker hub, so in the future it had to be switched to the centos7 (or similar) image, which should come with gcc4.8 as well.

Tree-SHA512: 9d1704464bde8dbaf3319ac35f72d32dce549818730d3b2fb63df817f84a88dd64aa3419b97a57c1120ffb254784503b7d2675b1291d4ed073cd2a2488aa717d
2019-01-30 15:11:52 -05:00
MarcoFalke
2ca632e5b4 test: Build fuzz targets into seperate executables 2019-01-29 19:03:06 -05:00
MarcoFalke
fa5ce3f10e
travis: Compile trusty with depends for now 2019-01-28 13:51:41 -05:00
MarcoFalke
fa83999d92
travis: Compile once on trusty 2019-01-28 11:40:56 -05:00
MarcoFalke
06fabfa287
Merge #15020: Build: add names to Travis jobs
1db71d4a29 Add names to Travis jobs (Graham Krizek)

Pull request description:

  This adds the `name` field to all the TravisCI jobs. This will make it more obvious in the Travis UI what job is failing or passing.

Tree-SHA512: d65841bab0a80d098a46a4bb54af2f9a93db7abca93b848aa00d25dcf4cd74323371c7c0b78b4dbf390b197e7ba32262a91631e201fc505f834021753f700b28
2019-01-03 16:42:34 +01:00
Graham Krizek
1db71d4a29
Add names to Travis jobs
This also removes job name comments from .travis.yml because they are no longer necessary
2019-01-03 09:20:00 -06:00
Graham Krizek
a3b8b43663
Update Travis base OS to Xenial
Updating the base OS used in Travis to Xenial from Trusty. This also updates Docker to 18.06 instead of 17.06 in CI.
2018-12-28 08:26:31 -06:00
MarcoFalke
fa05d52af4
test: Bump timeout to run tests in travis thread sanitizer 2018-12-20 08:06:28 +13:00
practicalswift
069752b726 build: Enable functional tests in the ThreadSanitizer (TSan) build job 2018-12-17 09:24:37 +01:00
Chun Kuan Lee
fc91c1f28e Revert "travis: Save cache on build error"
This reverts commit d3ecc3d695.
2018-12-13 21:18:14 +08:00
Sjors Provoost
74ce326831
[test] Travis: enforce Python 3.4 support in functional tests
Make lint/check-doc.py Python 3.4 compatible.

Also add .python-version for pyenv which will cause tests with too
modern syntax to fail on developer machine rather than on Travis.
2018-12-12 10:39:32 +01:00
MarcoFalke
c62b151189
Merge #14231: travis: Save cache even when build or test fail
d3ecc3d695 travis: Save cache on build error (Chun Kuan Lee)

Pull request description:

  In current travis setup, the job will terminate immediately if an error occur. There is no chance to save the cache. This was accidentally introduced by #13863. This PR is to fix the issue and travis would save cache on error.

  test for build error: https://travis-ci.org/bitcoin/bitcoin/builds/429172128

Tree-SHA512: fb8beb97928e10932c695d1884948bf8972a6501042d5212111fba1f258160d813a4c6cc72e9da78f2acd9518382c21943347b820d8e15b5eb874e7707c928b2
2018-12-03 11:07:19 -05:00
practicalswift
ff7212ec32 Add ASan Travis build 2018-11-26 22:20:46 +01:00
MarcoFalke
2607c38fc5
Merge #14764: travis: Run thread sanitizer on unit tests
fa7d36b8e7 test: Move UBSAN suppressions to test/sanitizer_suppressions/ubsan (MarcoFalke)
fa36d4e456 travis: --disable-hardening for xenial thread sanitizer (MarcoFalke)
89bf196c88 travis: Run thread sanitizer (MarcoFalke)

Pull request description:

  On unit tests only for now. Disabled for the gui unit tests and all functional tests.

Tree-SHA512: 56f7d3b44e7cb68c76a2dc5abd85658955b1c2188932e988667c5a1cbcdd6be995d37bb949d62c6eb08a4aebfc43ff0370b7da1719d4e4f322a3495c1941a5e0
2018-11-23 09:38:33 -05:00
MarcoFalke
fa36d4e456
travis: --disable-hardening for xenial thread sanitizer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67308
2018-11-22 11:48:58 -05:00
MarcoFalke
89bf196c88 travis: Run thread sanitizer 2018-11-22 11:47:36 -05:00
Julian Fleischer
feeef7d30e
Do not specify sudo in .travis
Travis is deprecating the `sudo` keyword and moves everything to
the same infrastructure (sudo really selects between two infrastructures).

See https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration?utm_source=in-app&utm_medium=intercom for more info.
2018-11-20 15:50:30 +01:00
practicalswift
4773fa8207 Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers. 2018-11-06 17:45:54 +01:00
practicalswift
9f49db7335 Enable functional tests in UBSAN job. Enable -fsanitize=integer (part of UBSAN). Merge UBSAN Travis job with no depends. 2018-11-05 20:04:02 +01:00
MarcoFalke
73a8408bc3
Merge #14092: tests: Dry run bench_bitcoin as part "make check" to allow for quick identification of assertion/sanitizer failures in benchmarking code
dfef0df840 tests: Dry run bench_bitcoin (-evals=1 -scaling=0: <1 second running time) as part "make check" to allow for quick identification of assertion/sanitizer failures in benchmarking code (practicalswift)
00c6306a61 Remove RUN_BENCH logic (practicalswift)

Pull request description:

  Dry run `bench_bitcoin` (`-evals=1 -scaling=0`: <1 second running time) as part `make check` to allow for quick identification of assertion/sanitizer failures or crashes in benchmarking code.

  This is already tested in Travis but it is nice to have it locally too. The cost is near zero.

Tree-SHA512: 1f51b86b34bf97f75785f2694891d80f1bfb3e050211e6f6c35d8d9bc80c75bdebaa5ebfa51855ac0cf76d8773c3026bc576f60d0227afb0e646d728b83abde7
2018-11-05 09:31:01 -05:00
MarcoFalke
742ee21349
Merge #14528: travis: Compile once on xenial
fa4bcaf82a travis: Compile once on xenial (MarcoFalke)

Pull request description:

  Currently we only build on bionic (since that is also the current gitian environment). However, building on the current and previous Ubuntu LTS should be supported with only system packages and without depends.

Tree-SHA512: bf5725cfb1be09220510d53010c7b7deb20051a9995e39fe5e83505c63db09ac877a41b896c97b253052fefea58ca0a9b6d9c5962a7ac4b258782c476d6ee7c0
2018-11-02 17:41:07 -04:00
Chun Kuan Lee
d3ecc3d695 travis: Save cache on build error 2018-10-28 06:48:35 +08:00
MarcoFalke
f4e4ea1cee
Merge #13515: travis: Enable qt for all jobs
3387bb0829 travis: avoid timeout without saving caches, also enable all qt (Chun Kuan Lee)

Pull request description:

  - If depends build take more than 20 mins, skip Bitcoin Core build to store depends caches and mark it fail. Then restart the job for Bitcoin Core build.
  - Enable Qt build for Windows and 32-bit Linux
  - Enable wallet for depends x86-64 Linux
  - Disable gui tests for Windows since they are not supported

  This would be helpful for upgrading Qt (#12971) and protobuf (#13513)

Tree-SHA512: e943cbd848d90f9f70e29c94ed717f96ad2c2d27b433bafea762015756a2d2794fc28976c54aee087bf0f3726ac2c9140920272445a902038719b956e2160cf9
2018-10-26 07:51:33 -04:00
MarcoFalke
fa4bcaf82a
travis: Compile once on xenial 2018-10-20 07:24:48 -03:00
MarcoFalke
faa4043c66
qa: Run more tests with wallet disabled 2018-09-25 18:08:08 -04:00
Chun Kuan Lee
3387bb0829 travis: avoid timeout without saving caches, also enable all qt 2018-09-10 11:14:08 +08:00
practicalswift
00c6306a61 Remove RUN_BENCH logic 2018-08-30 22:19:47 +02:00
Chun Kuan Lee
4c530e0102 travis: add CXXFLAGS=-Wnopsabi at ARM job 2018-08-28 01:15:30 +08:00
Julian Fleischer
414326952c use export LC_ALL=C.UTF-8 2018-08-27 12:23:25 +02:00
Julian Fleischer
728c82d029 make script exit if a command fails 2018-08-27 12:23:25 +02:00
Julian Fleischer
506890b24d move remaining travis build steps into individual files 2018-08-27 12:23:25 +02:00
Julian Fleischer
272306ea57 number .travis/ script according to build lifecycle and add README to explain 2018-08-27 12:23:25 +02:00
Julian Fleischer
519e2739cf move lint stage up to resemble travis build ui
adjust indentation to 2 spaces
2018-08-27 12:23:25 +02:00
Julian Fleischer
4f2f88c7b0 move script sections info individual files and comply with shellcheck 2018-08-27 12:23:25 +02:00
MarcoFalke
fad8afa388
travis: Run unit tests --with-sanitizers=undefined 2018-08-26 10:57:39 -04:00
MarcoFalke
5e17777777
qa: Create unicode tempdir in test_runner 2018-08-03 11:29:02 -04:00
Julian Fleischer
566f826902 use only travis jobs: instead of mix of jobs+matrix 2018-08-02 15:36:00 +02:00
MarcoFalke
fa7a3a1783
travis: Run bench_bitcoin once 2018-08-01 10:25:24 -04:00
MarcoFalke
d25079ac71
Merge #13779: travis: improve readability of travis.yml and log outputs
f98146d001 use travis:fold in test script steps (Julian Fleischer)
9730d3af31 make .travis/yml a bit more readable (Julian Fleischer)

Pull request description:

  This PR contains two commits which

  * make the travis.yml file a bit more readable by splitting the environment variables over lines (it's a little bit more verbose but way easier to compare across forks or visually grasp in the first place),
  * use `travis:fold` to fold the `autogen`, `configure`, `make`, and so forth, steps.

  The `END_FOLD` shell function preserves the exit code of the statement right before.

Tree-SHA512: 7aff86e72008093f46d6ec7afa735f01e40c18f1efe55867d6ff4039191986c0fa8d4136cd53adb34e29f0f40e30c37d1a83615aea3f8438c20ec3b1c2910295
2018-07-30 14:33:19 -04:00
Julian Fleischer
f98146d001 use travis:fold in test script steps 2018-07-30 20:04:50 +02:00
Julian Fleischer
9730d3af31 make .travis/yml a bit more readable 2018-07-27 11:53:40 +02:00
MarcoFalke
faaf49147c
travis: Retry to fetch docker image 2018-07-26 13:51:15 -04:00
fanquake
26b15df99d
depends: set OSX_MIN_VERSION to 10.10 2018-07-25 07:30:27 +08:00
MarcoFalke
7a9bca61fa
Merge #13650: [travis] Don't store debug info if --enable-debug is set
14788fbada [travis] Don't store debug info if --enable-debug is set (Chun Kuan Lee)

Pull request description:

  After #12686 merged, ccache store huge size of .o files, simply get rid of those useless debug info.

  Fixes #13748

Tree-SHA512: fb404e2c7d52cd8266548433955c41683ede062f97c8fb7098a887f164bcde48b60e5e533a0a27c7e095fdd9ef88db018b8689adebb2c0e32c8957828629e346
2018-07-24 14:15:03 -04:00
Ben Woosley
751c9587d4
Use the Travis python language feature on the lint build
Rather than installing python via apt.

https://docs.travis-ci.com/user/languages/python/
2018-07-21 12:57:17 -04:00
Ben Woosley
515348f704
Don't unnecessarily install shellcheck on the lint build
"Travis CI has now integrated ShellCheck by default, so you don't need to manually install it."
https://github.com/koalaman/shellcheck#travis-ci
2018-07-21 12:57:04 -04:00
Ben Woosley
1be5c33333
Avoid unnecessarily setting env variables on the lint build
The relevent env variables are set for the matrix builds, and are irrelevant
to the lint build. By default the first matrix entry is applied.

"Each job included in jobs.include inherits the first value of the array that defines a matrix dimension."
https://docs.travis-ci.com/user/build-stages/#Build-Stages-and-Build-Matrix-Expansion
2018-07-20 18:40:46 -04:00
Wladimir J. van der Laan
2dc5ab6378
Merge #13482: Remove boost::program_options dependency
f447a0a707 Remove program options from build system (Chun Kuan Lee)
11588c639e Replace boost program_options (Chun Kuan Lee)

Pull request description:

  Concept from #12744, but without parsing negated options.

Tree-SHA512: 7f418744bb8934e313d77a5f162633746ef5d043de802b9c9cd9f7c1842e7e566eb5f171cd9e2cc13317281b2449c6fbd553fa4f09b837e6af2f5d2b2aabdca2
2018-07-20 16:45:44 +02:00