3)ビルド定義の作成
いよいよ本題です。
ビルド定義では、次の項目を設定します。
- 利用するビルド・エンジン
- ビルド対象となるストリーム
- ビルド用のリポジトリー・ワークスペース
- リポジトリー・ワークスペースと連動するローカルの作業領域
さきほど、ビルド・エンジンがJazzチームサーバーのクライアントであることは説明しました。皆さんがお使いになるRTCクライアントと同じです。ストリーム、リポジトリー・ワークスペース、ローカルの作業領域等々、すべて皆さんがRTCクライアントをお使いになるときに指定するものばかりです。ビルド定義だからといって構える必要はありません。
[チーム成果物]ビューでツール表示を展開後、[ビルド]を選択し右クリックすると図6のようになります。
ここで、[新規ビルド定義]を選択すると、新規ビルドを作成するチーム・エリアを確認するダイアログが現れた後で、図7のダイアログが表示されます。
ここで、[Ant - Jazzビルド・エンジン]を選択します。
ビルド対象を管理しているSCMのエンジンとして、[Jazzソース管理]を指定します。
いくつかダイアログでパラメータの設定を問われますが、今日のところは全部チェックして進めましょう。最終的には、図9のような[ビルド定義]のビューが現れます。
チームでは複数のビルド定義を持つことができます。このビューでは、どこのチームで定義されたビルドか、このビルドで使うビルド・エンジンが何か、このビルド定義の識別用のIDは何かが提示されています。
さて、もう少し設定すべきものがあります。ビルドスケジュール、ビルドで利用するリポジトリー・ワークスペース、ビルドで利用するANTのスクリプトファイルが必要です。それらを順に指定していきましょう。
[ビルド定義]ビューの下にタブが並んでいます。[スケジュール]を選択すると、図10が表示されます。
継続的統合では統合ビルドを繰り返すことでチームのリズムを作ります。そのスケジュールをこのビューで設定します。次に、[Jazzソース管理]タブをクリックしてください。
図11のビューに変わります。
[ビルド・ワークスペース]-[ワークスペース]と、[ロード・オプション]-[ロード・ディレクトリー]の欄は空白になっていると思います。前者はビルド・エンジンが利用するリポジトリー・ワークスペース、後者はそれと連携するビルド・マシン側のローカルの作業領域です。前者では対象となるリポジトリー・ワークスペースを選択(あるいは新規に作成)して、リソースの元となるストリームを関連づけていきます。このあたりのステップは、RTCクライアントで皆さんがリポジトリー・ワークスペースを作るときと同じ手順で進みます。
ただし、この手順の途中で、図12のダイアログが出てくることがあります。
ビルド定義作業自体は、ビルド用のライセンスを割り当てられていない人もできますが、それを利用した日々のビルド作業は、ビルドライセンスが必要となります。同様に作業領域の所有者を合わせておく必要があります。
そこで所有者が合っていないと、この警告が表示されます。
所有者を変更するために、[ワークスペースを開く]を選択し、ワークスペースの所有者を変更しておきましょう。
次にAntのビルドスクリプトを指定します。図13をご覧ください。
前述したJDTを利用して作成したAntのファイルの場所を指定します。ビルド定義では、関連づけられたリポジトリー・ワークスペース(この例であれば、「HelloJazzWorld チーム ビルド ワークスペース」)から、ビルド・エンジンが稼働する作業領域(「fetched」)へとリソース(Eclipseプロジェクト「HelloJazzWorld」)をロードしてビルド作業を行います。このため、ビルド・ファイルの場所の表現は図に見られるように「fetched/HelloJazzWorld/build.xml」となります。
ここまでで、チームで共有するビルド定義の作成が終わりました。
開発者の日々の作業では、ビルド・システムに対して、ビルド作業を「リクエストする」ことで統合ビルドが進みます。ビルド・システム側は、先に起動して、リクエストが来るのを待っている必要があります。