Team Foundation Build 任务

更新:2007 年 11 月

MSBuild 任务包含在目标中。这些任务提供在生成过程中运行的代码。MSBuild 提供了一个常见任务库。有关更多信息,请参见 MSBuild 任务参考

Team Foundation Build 的 MSBuild .targets 文件(即 Microsoft.TeamFoundation.Build.targets)定义了多个默认的 Team Foundation Build 任务,您可以通过在 TfsBuild.proj 文件中设置各种属性对这些任务进行自定义。例如,CoreGet 目标包括一个 Get 任务,该任务使您可以检索生成类型的特定变更集。默认情况下,Get 任务会检索最新的文件。有关 .targets 文件的更多信息,请参见 MSBuild .Targets 文件

Microsoft.TeamFoundation.Build.targets 中默认任务的列表

以下任务可以通过修改其属性进行自定义。

Team Foundation Build 任务

关联的目标

Get 任务

同步生成计算机上的源文件。它还会引发日志事件以通知记录器检索到本地工作区的每个文件和版本。

Get

标签任务

标记指定工作区的所有源文件。

Label

GenCheckinNotesUpdateWorkItems 任务

生成在生成过程中创建或受影响的所有变更集和工作项的列表。标签用于标记特定生成。

如果生成成功,则会调用 GetChangeSetsAndUpdateWorkitems 目标。

如果生成不成功,则会调用 GetChangeSetsOnBuildBreak 目标。

CreateNewWorkItem 任务

为生成过程中发生的故障创建新工作项。此外,该任务还会以指向特定内部版本号的链接更新工作项中的 Found In 字段。

CreateWorkItem

CreateWorkspaceTask 任务

在生成计算机上创建新工作区。

InitializeWorkspace

DeleteWorkspaceTask 任务

删除在生成执行过程中创建的工作区。不会从生成计算机删除实际的文件。如果指定的工作区不存在,则 DeleteWorkspaceTask 会发出一个警告。

InitializeWorkspace

UpdateBuildNumberDropLocation 任务

在指定位置创建文件夹以接收生成文件,并更新内部版本号。

InitializeEndToEndIteration

TestToolsTask 任务

在生成过程中运行一组测试,并发布结果。

RunTestWithConfiguration

BuildStep 任务

将生成步骤插入生成。

None

GetBuildProperties 任务

输出生成属性的初始值。

InitializeBuildProperties

SetBuildProperties 任务

设置任何可设置的生成属性。

None

WorkspaceItemConverterTask 任务

将版本控制服务器项目转换为本地工作区项目,以及将本地项目转换为版本控制服务器项目。

ResolveSolutionPathsForEndToEndIterationResolveTestFilesForEndToEndIteration

修改 Team Foundation Build 任务

若要修改定义文件 Microsoft.TeamFoundation.Build.targets 中定义的任务,请检查要修改的任务的属性,并在 Team Foundation Build 生成类型的 TfsBuild.proj 文件中指定这些属性。CreateNewWorkItem 任务定义如下。

<!-- Create WorkItem for build failure -->
    <CreateNewWorkItem
          BuildId="$(BuildNumber)"
          Description="$(WorkItemDescription)"
          TeamProject="$(TeamProject)"
          TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
          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>

请参见

任务

如何:在生成中使用环境变量

概念

了解 Team Foundation Build 配置文件

可自定义的 Team Foundation Build 属性

可自定义的 Team Foundation Build 目标