368a2f4cee
- Move the ObjC tests into the list and exclude them on linux, this will change where in the order they start, since they are longer, it will have other things run in parallel instead of them ending up last and taking the longest. - Switch to the Xcode 7.3 image. - Drop the use of xctool and stream line things through the full_mac_build.sh script. This means we end up with only one build script instead of two. - Tweaks to the mac build script: - Make iOS Xcode version support explicit - Support Debug/Release only building - Change the OS X min parallel count to 2 to better deal with VMs. - Split the travis ios tests into the two Xcode Configurations as the logs are choking travis.
88 lines
2.5 KiB
YAML
88 lines
2.5 KiB
YAML
sudo: required
|
|
# Note: travis currently does not support listing more than one language so
|
|
# this cheats and claims to only be cpp. If they add multiple language
|
|
# support, this should probably get updated to install steps and/or
|
|
# rvm/gemfile/jdk/etc. entries rather than manually doing the work.
|
|
language: cpp
|
|
os:
|
|
- linux
|
|
- osx
|
|
# The Objective C build needs Xcode 7.0 or later.
|
|
osx_image: xcode7.3
|
|
script:
|
|
- ./tests.sh $CONFIG
|
|
env:
|
|
- CONFIG=cpp
|
|
- CONFIG=cpp_distcheck
|
|
- CONFIG=csharp
|
|
- CONFIG=golang
|
|
- CONFIG=java_jdk6
|
|
- CONFIG=java_jdk7
|
|
- CONFIG=java_oracle7
|
|
- CONFIG=javanano_jdk6
|
|
- CONFIG=javanano_jdk7
|
|
- CONFIG=javanano_oracle7
|
|
- CONFIG=javascript
|
|
# iOS build log was starting to choke travis UI, so split to cover the
|
|
# Xcode Debug and Release Configurations independently.
|
|
- CONFIG=objectivec_ios_debug
|
|
- CONFIG=objectivec_ios_release
|
|
- CONFIG=objectivec_osx
|
|
- CONFIG=python
|
|
- CONFIG=python_cpp
|
|
- CONFIG=ruby19
|
|
- CONFIG=ruby20
|
|
- CONFIG=ruby21
|
|
- CONFIG=ruby22
|
|
- CONFIG=jruby
|
|
matrix:
|
|
exclude:
|
|
# It's nontrivial to programmatically install a new JDK from the command
|
|
# line on OS X, so we rely on testing on Linux for Java code.
|
|
- os: osx
|
|
env: CONFIG=java_jdk6
|
|
- os: osx
|
|
env: CONFIG=java_jdk7
|
|
- os: osx
|
|
env: CONFIG=java_oracle7
|
|
- os: osx
|
|
env: CONFIG=javanano_jdk6
|
|
- os: osx
|
|
env: CONFIG=javanano_jdk7
|
|
- os: osx
|
|
env: CONFIG=javanano_oracle7
|
|
# Requires installing mono, currently travis.sh is doing that with apt-get
|
|
# which doesn't work on OS X.
|
|
- os: osx
|
|
env: CONFIG=csharp
|
|
# Requires installing golang, currently travis.sh is doing that with apt-get
|
|
# which doesn't work on OS X.
|
|
- os: osx
|
|
env: CONFIG=golang
|
|
# OS X/iOS tests of Objective C (needs Xcode, so it won't work on other
|
|
# platforms).
|
|
- os: linux
|
|
env: CONFIG=objectivec_ios_debug
|
|
- os: linux
|
|
env: CONFIG=objectivec_ios_release
|
|
- os: linux
|
|
env: CONFIG=objectivec_osx
|
|
allow_failures:
|
|
# These currently do not work on OS X but are being worked on by @haberman.
|
|
- os: osx
|
|
env: CONFIG=ruby22
|
|
- os: osx
|
|
env: CONFIG=jruby
|
|
# https://github.com/google/protobuf/issues/1253 - Started failing when
|
|
# we moved to an OS X image that is 10.11.
|
|
- os: osx
|
|
env: CONFIG=python_cpp
|
|
# Mark the iOS test as flakey as xcodebuild some times fails to start the
|
|
# iOS Simulator.
|
|
- os: osx
|
|
env: CONFIG=objectivec_ios_debug
|
|
- os: osx
|
|
env: CONFIG=objectivec_ios_release
|
|
notifications:
|
|
email: false
|