連載:Team Foundation Server 2010入門

第4回 Team Foundation Server 2010の自動ビルドを使ってみよう

WINGSプロジェクト りばてぃ(監修:山田 祥寛)
2010/10/26
Page1 Page2 Page3

自動ビルドの利用

 準備が整ったところで、さっそくTFSでの(自動ビルドのための)ビルド定義の作成と実行、その結果の確認までを行ってみることにしよう。まずは単体テストのことは考えず、基本的な部分から実施していくことにする。

自動ビルドのビルド定義の作成

 まずは、Visual Studio 2010の[チーム エクスプローラー]から、ソース管理を実践中のチーム・プロジェクトに接続しよう。チーム・プロジェクトへの接続方法は、「第2回 Team Foundation Server 2010によるソース管理の基本」をご確認いただきたい。

 自動ビルドのためのビルド定義作成を開始するには、[チーム エクスプローラー]に表示されたチーム・プロジェクト項目配下の[ビルド]項目の右クリック・メニューから、図6のように[ビルド定義の新規作成]を選択しよう。

図6 ビルド定義の新規作成

 すると通常は、コード・エディタが表示される部分にビルド定義の設定エディタが表示される。いくつかポイントがあるので順に押さえておくことにしよう。

 まず、図7に示す(左ペインのリスト表示にある)[全般]の設定では、[ビルド定義名]を設定する。[チーム エクスプローラー]に表示される際に利用される名前なので、用途や設定内容が分かりやすくなるように定義しよう。

図7 ビルド定義の全般設定

 次は[トリガー]の設定だ。

 この設定はTFSにおけるビルド定義の設定の中では最重要ポイントだ。図8にあるように5種類のトリガーを選択することができ、この設定に応じてビルド定義の役割が微妙に異なってくる。今回は、テスト的に[手動]のトリガーを選択しておくことにする。

図8 ビルド定義のトリガー設定

 トリガーについては後ほど(本ページの最後で)補足することにして、次に[ワークスペース]の設定を確認しよう。

 [ワークスペース]の設定は、ビルドを行うときに取得するファイルがある場所を、図9のようにソース管理上のフォルダから選択する。特定のフォルダのみにしたり、別のチーム・プロジェクトにあるフォルダを選択したりといったことが可能なので、都合のいいように調整する。使い始めの段階では取りあえずそのままでもいいだろう。

図9 ビルド定義のワークスペース設定

 次は[ビルドの既定値]の設定だ。

 ここでは図10のように[ビルド出力を次の格納フォルダーにコピーします]という部分のテキストボックスに、ビルド結果を格納するフォルダを指定する。ビルドを行う端末内のフォルダであってもUNCパスで記述する必要がある。従って、ビルド格納場所はネットワーク共有されている必要があり、ビルドを行うアカウントでの書き込み権限も必要となるので注意が必要だ。

 [ビルド コントローラー]の設定は既定値のままでよい。ビルド・コントローラは、ビルドの実行命令(ユーザー操作やチェックインのイベントなどすべてを含む)を受け取ってビルドを処理するサービスで、既定では1つだけが用意されている。

図10 ビルド定義のビルドの既定値設定

 次は[プロセス]の設定だ。

 ここでは、ビルドの手順(=ビルド・プロセス)がどのように行われるかを決めることができる。([ビルド プロセス テンプレート]が)「既定テンプレート」のままでも膨大な手順が実行される。その手順をカスタマイズすることも可能だが、それなりの知識を要求されることになるため、初めのうちはあまり気にしなくても構わない。

 また、図11のようにいくつかのビルド・プロセス・パラメータを設定することもできるが、こちらもまずは初期値のままにしておこう。

図11 ビルド定義のプロセス設定

 最後に[アイテム保持ポリシー]の設定だ。

 これはビルド結果の履歴をどのように保存するかを決めている。図12にあるようにビルド結果の種類ごとに決められるため、成功したものの履歴は多く保存し、失敗したものは少なくするといったところを状況に応じて決めていくことになる。ちなみに、[プライベート]というカテゴリは自身のシェルブセットを含む内容をビルドした場合に適用され、それ以外の場合は[トリガー済みおよび手動]のカテゴリが適用されることになる。

図12 ビルド定義のアイテム保持ポリシー設定

 以上で、ビルド定義の設定は終了だ。

 一連の設定が完了したら、[Ctrl]+[S]キーなどで保存を行うと、([チーム エクスプローラー]において)図13のように、図6で選択したチーム・プロジェクト内に新しいビルド定義が表示される。

図13 作成したビルド定義

 なお、ビルド定義を編集したい場合には、そのビルド定義の右クリック・メニューから[ビルド定義の編集]を選択する。これにより、先ほど説明した図7〜図12のような一連の設定画面が表示される。

 これでビルドを実行する準備が整ったが、最後にトリガーを手動以外にした場合にどのようになるかを表1で補足しておくことにする。利用者からの明示的な指示なしにビルドを実行させる場合には状況に応じてトリガーを設定する必要があるため、表1を参考に設定してみていただきたい。

トリガー名 概要と利用方法
手動 TFSのビルド機能を利用して手動でビルドを行う。利用者が明示的に実行を指示することでビルドを実行できる。そのほかのトリガーを使っている場合は補足的な利用になるケースが多い
継続的インテグレーション ソース・コードがチェックインされると自動的にビルドを行う。利用者はチェックインを行う以外に操作を行う必要はない
ビルドのロール 基本的には継続的インテグレーションと同様だが、一定間隔ごとにビルドを行う。利用者はチェックインを行う以外に操作を行う必要はない。ビルド時間が長かったり、サーバ負荷が高すぎたりする場合に利用することが多い
ゲート チェックイン チェックインされると自動的にビルドを行うが、継続的インテグレーションはチェックイン後、こちらはチェックイン前にビルドを行う。利用者はチェックインを行う以外に操作を行う必要はない。継続的インテグレーションよりもチェックインに対する制約を厳しくしたい場合に利用する
スケジュール 指定された時間になると自動的にビルドを行う。利用者の操作は必要ない。毎日朝3時など定期的なビルドを行いたい場合に利用する
表1 トリガー一覧

 次は、作成したビルドを実行してみよう。


 INDEX
  [連載]Team Fourndaiton Server 2010入門
  第4回 Team Foundation Server 2010の自動ビルドを使ってみよう
    1.自動ビルド利用前の準備
  2.自動ビルドのためのビルド定義の作成
    3.自動ビルドの実行/実行結果の確認/ビルドの使い分け

インデックス・ページヘ  「連載:Team Foundation Server 2010入門」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間