Commit Graph

90 Commits

Author SHA1 Message Date
Terence Parr 5809f71d0e
Merge pull request #2091 from ewanmellor/travis-cache-dotnet-osx
Add Travis-side caching of the dotnet package that we download from Microsoft
2017-11-04 10:50:00 -07:00
Ewan Mellor 026c6736dc
Add Travis-side caching of the dotnet package that we download from Microsoft.
This avoids hitting the Microsoft server every time.  The download isn't
super-reliable, so this should help with build reliability.

This extends the cache timeout, because the package is large and the
upload was timing out.
2017-10-28 14:32:33 -07:00
Ewan Mellor 6b504fee43
Remove ~/.m2/repository/org/antlr from the Travis cache.
Caching ~/.m2 is useful; caching org/antlr inside there is not.  It causes
unnecessary re-submission of the cache every build.
2017-10-28 14:26:34 -07:00
Ewan Mellor 897b4339a3
Switch the Linux Swift tests to Trusty and Swift 4.0.
This uses Travis's new(ish) Ubuntu Trusty image, and changes the
version number of the Swift binaries that we download.

We now install clang-3.6.  This is not the default on Trusty, but
it's required by the Swift 4.0 toolchain.

This also removes the lines to upgrade libicu-dev and sqlite3.  These
are sufficiently up-to-date in the Trusty image.
2017-10-20 10:12:47 -07:00
Ewan Mellor cfb0041328
Switch all the macOS Travis jobs to use the Xcode 9 image.
We require Xcode 9 for the Swift target, and the C++ and .NET tests
shouldn't care either way.

We no longer need to install cmake: this is already in the Travis
Xcode 9.0 image (and it barfs if we try to install it again).

We no longer need the rvm bug workarounds; a newer version of rvm is
in the Xcode 9.0 image so this is no longer a problem.

The openssl package is already installed and up-to-date now, so there is
no need to install that.

These changes mean that we don't need before-install-osx-cpp.sh
or before-install-os-swift.sh at all, and before-install-osx-dotnet.sh
gets a bit shorter.  .travis.yml gets a small change to handle the
fact that some platform / target combos don't need before-install any more.
2017-10-20 10:12:47 -07:00
Ewan Mellor 7df0c2f478
Split the C++ tests into three groups.
Running these as a single test still intermittently times out after 40
minutes, even with the other recent csets.
2017-10-20 00:30:53 -07:00
Ewan Mellor 5f28a5b313
Split Travis tests into three phases.
This gives a "smoke-test" phase which just runs the Java tests, to get a
quick check that compilation is working.  It is followed by the
"main-test" phase that tests each target on their preferred platform
(e.g. Swift on macOS, Python on Linux) followed by "test-extended"
which runs all the remaining tests (all the other Java variants, and
any other platforms supported by each target).

This means that those tests in the later phases won't run unless the
earlier phases have passed.  This should vastly improve our Travis
turnaround.

This changeset also changes the matrix so that we get some coverage across
all of openjdk7,8 and oraclejdk7,8 and moves the Go and Javascript tests
to Trusty just so that they are more up-to-date.  This adds one additional
Java test run, so now we compare oraclejdk8 and openjdk8 in case of
problems in that regard.

Note that the test matrix has not been extended to cover oraclejdk9.  This
currently fails for us with a build issue, so it is not included in this
changeset.

This changeset also removes the meaningless custom apt configuration in the
section for macOS .NET tests.
2017-10-13 20:14:10 -07:00
Ewan Mellor 7bd52e5518
Wrap the run-tests-$TARGET.sh with a travis_wait call.
This means that it will write a line to the log each minute while the
tests are running, up to the specified timeout.  This works around the
fact that one of Maven / Surefire / JUnit are buffering our test output
until a whole test class has run.

This is a problem in particular with the TestLeftRecursion tests because
they are taking over 9 minutes on their own.  After 10 minutes of silence
Travis assumes that a job is broken and kills it.  We've been hitting
that timeout regularly.
2017-10-13 20:14:08 -07:00
Ewan Mellor 242dbe095d
Add cache entries to .travis.yml.
This is recommended by the Travis docs to speed up the parts of the
tests where unpack / install has a significant cost, as opposed to the
download.

This changeset adds entries for ~/.m2 (for Maven) and
~/Library/Caches/Homebrew for (brew on macOS).
2017-10-13 20:13:24 -07:00
Terence Parr 7d2a0978b5 Merge branch 'master' into fix-unicode-2031 2017-10-12 09:38:16 -07:00
Eric Vergnaud 6d337f9cce seems jdk7 is no longer supported 2017-09-30 17:20:35 +08:00
Ewan Mellor d95fb2ec46
Replace oraclejdk7 with openjdk7 in .travis.yml.
Oracle JDK 7 support has been withdrawn.

