「ALM Advent Calender」13日目への参加記事になります。
TFS2012とVS2012をUpdate1環境にしたところ、今までは怒られなかったビルドで警告が出てました。
「格納フォルダーをクロークする必要があります。」と出ています。
ちなみに、クロークは「除外」のことです。
除外しろと言われてもどこを...??
とりあえず、メッセージに記載されているリンク先を参照してみます。
英語にページに飛びますが、右上の言語を「日本-日本語」に変更すれば日本語ページに移動できます。
すると、こんなことが書いてありました。
「必要なフォルダーをすべて含める」のはいいとして、「必要なフォルダーのみを含める」と言われても、必要でないフォルダーって??
念のため、ビルド定義を見ると、
RTM版ではエラーになりませんでしたが、Update1では「入力が必要である」という警告になっていました。
無い頭をひねってみましたが考えても何も思いつかないので、新しいビルド定義から学ぶことにしてみました。
なんと、最初から「クローク」状態の定義が追加されています!!
ということで、結論は「RTM版でデフォルトのままビルド定義を作成したものをUpdate1に移行した場合、ワークスペースの定義にクローク対象を追加する必要がある」ということです。(「警告メッセージを無視する」という手もありますが、警告とはいえエラーをそのままにするのは精神衛生上よくないかと)
ちなみに、クローク対象として「/[プロジェクトフォルダ]/Drops」が追加されていますが、これはクラウドで稼働しているTeam Foundation Serviceを使ったチームプロジェクトでビルド定義を作成した場合、ビルド出力を格納するフォルダーになります。
個人的な想像ですが、Team Foundation Serviceのビルド定義で「Drops」フォルダを含めた場合、ビルドに必要のないファイル、しかもある程度大きなファイル(.exe/.dllなど)がビルドサーバに転送されることになり、ビルド実行速度/リソースに影響があるのでこの制約が追加されたのではと思います。
オンプレミス環境では「Drops」は使用しないと思いますので、何も考えずにクローク対象として「Drops」を追加しても問題ないと思います。