在Cruise Control .NET中共享源代码控制/构建工件

时间:2012-09-10 16:21:49

标签: .net continuous-integration cruisecontrol.net

我有一个存储库,其下面有多个项目的目录结构,我正在为我的存储库中的每个项目设置一个独特的CC.NET项目。

我遇到了两个独特的挑战,我想确保自己可以做到这一点,而不会让自己陷入困境。

我主要关注的是源代码控制,我可以使用<cc:define>预处理器块复制源代码控制块,这很好。但是我担心源控制冲突。如果两个项目同时运行,则可能会在另一个项目构建时更新源代码管理。有没有办法安全地共享这个源代码控制资源?

我曾考虑过一个特殊的项目,负责从源更改/定期间隔/等中触发所有CI ...并让其他项目触发该项目的完成。这对我来说似乎有点阴暗。

另一个问题是依赖关系,我知道CC.NET可以使用解决方案文件(而且经常被推荐),这里的问题是我真的更喜欢不为CC.NET中的每个项目构建一次我的库项目

1 个答案:

答案 0 :(得分:2)

您可以添加一个队列,这样在项目构建/更新源时,它会阻止所有其他项目执行此操作。

否则,您可以在磁盘上为每个ccnet项目创建一个新报告 - 这会破坏您理想的操作。

然而,优点是一个ccnet项目不会阻止另一个 - 如果构建/更新需要一段时间