我们正在尝试从SVN切换到HG。
我们正在使用与CruiseControl的持续集成。. NET在运行良好的特制构建服务器上。此外,我们开始每晚构建来做扩展测试,如代码统计增强单元测试等。
现在我们的问题是:
夜间构建触发如下:
<triggers>
<scheduleTrigger time="3:00" buildCondition="IfModificationExists" />
</triggers>
我们引用了与持续集成相同的克隆。
夜间CruiseControl正在启动hg pull任务,该任务返回"未检测到修改",因为这些修改在白天已经检测到。
我的问题
我可以配置触发器任务,以便它检查上次夜间构建和当前构建之间的更改集吗?是否可以在MsBuild任务扩展中配置称为巡航控制的任务?我们是否需要一个额外的克隆用于夜间构建?还有其他的解决办法吗?
查看代码,我看不到基于存储库状态查找变更集的机制。
就我个人而言,我要么走第二克隆路线,要么使用ForceBuild条件而不是IfModificationExists来总是进行夜间构建。
有几种不同的机制可以达到你想要的结果,但在我看来,它们都引入了额外的"混乱"。最简单的方法之一可能是添加一个文件系统源代码控制块,并引用一个在标准集成构建过程中被触摸的文件。