定义 Team Foundation Build 的初始配置
可以自定义 Team Foundation Build 使用的团队项目的初始生成权限和模板文件。 Build.xml 插件文件为使用同一过程模板和要上载的模板文件创建的所有团队项目的生成活动指定安全权限。 下列模板文件将上载到团队项目数据库:
DefaultTemplate。 定义用于创建生成定义的模板。
UpgradeTemplate。 定义用于升级已通过使用 Visual Studio Team System 2008 Team Foundation Server 或 Visual Studio 2005 Team Foundation Server 定义的生成定义的模板。
下表总结了 Microsoft Solutions Framework (MSF) 过程模板的文件名、文件夹名称和插件名称。
文件名: |
Build.xml |
文件夹名称: |
Build |
插件名称: |
Microsoft.ProjectCreationWizard.Build |
备注
可以更改 XML 文件和文件夹的名称,但不能更改插件的名称。Team Foundation Server 并不包括用于部署客户端插件、策略或其他修改的机制。如果您希望部署此类功能,则必须使用您自己的分发和安装程序。
模板文件位于 Build 文件夹的 Templates 文件夹中。
在 Build.xml 文件中,指定一个或多个任务以及它们的依赖项。 MSF 插件文件指定上载两个模板文件这一任务和分配给 Team Foundation 的特定默认组的权限。 有关如何自定义实验室管理工具版的初始安全配置的信息,请参见控制对功能区域的访问。 有关 task、taskXml 和 dependency 元素的更多信息,请参见定义用于处理插件的任务和在插件文件中定义任务组和任务的依赖项。
以下代码表示为 MSF 过程模板定义的默认的 build.xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<tasks>
<task id="BuildTask" name="Create Build Process Templates" plugin="Microsoft.ProjectCreationWizard.Build" completionMessage="Build tasks completed.">
<dependencies />
<taskXml>
<ProcessTemplate Type="Default" Filename="Build\Templates\DefaultTemplate.xaml" Description="This is the default build process template for this Team Project." ServerPath="$/$$PROJECTNAME$$/BuildProcessTemplates" />
<ProcessTemplate Type="Upgrade" Filename="Build\Templates\UpgradeTemplate.xaml" Description="This is the upgrade build process template for this Team Project." ServerPath="$/$$PROJECTNAME$$/BuildProcessTemplates" />
<Permission allow="ViewBuildDefinition, ViewBuilds" identity="[$$PROJECTNAME$$]\@@Readers@@" />
<Permission allow="ViewBuildDefinition, QueueBuilds, ViewBuilds, EditBuildQuality" identity="[$$PROJECTNAME$$]\@@Contributors@@" />
<Permission allow="ViewBuildDefinition, EditBuildDefinition, DeleteBuildDefinition, QueueBuilds, ManageBuildQueue, StopBuilds, ViewBuilds, EditBuildQuality, RetainIndefinitely, DeleteBuilds, ManageBuildQualities, DestroyBuilds" identity="[$$PROJECTNAME$$]\@@Builders@@" />
<Permission allow="ViewBuildDefinition, EditBuildDefinition, DeleteBuildDefinition, QueueBuilds, ManageBuildQueue, StopBuilds, ViewBuilds, EditBuildQuality, RetainIndefinitely, DeleteBuilds, ManageBuildQualities, DestroyBuilds" identity="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
<Permission allow="ViewBuildDefinition, EditBuildDefinition, DeleteBuildDefinition, QueueBuilds, ManageBuildQueue, StopBuilds, ViewBuilds, EditBuildQuality, RetainIndefinitely, DeleteBuilds, ManageBuildQualities, DestroyBuilds, OverrideBuildCheckInValidation" identity="$$COLLECTIONADMINGROUP$$" />
</taskXml>
</task>
</tasks>