カスタマイズ可能な Team Foundation のビルド プロパティ
MSBuild のプロパティはビルドを構成するために使用できるキーと値のペアです。 詳細については、「MSBuild プロパティ」を参照してください。
Microsoft.TeamFoundation.Build.targets ファイルには、MSBuild のターゲット、タスク、およびプロパティが、Team Foundation ビルド用にいくつか定義されています。 これらのプロパティを TFSBuild.proj ファイルで変更すると、以下を行うことができます。
Team Foundation ビルドのタスクおよびターゲットに値を渡す。
特定のビルド アクションをオーバーライドする。
TFSBuild.proj ファイルの詳細については、「Team Foundation ビルドの構成ファイルについて」を参照してください。
目次
Visual C++ ビルドのカスタマイズ
タスクのカスタマイズに使用するプロパティ
オーバーライドできるプロパティ
次の表は、Team Foundation ビルドに定義されているプロパティの一覧です。 TfsBuild.proj ファイルでオーバーライドして、ビルド処理をカスタマイズできます。 詳細については、「SolutionToBuild 項目グループのカスタマイズ」を参照してください。
プロパティ |
説明 |
---|---|
BinariesRoot |
このプロパティを設定すると、ビルド コンピューター上のバイナリ フォルダーのルートが指定されます。 |
CleanCompilationOutputOnly |
このプロパティを true に設定すると、CoreClean ターゲットの実行時に、ソース ディレクトリから中間アセンブリのみが削除されます。 このプロパティを false に設定すると、CoreClean ターゲットの実行時に、ソース ディレクトリ全体が削除されます。 |
CustomizableOutDir |
Team Foundation ビルドでソリューションごとに OutDir が設定されないようにするには、このプロパティを true に設定します。 CustomizableOutDir を false に設定した場合は、TeamBuildOutDir プロパティを使用して、Team Foundation ビルドによって PublishDir に割り当てられている値を取得できます。 |
CustomizablePublishDir |
Team Foundation ビルドでソリューションごとに PublishDir ディレクトリが設定されないようにするには、このプロパティを true に設定します。 CustomizablePublishDir を false に設定した場合は、TeamBuildPublishDir プロパティを使用して、Team Foundation ビルドによって PublishDir に割り当てられている値を取得できます。 |
CustomPropertiesForBuild |
このプロパティを設定すると、Team Foundation ビルドが既定のターゲット (通常は Build) を呼び出すときに、すべてのソリューションにカスタム値が渡されます。 |
CustomPropertiesForClean |
このプロパティを設定すると、Team Foundation ビルドが Clean ターゲットを呼び出すときに、すべてのソリューションにカスタム値が渡されます。 |
GetAllowUnmapped |
このプロパティを false に設定すると、(ゲート チェックイン ビルドとプライベート ビルドの) シェルブセットに割り当てられていないファイルが存在する場合は、ビルドが失敗します。 |
GetAutoMerge |
このプロパティを false に設定すると、ゲート チェックイン ビルドまたはプライベート ビルドでバージョン管理の取得操作を実行中に競合が発生した場合は、ビルドが失敗します。 |
GetNoCIOption |
このプロパティを false に設定すると、ゲート チェックイン ビルドの実行時にチェックイン コメントへの ***NO_CI*** 文字列の挿入が除外されます。 このプロパティを false に設定すると、影響を受ける継続的な統合ビルドがキューに配置されます。 |
IncrementalBuild |
このプロパティを true に設定すると、インクリメンタル ビルドが実行されます。 このプロパティは、SkipClean を true に、SkipInitializeWorkspace を true に、ForceGet を false に設定するのに便利です。 |
IncrementalGet |
このプロパティを true に設定すると、インクリメント方式の取得が実行されます。 このプロパティは、CleanCompilationOutputOnly を true に、SkipInitializeWorkspace を true に、ForceGet を false に設定するのに便利です。 |
LabelComment |
このプロパティを設定すると、Label タスクによって使用されるコメントを定義できます。 |
LabelName |
このラベル名を設定すると、Label タスクで使用される名前が定義されます。 既定では、ラベル名は InitializeEndToEndIteration ターゲットの $(BuildNumber) に設定されます。 |
OutDir |
このプロパティを設定すると、ビルド作業ディレクトリ内の出力ファイルの場所を定義できます。 |
PerformTestImpactAnalysis |
テスト影響分析を無効にするには、このプロパティを false に設定します。 |
PublishTestResults |
テスト結果の発行をスキップするには、このプロパティを false に設定します。 |
SkipClean |
このプロパティを設定すると、CoreClean ターゲットがスキップされます。 |
SkipDropBuild |
このプロパティを設定すると、CoreDropBuild ターゲットがスキップされます。 |
SkipGet |
このプロパティを設定すると、CoreGet ターゲットがスキップされます。 |
SkipGetChangesetsAndUpdateWorkItems |
このプロパティを true に設定すると、変更セットの関連付けと、成功したビルドの作業項目の更新がスキップされます。 |
SkipInitializeWorkspace |
このプロパティを設定すると、CoreInitializeWorkspace ターゲットがスキップされます。 |
SkipInvalidConfigurations |
このプロパティを false に設定すると、無効な構成が見つかったときに、警告ではなくエラーが生成されます。 |
SkipLabel |
このプロパティを設定すると、CoreLabel ターゲットがスキップされます。 |
SkipPostBuild |
関連する変更セットおよび作業項目の収集をスキップするには、このプロパティを設定します。 |
SkipWorkItemCreation |
このプロパティを設定すると、CoreCreateWorkItem ターゲットがスキップされます。 |
SolutionRoot |
このプロパティを設定すると、ビルド コンピューター上のソース フォルダーのルートが指定されます。 |
StopOnFirstFailure |
このプロパティを true に設定すると、ビルドの実行中に最初のエラーが生じた時点で、消去、コンパイル、またはテストが停止されます。 |
UpdateAssociatedWorkItemsOnBuildBreak |
このプロパティを true に設定すると、失敗したビルドであっても、関連付けられている作業項目が更新されます。 |
Visual C++ ビルドのカスタマイズ
Team Foundation ビルドは、Visual C++ 9.0 プロジェクトのビルドのカスタマイズもサポートしています。 次のプロパティを使用すると、Visual C++ プロジェクトをビルドするために MSBuild で使用される VCBuild タスクに対応するプロパティを設定できます。 詳細については、「VCBuild Task」を参照してください。
チーム ビルド プロパティ |
VCBuild タスク プロパティ |
説明 |
---|---|---|
VCBuildAdditionalLibPaths |
AdditionalLibPaths |
LIB 環境変数パスが検索される前に、ライブラリを検索するための追加のパスを指定します (LINK.exe の LIBPATH オプションに該当します)。 |
VCBuildAdditionalOptions |
AdditionalOptions |
専用のタスク パラメーターがない追加のコマンド ライン オプションを指定します。 |
VCBuildToolPath |
ToolPath |
VCBuild タスクが、基になる実行可能ファイル (VCBuild.exe) を読み込む場所を指定します。 |
VCBuildUseEnvironment |
UseEnvironment |
このプロパティを true に設定すると、PATH、INCLUDE、LIBS、および LIBPATH の環境変数が使用されます。 それ以外の場合は false に設定します。 VCBuild.exe の場合、このプロパティは /useenv オプションに対応します。 詳細については、「/useenv」を参照してください。 |
AdditionalVCOverrides |
なし |
このプロパティを使用して、Team Foundation ビルドによって生成され、VCBuild タスクの Override プロパティで指定される VCBuild タスク シート ファイルに追加のオプションを指定します。 |
タスクのカスタマイズに使用するプロパティ
Microsoft.TeamFoundation.Build.targets ファイルの既定の各 Team Foundation ビルド タスクには、タスクのカスタマイズに使用できるプロパティも含まれています。 Team Foundation ビルドのタスクの詳細については、「Team Foundation ビルドのタスク」を参照してください。 たとえば、CreateNewWorkItem タスクは次のように定義されています。
<!-- Create WorkItem for build failure -->
<CreateNewWorkItem
TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
BuildUri="$(BuildUri)"
BuildNumber="$(BuildNumber)"
Description="$(WorkItemDescription)"
TeamProject="$(TeamProject)"
Title="$(WorkItemTitle)"
WorkItemFieldValues="$(WorkItemFieldValues)"
WorkItemType="$(WorkItemType)"
ContinueOnError="true" />
ビルドのエラー時に作成される作業項目をカスタマイズするには、以下のように TFSBuild.proj ファイルで WorkItemFieldValues を設定します。
注意
次の例では、Areapath プロパティと IterationPath プロパティも設定済みであることを前提としています。
<WorkItemFieldValues>Area Path=$(AreaPath);Iteration Path=$(IterationPath);Severity=1;Priority=0;Symptom=build break;Steps To Reproduce=Start the build using Team Build;Source=Development;How Found=Build Break;Assigned To=Active</WorkItemFieldValues>