Docs Navigation

Scala Continuous Integration

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.

sbt ++$SEMAPHORE_SCALA_VERSION test

You can easily change or add more build commands, customize your build environment with custom 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.2

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

Newsletter

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

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