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



我有一个存储库,在它的目录结构下有多个项目,我希望为存储库中的每个项目设置一个唯一的CC.NET项目。

我遇到了两个独特的挑战,我想确保我能在不开枪的情况下做到这一点。

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

我曾考虑过有一个特殊的项目,负责源更改/周期性间隔等触发的所有CI……并在该项目完成后触发其他项目。这在我看来有点可疑。

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

您可以添加一个队列,这样当一个项目正在构建/更新源代码时,它会阻止所有其他项目这样做。

否则,你可以在磁盘上为每个ccnet项目创建一个新的报告——这确实会破坏你理想中想要做的事情。

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

最新更新