我已经在我的Tfs2010实例上运行了CI构建,但是我还希望运行一个Gated checkin构建。但是,我希望这两个构建运行的方式之间存在细微差别。具体来说,我希望Gated checkin不会在失败时产生bug工作项,不会在构建时关联变更集和工作项,不会将构建移动到drop,也不会维护以前的构建。由于Gated checkins启动的构建是未提交的更改,因此这些步骤对我来说似乎没有必要,但我绝对希望CI构建能够执行这些功能。
不幸的是,这些 NO_CI 在我们的更改集中出现后,它们被Gated Checkin构建提交,并且CI构建永远不会被触发。我发现this thread似乎表明我的DefaultTemplate.xaml应该在某处有一个“Get Activity”NO_CIOption参数;但是配置文件中没有任何内容似乎表明任何类型。两个字符串都不存在,我在msdn库中找不到任何参考文档。
事实上,在msdn库中,a page似乎链接到我想要的页面,但是链接实际上是一个错位的重复链接“控制构建系统放置二进制文件的地方“。您可以在其下方看到相同的链接。
无论如何:构建模板文件中如何使用NO_CIOption参数?放在哪里?以前没有其他人想要这样做吗?
旁注:在SO和MSDN论坛之间交叉发帖是不好的做法吗?
答案 0 :(得分:13)
为了跟进这一点,在查看Xaml并在Build二进制文件上使用反射器之后,我在SyncWorkspace操作上找到了NoCIOption属性。将此设置为false似乎允许CI构建在门控签入后触发,以及删除有些难看的 NO_CI 签入注释附录。
有关如何执行此操作的信息,请参阅http://donovanbrown.com/post/How-to-have-CI-builds-run-after-a-Gated-Build。