Classic Docs
Docs Navigation

Scala Continuous Integration

This document contains information related to projects based on the Ubuntu 14.04 image. If you are using the Ubuntu 18.04 image for your projects, please refer to this page.

If you are using the Ubuntu 14.04 image and you want to switch to Ubuntu 18.04, be sure to check our upgrade guide.

Semaphore makes it easy to set up continuous integration for Scala projects. Both Java and Scala runtimes are preinstalled in the build environment. When you create a project with a Scala repository, Semaphore will analyze it and suggest to run the tests with the current Scala version and sbt.

After the analysis determines that the project is written in Scala, the following command will be suggested.


You can easily change or add more build commands, customize your build environment with configuration files, environment variables and more (see the 'Customizing your build' section for more information).

# CI environment for Scala projects

The Semaphore platform supports the following Scala versions:

  • 2.11.11
  • 2.12.6

Manually switching between Scala versions can be done with the change-scala-version <version> command. Supported versions in the utility are 2.11 and 2.12. The current version of Scala is also avaliable through the SEMAPHORE_SCALA_VERSION environment variable.

sbt version 0.13.15 is pre-installed.

# Dependency management

Cached resolution is available in sbt as an experimental feature starting from version 0.13.7. If you use this feature, the contents of ~/.sbt/0.13/dependency/ is cached between builds on Semaphore.

Apache Ivy dependencies are also cached, which significantly reduces the build time.

# Guides

Semaphore Docs are open source — Edit on GitHub


Occasional lightweight product and blog updates. Unsubscribe at any time.

2009-2020 © Rendered Text. All rights reserved. Terms of Service, Privacy policy, Security.