【发布时间】:2013-10-17 18:38:31
【问题描述】:
我们现有的批量构建脚本包含一个 URL,可从中获取(另一个构建定义的)最新产品构建。
如何访问 TFS Team Build 最新的 build drop 文件夹?
我正在寻找可以访问最新的 \buildserver\builddrop\Project-2010MMDD.N\
【问题讨论】:
标签: tfsbuild
我们现有的批量构建脚本包含一个 URL,可从中获取(另一个构建定义的)最新产品构建。
如何访问 TFS Team Build 最新的 build drop 文件夹?
我正在寻找可以访问最新的 \buildserver\builddrop\Project-2010MMDD.N\
【问题讨论】:
标签: tfsbuild
使用 API,您可以从构建中获取放置位置。下面的代码获取给定项目的最新构建,并返回 dropfolder。
public string DropFolder(TeamFoundationServer tfs, string teamProject, string buildName)
{
IBuildServer buildServer = (IBuildServer)tfs.GetService(typeof(IBuildServer));
IBuildDetailSpec buildDetailSpec = buildServer.CreateBuildDetailSpec(teamProject, buildName);
buildDetailSpec.MaxBuildsPerDefinition = 1;
buildDetailSpec.QueryOrder = BuildQueryOrder.FinishTimeDescending;
buildDetailSpec.Status = BuildStatus.Failed | BuildStatus.PartiallySucceeded | BuildStatus.Stopped | BuildStatus.Succeeded;
IBuildQueryResult results = buildServer.QueryBuilds(buildDetailSpec);
if (results.Failures.Length != 0)
{
throw new ApplicationException("this needs to go away and be handled more nicely");
}
if (results.Builds.Length == 1)
{
results.Builds[0].DropLocation;
}
else
{
return null;
}
}
【讨论】: