【发布时间】:2017-04-08 20:46:00
【问题描述】:
我正在尝试使用 TFS API 触发构建。我需要触发基于标签的构建。代码如下:
WorkItemStore workItemStore = tfs.GetService<WorkItemStore>();
Project teamProject = workItemStore.Projects["TFSProjName"];
IBuildServer buildServer = tfs.GetService(typeof(IBuildServer)) as IBuildServer;
IBuildDefinition buildDef = buildServer.GetBuildDefinition(teamProject.Name, "MyTestBuild");
IBuildRequest req = buildDef.CreateBuildRequest();
req.GetOption = GetOption.Custom;
req.CustomGetVersion = "LABC_2.0.389@$/TFSProjName";
buildServer.QueueBuild(req);
在我的构建定义中,提供了构建过程模板的服务器路径(这不是我在上面提供的LabelName 的一部分)。
运行时出现如下错误:
TF215097:为构建定义 \TFSProjName\MyTestBuild 初始化构建时出错:在版本 LABC_2.0.389@$/TFSProjName 的源代码管理中找不到项目 $/TFSProjName/BuildProcessTemplates/NewBuildProcessTemplate.xaml。
当我使用 Visual Studio 触发相同的构建时,它工作正常。我不确定如何明确指示系统检查BuildProcessTemplate,这不是我提供的标签的一部分。
【问题讨论】: