Building on IBM Power and IBM Z CPU architectures

You can now test your open source software on even more target CPU architectures.

Travis CI can now run your Linux builds on IBM Power and IBM Z CPU architectures on top of already available amd64 and arm64 (ARMv8).

To enable testing on IBM CPU architectures, just add the arch: key to your .travis.yml:

arch:
  - ppc64le # IBM Power
  - s390x   # IBM Z
os: linux   # different CPU architectures are only supported on Linux

You can learn more in our announcement and in our docs.

Share and import yaml snippets to your build configuration

The new beta feature Build Config Imports allows you to import shared YAML build config parts to your .travis.yml file or config included in API build requests.

Build Config Imports let you save time by defining reusable configuration snippets so that you can fetch commonly used recipes with a single import line, share secrets, and standardize your build and deploy configuration across repositories.

Read all about this feature in our announcement blog post.

For feedback, questions and discussion, we would love to see you in the [Travis CI community forum]()https://travis-ci.community/c/product.

More secure handling of `secure` values in configuration

We improved our handling of secure values in the user configurations in order to prevent accidental exposure of sensitive data.

This change means that, if the secure value was not encrypted, decryption now fails, and the data are now undefined. For example,

deploy:
  provider: s3
  access_key_id: AK1234567890ABCDEFGH
  secret_access_key:
    secure: $AWS_SECRET_KEY
  ⋮

will now fail because secret_access_key is now undefined and the deployment utility will not get the correct value.

If the value is not encrypted, ensure that it is not wrapped in secure.

The example above should now read:

deploy:
  provider: s3
  access_key_id: AK1234567890ABCDEFGH
  secret_access_key: $AWS_SECRET_KEY
  ⋮

Build Config Validation now in beta

The Build Config Validation feature is now in beta, and available for you to activate.

When active, the build config validation feature will validate and normalize any incoming build config sources, your .travis.yml file and configs from build requests created via API.

You can enable this feature using the repository setting “Build config validation” in the Travis CI UI, or by specifying the version in your .travis.yml file:

version: ~> 1.0

Read more about this feature on our blog.

You can find the new build config reference documentation here.

For questions and discussion, we would love to see you in the Travis CI community forum. If you see any missing functionality or find bugs please open an issue.

Xenial and cache support added for ARM builds

Additionally to Ubuntu Bionic 18.04, Ubuntu Xenial 16.04 is now available to run ARM builds. Ubuntu Xenial 16.04 is now the default image (if you don't specify a dist:' in your .travis.yml Xenial will start automatically.)

Other changes:

  • Added ruby language for Xenial and Bionic distributions,
  • Added C lang for Xenial
  • Added minimal images for Xenial and Bionic
  • Increased disk size for LXD containers on ARM architecture to approx. 18GB
  • added support for cache and workspace for builds run within LXD containers on ARM infrastructure

To enable testing on multiple CPU architectures, just add the arch: key to your .travis.yml:

arch:
  - amd64
  - arm64
os: linux  # different CPU architectures are only supported on Linux

You can learn more in the multi-CPU architecture support announcement and in the multi-CPU architectures docs.

Cache archives are now created in posix format

The cache archives are now created in posix format (GNU tar doc) to reduce unnecessary archive updates for SBT. (See https://travis-ci.community/t/change-tar-format-to-posix/5467 for more details.)

Ubuntu Bionic improvements for ARM+LXD builds

We have updated the Bionic 18.04 OS image to run within LXD containers on ARM infrastructure.

Changes:

  • fixed link to llvm-symbolizer-6.0
  • running docker commands without sudo
  • added g++ and gcc packages (the previous version had only g++-7 and gcc-7)

To enable testing on multiple CPU architectures, just add the arch: key to your .travis.yml:

arch:
  - amd64
  - arm64
os: linux  # different CPU architectures are only supported on Linux

You can learn more in the multi CPU architecture support announcement and in multi CPU architectures docs.

Xcode 11.1 and Xcode 11.2 beta

Xcode 11.1 (11A1027) and Xcode 11.2 beta (11B41) are now available on Travis CI.

To run your builds on the Xcode 11.2 beta environment, add the following to your .travis.yml file:

osx_image: xcode11.2

For more details on what Xcode 11.12 includes, please check: https://docs.travis-ci.com/user/reference/osx#xcode-112

To test and deploy your code on the Xcode 11.1 image, add

osx_image: xcode11.1

to your .travis.yml file.

You can check out which tools and packages come with Xcode 11.1 here: https://docs.travis-ci.com/user/reference/osx#xcode-111

If there are any improvements you'd like to see in the macOS build environment, please create a post on our forum.

Building on Multiple CPU Architectures

You can now test your open source software on multiple CPU architectures.

Travis CI can now run your Linux builds on amd64 and arm64 (i.e. ARMv8 compliant CPUs) CPU architectures.

To enable testing on multiple CPU architectures, just add the arch: key to your .travis.yml:

arch:
  - amd64
  - arm64
os: linux  # different CPU architectures are only supported on Linux

You can learn more in our announcement and in our docs.

dpl 1.10.13 is released

We have released version 1.10.13 of our deployment utility, dpl.

This release:

  1. Preserves = in environment variables for AMS Lambda deployment.
  2. Cleans up after failed git clone for GH pages deployment.
  3. Fixes GH Pages and Releases deployment. travis-ic/dpl#1108