Edited at

Stackで管理しているHaskellのプロジェクトをCircleCIでビルドする

More than 3 years have passed since last update.

最近話題のHaskellのビルドツールstackをCircleCIでビルドする方法の一例を紹介します。

下記のようにcircle.ymlを書けばOKです。

dependencies:

cache_directories:
- "~/.stack"
pre:
- wget -q -O- https://s3.amazonaws.com/download.fpcomplete.com/ubuntu/fpco.key | sudo apt-key add -
- echo 'deb http://download.fpcomplete.com/ubuntu/precise stable main'|sudo tee /etc/apt/sources.list.d/fpco.list
- sudo apt-get update && sudo apt-get install stack -y
override:
- stack setup
- stack build
- stack build --test --only-dependencies

test:
override:
- stack test

overrideでテストに必要なライブラリをビルドしておくと、それもキャッシュされるので以降のビルドが早いです。

こちらを参考にしました。

https://gist.github.com/dbp/bef96402ea07001dfed2

上記の設定はhs-git-gsubというリポジトリで実際に使っています。正確に言うと728329b時点の設定を一部改変したもので、ビルド結果はこちらです。

stackについては下記リンクをご参照ください。