定义 Team Foundation Build 的初始配置
你可以自定义 Team Foundation Build 使用的团队项目初始生成权限。 Build.xml 插件文件指定所有团队项目的生成活动的安全权限,这些项目都是用相同过程模板创建的。 将以下模板文件上传到团队项目数据库:
备注
从 Team Foundation Server (TFS) 2013 开始,build.xml 插件将不再上传生成模块文件。
下表总结了 Microsoft Solutions Framework (MSF) 过程模板的文件名、文件夹名称和插件名称。
文件名: |
Build.xml |
文件夹名称: |
生成 |
插件名称: |
Microsoft.ProjectCreationWizard.Build |
备注
可以更改 XML 文件和文件夹的名称,但不能更改插件名称。Team Foundation Server 并不包括用于部署客户端插件、策略或其他修改的机制。如果你希望部署此类功能,则必须使用你自己的分发和安装程序。
在 Build.xml 文件中,指定一个或多个任务以及其依赖项。 TSF 插件文件指定分配给特定 TFS 默认组的权限。 有关如何自定义 实验室管理 的初始安全配置的信息,请参阅 控制对功能区域的访问。 有关 task、taskXml 和 dependency 元素的详细信息,请参阅 定义用于处理插件的任务 和 在插件文件中定义任务组和任务的依赖项。
以下代码表示为 TFS 过程模板定义的默认 build.xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<tasks>
<task id="BuildTask" name="Add Build Permissions" plugin="Microsoft.ProjectCreationWizard.Build" completionMessage="Build tasks completed.">
<dependencies />
<taskXml>
<!-- Project-level groups -->
<Permission allow="ViewBuilds, ViewBuildDefinition" identity="[$$PROJECTNAME$$]\Readers" />
<Permission allow="EditBuildQuality, ViewBuilds, QueueBuilds, ViewBuildDefinition" identity="[$$PROJECTNAME$$]\Contributors" />
<Permission allow="DeleteBuilds, DestroyBuilds, EditBuildQuality, ManageBuildQualities, RetainIndefinitely, ViewBuilds, ManageBuildQueue, QueueBuilds, StopBuilds, DeleteBuildDefinition, EditBuildDefinition, ViewBuildDefinition, AdministerBuildPermissions" identity="[$$PROJECTNAME$$]\Build Administrators" />
<Permission allow="DeleteBuilds, DestroyBuilds, EditBuildQuality, ManageBuildQualities, RetainIndefinitely, ViewBuilds, ManageBuildQueue, QueueBuilds, StopBuilds, DeleteBuildDefinition, EditBuildDefinition, ViewBuildDefinition, AdministerBuildPermissions" identity="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
<!-- Collection-level groups -->
<Permission allow="EditBuildQuality, ManageBuildQueue, OverrideBuildCheckInValidation, QueueBuilds, UpdateBuildInformation, ViewBuildDefinition, ViewBuilds" identity="$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$" />
<Permission allow="ViewBuildDefinition, EditBuildDefinition, DeleteBuildDefinition, QueueBuilds, ManageBuildQueue, StopBuilds, ViewBuilds, EditBuildQuality, RetainIndefinitely, DeleteBuilds, ManageBuildQualities, DestroyBuilds, AdministerBuildPermissions" identity="$$PROJECTCOLLECTIONBUILDADMINSGROUP$$" />
<Permission allow="DeleteBuilds, DestroyBuilds, EditBuildQuality, ManageBuildQualities, RetainIndefinitely, ViewBuilds, ManageBuildQueue, QueueBuilds, StopBuilds, DeleteBuildDefinition, EditBuildDefinition, ViewBuildDefinition, AdministerBuildPermissions, OverrideBuildCheckInValidation" identity="$$PROJECTCOLLECTIONADMINGROUP$$" />
</taskXml>
</task>
</tasks>