You can use swiftenv to both install Swift, and to manage multiple versions of Swift on Travis CI.
Using the following
install phase, you can install both swiftenv and the
Swift version found in the
.swift-version file or the
install: - eval "$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/9f442512a46d7a2af7b850d65a7e9bd31edfb09b/swiftenv-install.sh)"
For macOS support on Travis, you will want to enable the
newer image which contains a version of macOS and Xcode required for Swift.
The default Linux image on Travis CI doesn’t have a version of Clang that
is required to use Swift. You can switch to the new Travis
trusty build environment
which contains Clang 3.5 using the following:
language: generic sudo: required dist: trusty
swiftenv can be used on both macOS and Linux, you can use Travis
multiple operating system
support by adding both platforms to the
os: - linux - osx
You can mix this together with the above steps required for macOS and
Linux to have a complete
.travis.yml file as follows:
os: - linux - osx language: generic sudo: required dist: trusty osx_image: xcode7.2 install: - eval "$(curl -sL https://gist.githubusercontent.com/kylef/5c0475ff02b7c7671d2a/raw/9f442512a46d7a2af7b850d65a7e9bd31edfb09b/swiftenv-install.sh)" script: - swift build
Testing against multiple Swift versions¶
You can use build matrix on Travis CI to set the
variable to different values. Travis will now run against multiple
versions of Swift.
env: - SWIFT_VERSION=2.2-SNAPSHOT-2016-01-06-a - SWIFT_VERSION=DEVELOPMENT-SNAPSHOT-2016-02-08-a