Phing Pluginにおけるbuild.xmlの指定方法について

Hudsonで重複コードを視覚化する|なげっぱなし日誌 で書かれているPhingのbuild.xmlの指定方法について簡単に書いておきます。

プロジェクトの設定でソースコード管理システムのローカルモジュールに"phpsample"を設定しているとします。


このような場合に、build.xmlはつぎのようにphpsampleの直下(いわゆるモジュールルート)に配置すると、Phingの設定のビルドファイルに何も設定する必要はありません。


つまり、trunkの下にbuild.xmlを作成しておけばいいのです。ファイル名を変えたい場合は、ビルドファイル名にそのファイル名を設定します。

ワークスペースの直下にbuild.xmlを配置したい場合は、ビルドファイルに絶対パスで設定する必要があります。正直に言うと、これはバグです。昔、HudsonのAPIが変更になったときの修正が間違ってましたので、近いうちに修正します。イメージはこんな感じです。

  1. ビルドファイルが未設定の場合は、モジュールルートのbuild.xmlを使用する。
  2. ビルドファイルに絶対パスが設定されていれば、そのファイルを使用する。
  3. ビルドファイルが絶対パスでなくて、モジュールルートにそのファイルがあれば、そのファイルを使用する。
  4. ビルドファイルが絶対パスでなくて、モジュールルートにそのファイルがなければ、ワークスペースを探す。