前回の(1)はこちらから。
PerlアプリケーションのCI
前回の(1)までで、Perlアプリケーションのテストとその実行に関して基本的な内容を紹介しました。アプリケーション開発にあたっては多くのテストが書かれると思いますが、都度すべてのテストを実行するのは手間がかかりますし忘れてしまうこともあるでしょう。同じことを繰り返すのであればCI環境を作り、テストを自動的/継続的に実行するのが確実です。
Ukigumo::Serverによるテスト実行結果の可視化
Ukigumoはtokuhiromさんが作ったCIを支援するWebアプリケーションです。Ukigumo::Serverはテスト実行結果をPOSTすることで、一覧化してWebブラウザから見ることができるアプリケーションです。
Ukigumo::Serverの導入はcpanmで簡単に行えます。導入と起動は次のように行います。
Ukigumo::Serverのインタフェースはとてもシンプルで、テストの実行結果を次のような形でPOSTするだけで、テスト結果をWebページにまとめてくれます(図1)。
この形式にのっとってPOSTできれば、どのようなクライアントや言語のプロジェクトでもCIを回すことができます。
Ukigumo::Clientによるテスト実行と結果通知
Ukigumo::Clientは専用のコマンドラインツールを備えており、
- Gitリポジトリの更新
- proveコマンドの実行
- 結果の通知
などを実行し、Ukigumo::ServerのAPIを利用する際の定形処理をフォローしてくれます。
Ukigumo::Clientの導入はcpanmで簡単に行えます。
ukigumo-client.pl
というコマンドがインストールされるので、次のようにコマンドを実行することで、チェックアウトからUkigumo::ServerへのPOSTまで実行してくれます。
このコマンドをGitのhookとして登録しておくことで、push
された時点で自動的に実行できます。
これと併せてIkachanを導入するとIRC(InternetRelay Chat)通知まで含めて行ってくれるので、IRCを利用している環境の人はより便利に使えるでしょう。
<続きの(3)はこちらです。>