我正在尝试使用c#代码(使用cmd)执行ReleaseManagementBuild.exe。
我得到了以下帮助: -
ReleaseManagementBuild发布{[-tfs teamFoundationServerUrl -tp teamProjectName -bd buildDefinitionName -bn buildNumber] | [-rt ReleaseTemplateName -pl PackageLocation [-an AppendComponentName] [-ff FireAndForget]]} [-ts TargetStage]
其中:
-tfs [TFS模式] Team Foundation Server的URL。网址应包含 集合如果不是默认值。 -tp [TFS模式]构建所在的团队项目的名称 触发。 -bd [TFS模式]用于构建的构建定义的名称。 -bn [TFS Mode] Build Number表示特定的构建实例 生成了要发布的应用程序组件。
-rt [包位置模式]用于创建的发布模板的名称 新版本。 -pl [包位置模式]组件的包位置 -ts [可选]发布的目标阶段的名称 应该停下来 -ff [包位置模式] [可选]设置为True时,命令将为 返回而不等待第一阶段的部署。默认 是假:等待结果。 -an [包位置模式] [可选]如果发布 模板具有“外部构建”的组件,当设置为true时, 组件名称将附加在包位置的末尾。
示例:
ReleaseManagementBuild发布-tfs http://localhost:8080/tfs/DefaultCollection -tp"我的项目" -bd" QA_Dev_MyApp_Manual" -bn" QA_Dev_MyApp_Manual_20101119.8"
ReleaseManagementBuild发布-tfs http://localhost:8080/tfs/DefaultCollection -tp"我的项目" -bd" QA_Dev_MyApp_Manual" -bn" QA_Dev_MyApp_Manual_20101119.8" -ts" DEV"
ReleaseManagementBuild发布-rt"我的发布模板" -pl" //分享/删除/版本"
ReleaseManagementBuild发布-rt"我的发布模板" -pl" //分享/删除/版本" -ts" DEV" -ff False -an True
我想将这三个参数传递给Build: -
1)用于创建新版本的发布模板的名称。 2)构建Drop位置 3)内部版本号 - 我通常部署不是最新版本的Build。
所以我的问题是如何通过传递所有三个参数来释放。
注意: - 我可以通过以下方式进行部署: -
release -rt MY_ReleaseTemplate_RT -pl \\Server\BuildDrop\Dev1\BuildDefinitionName\BuildNumber
但是这会将版本管理工具中的内部版本号作为空白。我想使用包位置进行发布,因为我无法将构建定义设置为自动部署,并且还希望构建编号能够反映在发布管理工具中。
答案 0 :(得分:0)
如果指定内部版本号,将自动确定构建放置位置;您不需要指定放置位置。您可以指定任何您想要的内部版本号,它不必是最新版本。
只需按照第一个示例中设置的模式ReleaseManagementBuild release -tfs http://localhost:8080/tfs/DefaultCollection -tp "My Project" -bd "QA_Dev_MyApp_Manual" -bn "QA_Dev_MyApp_Manual_20101119.8"
。
没有其他方法可以在版本中显示内部版本号;发布版本与特定的构建定义和编号相关联,或者它与UNC位置相关联。它不可能都是。
值得注意的是,RM Server 已弃用。是时候开始规划到现代版TFS的迁移路径以及现有的现代构建/部署功能。