Ubuntu Xenial 16.04 as the default Travis CI build environment
Xenial as the default Travis CI build environment is coming up next week, starting incrementally on Tuesday April 23rd, 2019.
Since Ubuntu 14.04 reaches End of Life on April 30th, 2019, we’ll be gradually setting the default distribution for builds to Linux, Ubuntu Xenial 16.04.
We plan to make
dist: xenial the default for all builds by the beginning of May 2019, and we’ll make sure to let you all know here and in our changelog as soon as the default build environment switch is done.
What does this mean for your projects?
Repositories without an explicit
dist: YAML key in their
.travis.yml file will be routed to Xenial instead of Trusty.
Repositories without an explicit operating system
os: key in their
travis.yml file will use Linux Ubuntu Xenial 16.04.
There are three important changes to take into account when updating to Xenial from our Trusty build environment:
1. Services support
Services like MySQL or PostgreSQL are not started by default. To start any service, such as MySQL, add it to the services key in your config:
services: - mysql
2. Third-part APT sources
Sources from third-party APT repositories have been removed. During the Xenial image provision, third-party APT repositories are used to pre-install services like
redis-server. These packages are available during build time, but to reduce the risk of sporadic
apt-get update failures, the repositories are removed after the packages are installed.
For example, to update the
git-lfs version, you’d need to explicitly specify the source in your config:
You can find the full list of sources and packages that have been used and to install and then removed here: https://docs.travis-ci.com/user/reference/xenial#third-party-apt-repositories-removed
addons: apt: sources: - github-git-lfs-xenial packages: - git-lfs
3. Headless browser testing
To use headless browser testing, you now start
xvfb via the services key, like this:
services: - xvfb
If you had configured
xvfb manually in your trusty builds, please replace it with the services key above, which is also easier to maintain!
The default build environment will gradually start changing on April, 23rd 2019. You can identify if your repository is now running on Xenial by checking your build log, under Operating System Details like:
You can find the specific versions of what’s pre-installed in the Xenial Reference docs.
Get a head start! Checkout a new branch, specify
dist: xenial to see how it will work out for your repository. And if there’s anything you’d like to see improved, please let us know in the Community Forum: Xenial.
And if your build depends on Ubuntu Trusty 14.04, you can explicitly specify
dist: trusty to avoid your build being automatically routed to Xenial during this default build environment update.
Ah! In case you’d like one more reason to update, Ubuntu Xenial 16.04 on Travis CI, comes with Git Wire Protocol, Version 2 !