Play framework 2.3 (Scala版)で開発しているアプリをTravis ProでCIしていたのだけど、ビルド時間がネックになってきたのでインスタンス性能が高いと噂のCircleCIに移行することにした。
CircleCIの対応言語の中にScalaは入っていないが、Javaが使えるので特に問題はない(何故かちょっと古いsbtが入っていたのでexperimental扱いなのかな?)
circle.ymlは下記のようにしてる。
dependencies:
cache_directories:
- ~/.m2
- ~/.ivy2
- ~/.sbt
override:
- "./activator update"
database:
override:
- cp ./conf/test.conf.circleci ./conf/test.conf
test:
override:
- "./activator clean test"
deployment:
development:
branch: master
commands:
- pip install -r requirements.txt
- fab dev deploy
Travis ProからCircleCIに移行して、CIにかかる時間が4分の1に短縮されて満足度高い。