AntHillの使い方
機能:
- 自動的にCVSからコードを取得してビルドしてくれる(※CVS以外のバージョン管理ツールにも対応しているようですが試してません)
- ビルドはスケジュール化して定期的に実行できる
- スケジュールがあっても、更新されていないときにはビルドしないでくれる
- antスクリプトを実行してくれるので、antのJUnitタスク等を仕込んでおけば自動実行してくれる
- antのcopyタスク等を仕込んでおけばデプロイも可能
- antスクリプトをbuildとpublishの2回に分けて実行できるので、ビルドまでOKか、デプロイ&テストまでOKか、を判別できる
- ビルドするたびにCVSにタグを付けてくれる
- ビルドするたびに前回からの差分リストをcommit時に入力したコメントも含めてログに出力してくれる
- ビルドするたび(またはビルドに失敗、publishに失敗するたび)に指定のアドレス(複数可)宛てにメールを送ってくれる
- 設定、ログの参照などがweb経由で可能
事前準備:
(CVSサーバがローカルになくてもよく、単にcvsコマンドが実行できる環境があればOKです。Windowsの場合はWinCVSをインストールしてパスを通しておくのが楽。)
(コマンドプロンプトからcvs -d :pserver:.... loginを実行。Linux上でもWindows上でもユーザのホームディレクトリ上に.cvspassファイルができます)
AntHillのインストール:
- http://www.urbancode.com/からダウンロード
- 解凍して、中身をどこかのディレクトリに配置
例)
Linuxの場合:/usr/local/anthill
Windowsの場合:C:\AntHill
- 中身のanthill.warをTomcatのwebappsディレクトリにコピーする
AntHillの初期設定:
- ブラウザで「http://tomcatのサーバ名:ポート番号/anthill/」を開く
- AntHillのインストール先を訊いてくるので、例えば/usr/local/anthillを答える
- 「Anthill Properties」のリンクをクリック
- 「Anthill Properties」で以下を設定します。
- anthill.home : AntHillのインストール先(ex./usr/local/anthill)
- anthill.ant.home : もともと「lib/ant1.5.1」となっているが、違うバージョン(例えば1.6.1)のantを使う場合はanthill/libの下に「ant1.6.1」というディレクトリを作って、ant/libの中身をコピーし、ここに「lib/ant1.6.1」と指定する
- anthill.mail.host : AntHillがメールを送る際に使用するメールサーバ
- anthill.mail.from : AntHillがメールを送る際に使用する差出人アドレス
- anthill.server : http://tomcatのサーバ名:ポート番号/anthill/
あとはデフォルトのままでも大丈夫です。
- 外部ネットワークのCVSに接続できる環境なら、サンプルのプロジェクトをBuildしてみる。接続できない環境では無理なので次へ。
プロジェクトの設定:
AntHillの設定が終わったらプロジェクトを作成します。
- Anthill Build Management Server画面で「Create New Project」をクリック
- anthill.project.name : プロジェクト名
- anthill.build.script : build.xmlなど、antのビルドファイル
- anthill.build.ant.params : デフォルト以外のターゲット名など、antへの引数を指定
- anthill.java.extra.options : -Xmx128mなどのant実行時のJavaオプションを指定。AntHillのbuild.logでOutOfMemoryが出る場合などはここでの設定が必要です。
ここまで書いて、一旦Updateボタンを押します。
次にプロジェクト一覧から作成したプロジェクトのEditを選択します。
- anthill.version.adapterの「Configure com.urbancode.anthill.adapter.UrbanCodeVersionAdapter」リンクを押します。
- com.urbancode.anthill.adapter.UrbanCodeVersionAdapter Properties画面が出るので、version.fileにバージョン管理用ファイル名(例:anthill.version)を入力してUpdateボタンを押します。
- anthill.repository.adapterの「Configure com.urbancode.anthill.adapter.CVSRepositoryAdapter 」リンクを押します。
- com.urbancode.anthill.adapter.CVSRepositoryAdapter Properties画面でCVSの設定をします。
Updateボタンを押し、プロジェクトのProperties画面でもUpdateボタンを押します。
バージョン管理用ファイルの作成
AntHillではビルド毎にバージョン番号をインクリメントしていきますが、これを管理するためのテキストファイルがCVS上に必要です。
- version.fileの項で設定したバージョン管理用ファイル名でテキストファイルを作ります。内容は以下のような感じです。
0.0.0
数字がいくつか並んでいますが、AntHillは一番最後の数値をインクリメントしていきます。他の数値はバージョン番号を指定したりする場合に使用します。
例えば、バージョン0.0.x系列で開発を進めていって、リリースを機に1.0.x系列に切り替えるとか。ここの数字を使って「v_0_0_x」という感じでビルドするたびCVS上にタグを付けてくれますし。
このファイルをモジュールの直下のディレクトリに置き、CVSにアップします。
AntHillでのビルド
- プロジェクトの「Build」リンクをクリックし、Force Buildの欄にチェックをつけてBuildボタンを押します。(「Force Build」をチェックするとすぐにビルドを実行しますが、付けない場合にはスケジュールに従ってビルドします。)
- しばらく待ってから結果を確認します。/anthill/projects/プロジェクト名/buildLogs/の下に各種ログが生成されます。
- プロジェクト名-バージョン番号-rev.log : 前のビルドから今回のビルドまでの間にCVS上で更新されたファイルの一覧。更新がなければ0バイトのファイル
- プロジェクト名-バージョン番号-build.log : ビルドのログ