https://github.com/travis-ci/travis-ci/issues/7964
http://www.webupd8.org/2017/06/why-oracle-java-7-and-6-installers-no.html
2017-09-28 15:48:25 -07:00
Eric Vergnaud c15aa4336a dotent also times out 2017-06-28 22:18:19 +08:00
Eric Vergnaud 936a396c81 clarify intent 2017-06-28 20:45:39 +08:00
Eric Vergnaud c5eb9cbeef Merge branch 'master' into fix-travis-timeouts 2017-06-28 20:41:32 +08:00
Eric Vergnaud b7538b6eb9 fix failing build 2017-06-27 23:09:36 +08:00
Eric Vergnaud 0e573fb0a5 categorise tests to fix Travis timeout 2017-06-27 00:50:49 +08:00
Dong Xie ceaf085dc5 [dotnet] for linux target, bring up to jdk8 since jdk7 no longer available for Trusty; for linux and osx targets, bring up dotnet from 1.0.3 to 1.0.4; Trusty image now has mvn 3.3.9 builtin, removed install code 2017-06-26 13:18:48 +01:00
Hanzhou Shi 77eddc8e76 fix linker issue on travis ubuntu 2017-06-03 22:57:21 -07:00
Hanzhou Shi 10a3ee3f49 adding travis configuration for swift under linux 2017-06-03 22:57:21 -07:00
Dong Xie da4987dc38 [dotnet] update to .netcore v1.0.1; add osx build 2017-04-04 15:26:40 +01:00
parrt e968fe271a Revert "clean up per travis weblint"
This reverts commit 49de9e8f95.
2017-02-20 11:59:22 -08:00
parrt 49de9e8f95 clean up per travis weblint 2017-02-20 11:27:37 -08:00
parrt 0c45ada655 fix formatting 2017-02-20 10:42:02 -08:00
parrt 7a0f4e716a try generic python 3.5 2017-02-20 10:36:36 -08:00
Dong Xie d3dd87db3e [dotnet] target: fix travis.yaml once again 2017-02-07 15:49:23 +00:00
Dong Xie 09d45f5d6e [csharp] update travis for dotnet 2017-01-25 00:24:36 +00:00
parrt 643dc2a005 move to script file 2016-11-27 14:06:19 -08:00
parrt 30c7c43712 add tool tests but only when testing java target 2016-11-27 13:35:35 -08:00
Eric Vergnaud bd7df071f9 start with the slow builds 2016-11-28 03:04:30 +08:00
Eric Vergnaud 069cf9354d divide and conquer 2016-11-28 02:50:30 +08:00
Eric Vergnaud 33401add2c divide and conquer 2016-11-28 02:47:48 +08:00
Eric Vergnaud 0cf3c2cf50 divide and conquer 2016-11-28 02:44:07 +08:00
Eric Vergnaud c3f9cb3cc7 divide and conquer 2016-11-28 02:22:18 +08:00
Eric Vergnaud 874fea8cc6 reverting to global add ons for now 2016-11-28 01:43:15 +08:00
Eric Vergnaud dd7dcf089d divide and conquer 2016-11-28 01:39:04 +08:00
Eric Vergnaud bebdeedada divide and conquer 2016-11-28 01:36:46 +08:00
Eric Vergnaud d1496ed76a divide and conquer 2016-11-28 01:19:30 +08:00
Eric Vergnaud 48d3a458b5 divide and conquer 2016-11-28 01:13:36 +08:00
Eric Vergnaud ab3bba906d divide and conquer 2016-11-28 01:07:30 +08:00
Eric Vergnaud 4f48d533fa divide and conquer 2016-11-28 00:56:14 +08:00
parrt 21324a02d2 fix travis 2016-11-22 10:55:19 -08:00
parrt 93c04a1933 fix travis 2016-11-22 10:55:19 -08:00
parrt 66be087c38 merge old and new travis; improve so it runs C++ on osx; update BaseSwiftTest so it mirrors other targets; remove unneeded dep in pom to some json stuff 2016-11-20 19:50:54 -08:00
Ewan Mellor 977daa6766 Disable the JDK 6 and 7 builds on this branch -- no point loading up
Travis.
2016-11-19 18:30:48 -08:00
Ewan Mellor 8bd4155878 Use Xcode 8 on the Travis macOS builds, because we need Swift 3. 2016-11-19 18:30:48 -08:00
Ewan Mellor 5ac3a79234 Explicitly lay out the matrix for Travis.
This means that we only have one run on macOS, using the default JDK.
Travis does not support JDK-switching on macOS.
2016-11-19 18:30:48 -08:00
Ewan Mellor 017f6586d7 Have both Linux and macOS tests on Travis.
The Swift tests will not work on Linux, because they depend on Xcode, so
we need a separate macOS run for them.
2016-11-19 18:30:48 -08:00
parrt ba4cf0677b run tests in parallel on travis 2016-11-17 10:21:40 -08:00
Terence Parr 253cd172a4 Merge pull request #1351 from DanMcLaughlin/master
Fixes to make the C++ target run on Travis
2016-11-15 02:22:41 +01:00