Tfs 2010 Build:持续集成和门控签入在一起?
我已经在我的 Tfs2010 实例上运行了 CI 构建,但我还想运行门控签入构建。然而,我希望这两个版本的运行方式之间存在细微的差异。具体来说,我希望门控签入在失败时不会产生错误工作项,不会在构建时关联变更集和工作项,不会将构建移至 drop,并且不会维护以前的构建。由于由门控签入启动的构建是未提交的更改,因此这些步骤对我来说似乎没有必要,但我肯定希望 CI 构建能够执行这些功能。
不幸的是,在门控签入构建提交变更集后,我的变更集上会出现 NO_CI 的情况,并且 CI 构建永远不会被触发。我发现此线程 这似乎表明我的 DefaultTemplate.xaml 应该在某处有一个“获取活动”NO_CIOption 参数;但是配置文件中似乎没有任何内容表明任何此类内容。这两个字符串都不存在,并且我在 msdn 库中找不到任何参考文档。
事实上,在msdn库中,有一个一个页面似乎链接到我想要的页面,但是链接实际上所在的位置有一个错误的重复链接,指向“控制构建系统放置二进制文件的位置”。您可以在其正下方看到相同的链接。
无论如何:构建模板文件中如何使用 NO_CIOption 参数?它放置在哪里?以前没有其他人想要这样做吗?
旁注:在 SO 和 MSDN 论坛之间交叉发帖是一种不好的做法吗?
I already have a CI build running on my Tfs2010 instance, but I'd like to get a Gated checkin build running as well. There are subtle differences between the ways I would like these two builds would run, however. Specifically, I'd like the Gated checkin to not produce bug workitems on failure, not associate changesets and workitems on build, not move builds to the drop, and not maintain previous builds. Since builds initiated by Gated checkins are uncommitted changes, these steps seem unnecessary to me, but I would definitely like the CI build to perform these functions.
Unfortunately, there's this NO_CI thing that appears on my changesets after they're committed by the Gated Checkin build, and the CI build is never triggered. I found this thread that seemed to indicate that my DefaultTemplate.xaml should have a "Get Activity" NO_CIOption parameter in there somewhere; however nothing in the configuration file seems to indicate anything of the sort. Neither string is present, and I can't find any reference documentation in the msdn library.
In fact, in the msdn library, there's a page that seems to link to the page I want, however where the link would actually be there's a misplaced, duplicate link to "Control where the build system places your binaries." You can see the identical link directly below it.
Anyhow: how is the NO_CIOption parameter used in the build template files? Where is it placed? Has no anyone else ever wanted to do this before?
Side note: is it bad practice to cross-post between SO and the MSDN forums?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为了跟进此问题,在查看 Xaml 并在构建二进制文件上使用反射器后,我在 SyncWorkspace 操作上找到了 NoCIOption 属性。将其设置为 false 似乎允许 CI 构建在门控签入后触发,并删除有点难看的 NO_CI 签入评论附录。
请参阅 http://donovanbrown.com /post/How-to-have-CI-builds-run-after-a-Gated-Build 了解如何执行此操作的信息。
To follow up on this, after looking through the Xaml and using reflector on the Build binaries, I found the NoCIOption property on the SyncWorkspace action. Setting this to false seems to have allowed CI builds to trigger after gated checkins, as well as removing the somewhat unsightly NO_CI checkin comment appendix.
See http://donovanbrown.com/post/How-to-have-CI-builds-run-after-a-Gated-Build for information on how to do this.