Sooey

2011-02-15 13:07:30 +0900

GitHubのdefunktが作ったCIサーバ cijoeは、とても簡単に使えるので小さなプロジェクトではおすすめ(Jenkinsのような充実機能はありません)。

ためしに、巷で話題のamatsuda/kaminariのテストをcijoeで実行してみましょう。

まずはcijoeをインストール。

$ gem install cijoe

手元のSnowLeopard + Ruby 1.9.2だとkaminariのbundle install中にlinecacheのインストールでコケてしまうので、1.8.7を使います。

$ ruby -v
ruby 1.8.7 (2010-12-23 patchlevel 330) [i686-darwin10.5.0]

まず、ビルド対象のリポジトリをローカルに持ってきて、rake specが成功するところまで確認します。

$ git clone https://github.com/amatsuda/kaminari.git
$ cd kaminari
$ bundle install --path vendor/bundle
$ rake spec
...
95 examples, 0 failures

無事にテストが成功したので、cijoeでのビルド時に実行するコマンドをgit configで設定します。

$ git config --add cijoe.runner "rake -s spec"

cijoeコマンドの引数にワーキングコピーのパスを指定して起動します。

$ cijoe .
$ open http://localhost:4567/

ブラウザでhttp://localhost:4567/にアクセスすると、以下のようなページが表示されます。Octocat!

Continuous Integration with CI Joe | Flickr - Photo Sharing!

Buildボタンを押すとHEADが指すコミットに対してビルドが実行されます。適当に待ってからページをリロードしましょう。

Continuous Integration with CI Joe (Success!) | Flickr - Photo Sharing!

workedと表示され、無事にテストが成功しました。素晴らしいシンプルさ!

masterブランチ以外を対象にビルドしたい場合は以下のようにcijoe.branchを設定しておきます。

$ git config --add cijoe.branch deploy

他にもいくつか設定ができるので、README.mdをよく読んでお使いください。