Pluginのテストを自動化するには(その6-1:どこまで自動化したいのか確認)
まだちょっとだけしかできません。へたれです。とりあえず今回の自動化で目標とするものについて触れておきます。これを見てみるとEquinox上で動くCIツールを作りたくなるなぁ。
最低限のレベル
- SCM(今回はSubversion)から落とすことができる
- 起動するとビルドができている
- 起動するとテストができている
- テスト結果がHTMLで出力できている
- ビルドが終わったら何らかの形で通知されている
目標レベル
- どこにもっていってもこのプロジェクトをダウンロードすればビルドできる
- ビルド結果が更新サイトへ自動でアップロードされている
妄想レベル
- ビルドプロジェクト自身を起動するとCIサーバーになる
- テスト結果などを見ることができる
- ビルド履歴がRSSで見られる
- HTTPハンドラがあって、それを呼ぶとビルドができる。
- SCMを監視して更新してたらビルドする(素直にCCとかContinusとかHudson使え)
妄想レベルまで達成できたら立派にEclipseFoundationにプロジェクトとして申請できるのではないかという気がする。そういうプロジェクト見かけたし。進んでるかどうかは定かじゃぁない。
今回はEclipse3.3.1のbasebuilderを落としてきました。同梱されているAntは1.7.0なので、ほとんどの作業はAnt任せにできます。OSGiアプリケーションのビルドに必須なタスクはPDEのプラグインプロジェクトとして既に導入されてるし、もしこれ以外にないタスクとかは拡張ポイントを定義したプラグインプロジェクトをbasebuilder/plugins/以下に突っ込めばもちろん動かせます。Subversion対応としてpde-svn-pluginをbasebuilderへ入れれば対応できるのはそのためです。