ReleaseManagementBuild.exe使用CMD部署构建(命令提示符)

时间:2018-04-06 12:05:44

标签: tfs tfsbuild release-management ms-release-management

我正在尝试使用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

但是这会将版本管理工具中的内部版本号作为空白。我想使用包位置进行发布,因为我无法将构建定义设置为自动部署,并且还希望构建编号能够反映在发布管理工具中。

1 个答案:

答案 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的迁移路径以及现有的现代构建/部署功能。