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>」にします。
<接続先サーバの指定画面>
「サーバー」ボタンを押下して、接続先サーバを追加します。
<接続先サーバの追加画面>
「追加」ボタンを押下し、接続先Team Foundation Serverの名前のところにTFServiceのURLを指定します。
TFServiceへのURLを指定し「OK」ボタンを押下すると、以下の接続中画面が表示されますので、ちょっと待ちます。
TFServiceへの認証画面が表示されるので、TFServiceにログインする際のユーザ名/パスワードを入力し、サインインします。
接続先サーバの設定が完了すると、接続先チームコレクションの一覧が表示されますので、チームコレクションを選択し、「接続」ボタンを押下します。
(DefaultCollectionしかない?)
あとは、普通のビルドサーバと同様に設定していきます。
(エージェントの作成も忘れずに)
○ビルド定義の設定
ビルド定義で、ローカルビルドコントローラーを使用するように設定します。
「ビルドの規定値」にあるビルドコントローラーとして、ローカルサーバを指定します。
(「Hosted Build Controller」がTFServiceで通常使用するビルドコントローラーです)
この状態でビルドを実行すると、こんな感じでローカルサーバでビルドが実行できます。
ほんとにお手軽に構築できます。
残念なのは、現時点ではTFS2010が使えないことです。
TFS2010で同様に環境構築してみたのですが、接続先サーバの追加時にエラーになってしましました。><
ぜひTFS2010でも使えるようにしてほしいものです。