Team Foundation Serviceのビルド環境をローカルに構築する

Azure上でTFSの機能が使えるTeam Foundation Service(長いのでここではTFServiceとさせてください^ ^;)は、現在Preview版で誰でも使えます。(Microsoftアカウントが必要になります。)
チームプロジェクトを作成し、ローカルで作成したソリューションを登録すればビルドもAzure上でできるのでほんとにお手軽なのですが、個別のライブラリ(市販のパーツなど)を使用したいときには、ビルドサーバにライブラリを登録する必要があります。
方法としては
 ・ソース管理にライブラリ用フォルダを作成しておき、参照先を指定する
 ・ローカルのビルド環境を作成し、その環境にライブラリをインストールする
のどちらかになると思います。
今回は、ローカルのビルド環境を作成してみます。

※2012/08/19現在、TFServiceはPreview版ですので、RTM版とは異なる可能性があります。
 また、ライセンスについてはMSサポートに確認してください。

○TFS2012のインストール
 まずは、TFS2012をインストールします。
 ビルド環境のみなので、OSはクライアントOSでもかまいません。
 また、サーバOSにインストールする場合、SharePointFoudationも必要ありません。
 インストール完了後に自動起動されるウィザードはキャンセルしてください。
 ※確認はしていませんが、TFS2012 Expressは使えないと思います。
  (単体サーバでの使用が前提条件となっているので)

○Windows 8 SDKのインストール
 .NET Framework 4.5のビルドを正常に行うためには、ここからインストーラーをダウンロードします。
 インストーラーを実行すると、各種ファイルがネットからダウンロードされてインストールされます。
 ※今回自分が確認したのはWindows Server 2008 R2でしたが、.NET Framework4がターゲットのプロジェクトの場合はWindows 8 SDKなしでも正常にビルドできました。

○個別ライブラリのインストール
 ビルドするまでであればいつでもいいと思いますが、ビルドサーバ構築後にインストールすると再起動が必要になるかもしれないので、最初に個別ライブラリもインストールしておきます。
 (Windows Phone SDKとかも同様です)

○ビルドサービスの構成
 普通のビルドサーバと異なるのは、
 ・接続先サーバの指定をURLで直接行う
 ・接続時に認証が必要となる
 ことです。
 Team Foundation Server 管理コンソールから「ビルド構成」を選択し、「インストール済みフィーチャーの構成」をクリックすると、ウィザードが起動します。
 チームプロジェクトコレクションの選択画面で、参照先のサーバを「https://<使用するTFServiceのURL>」にします。

<接続先サーバの指定画面>
 「サーバー」ボタンを押下して、接続先サーバを追加します。

009_2

<接続先サーバの追加画面>
 「追加」ボタンを押下し、接続先Team Foundation Serverの名前のところにTFServiceのURLを指定します。

010

 TFServiceへのURLを指定し「OK」ボタンを押下すると、以下の接続中画面が表示されますので、ちょっと待ちます。

011

 TFServiceへの認証画面が表示されるので、TFServiceにログインする際のユーザ名/パスワードを入力し、サインインします。

012

 認証が完了すると、接続先サーバ追加画面に戻ります。

013

 接続先サーバの設定が完了すると、接続先チームコレクションの一覧が表示されますので、チームコレクションを選択し、「接続」ボタンを押下します。
(DefaultCollectionしかない?)

014

あとは、普通のビルドサーバと同様に設定していきます。
(エージェントの作成も忘れずに)

○ビルド定義の設定
 ビルド定義で、ローカルビルドコントローラーを使用するように設定します。
 
 「ビルドの規定値」にあるビルドコントローラーとして、ローカルサーバを指定します。
 (「Hosted Build Controller」がTFServiceで通常使用するビルドコントローラーです)

015_2

この状態でビルドを実行すると、こんな感じでローカルサーバでビルドが実行できます。

016

ほんとにお手軽に構築できます。
残念なのは、現時点ではTFS2010が使えないことです。
TFS2010で同様に環境構築してみたのですが、接続先サーバの追加時にエラーになってしましました。><

007

ぜひTFS2010でも使えるようにしてほしいものです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください