首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在powershell中获取当前构建定义

如何在powershell中获取当前构建定义
EN

Stack Overflow用户
提问于 2014-06-24 15:27:14
回答 1查看 2.1K关注 0票数 1

我有代码,它在powershell上获得最后一个成功的构建定义。我如何更改代码,显示最后一次构建。或者如果构建正在进行,是否显示当前构建?

代码语言:javascript
运行
复制
 [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Client")  
 [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Build.Client")  
 [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Build.Common")  

 $tfsCollectionUrl = "http://servertfs:8080/tfs/Test"
 $server = new-object Microsoft.TeamFoundation.Client.TfsTeamProjectCollection(New-Object Uri($tfsCollectionUrl))
 $buildServer = $server.GetService([Microsoft.TeamFoundation.Build.Client.IBuildServer])
 $buildDetail = $buildServer.QueryBuilds("NameProject", "NameBuildDefinition") | where { $_.BuildDefinition.LastGoodBuildUri -eq $_.Uri } #| select BuildNumber
 $buildDetail 
EN

Stack Overflow用户

发布于 2014-09-17 16:35:53

只需移除将结果限制为“上次成功构建”的过滤器,即可获得所有构建并从中应用适当的过滤器:

代码语言:javascript
运行
复制
$buildDetail = $buildServer.QueryBuilds("NameProject", "NameBuildDefinition") | sort -desc StartTime | select -first 1
$buildDetail | ft BuildNumber, StartTime, Status

http://www.incyclesoftware.com/2012/09/fastest-way-to-get-list-of-builds-using-ibuildserver-querybuilds-2/:您可能希望考虑使用builddetailspec规范并指定MaxBuildsPerDefinition,因为如果性能是个问题,它可能会更快:Extra

(编辑: MaxBuildsPerDefinition本身将获得第一个构建,但从某个地方开始)

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24380749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档