アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

継続インテグレーションコマンド

komagataです。

“プログラムプレゼンテーション”で継続的インテグレーションコマンドを作って発表しました。

saimaa - 今すぐ始められる継続的インテグレーション - p0t

継続的インテグレーションについては、CIサーバー(Continuous Integration Server)というやつが沢山あって非常に機能も豊富です。僕の仕事には少々大げさな気がしたのと、

「cronでsvn up && rakeじゃ駄目なのかしら?」

などと思ったのでそれをちょっとだけサポートするコマンドを作ってみました。

komagata’s saimaa at master – GitHub

アクトインディではcapistranoのデプロイコマンドにrspecとcucumberのフックが掛けてあるのでテストが通らなければデプロイはできません。ですが、コミットはできるのでテスト通らないコードがコミットされるとすぐにこの仕組みでメールが飛んでくるのでなかなか便利です。

これを作って感じたのは、rubygemsgithubクロスプラットフォームCUIプログラム(コマンド)を作る環境として素晴らしいなということです。(全開と似たようなこと言ってますが)

rubygemsはインストールするとPATHが通ってるところに実行できる場所にコマンドをコピーしてくれるんですよね。jewelerでgithubへのアップも簡単です。