我在cc.net中为同一个Web应用程序设置了2个项目。使用间隔触发器并且工作正常的持续集成项目和使用cronTrigger的“夜间构建”项目。每晚构建基本上构建和部署登台/测试服务器,以便人们可以在每次有人提交时进行测试而不会被重建中断。我想要做的是每天早上6点自动构建它,并允许强制构建,如果你想建立任何其他时间。我使用的cron表达式是0 6 * * *
,我认为这是正确的,似乎在cc.net中正确设置了“下一个构建时间”。我遇到的问题是,如果我将构建条件设置为IfModificationExists,那么如果自上次构建以来没有修改,它就不会在预定的时间构建,这很好,但是一旦有人提交,它就会构建,这不是我想要的,我希望它等到下一个预定的时间。所以我尝试将构建条件设置为ForceBuild,我认为只要每天早上6点构建它,无论是否有任何提交,但它似乎并不是一次又一次地构建它。我错过了什么错误?
修改 不确定这是否真的提供了更多有用的信息,而是进一步发表评论。
<triggers>
<cronTrigger>
<buildCondition>IfModificationExists</buildCondition>
<cronExpression>0 6 * * *</cronExpression>
</cronTrigger>
</triggers>
OR
<triggers>
<cronTrigger>
<buildCondition>ForceBuild</buildCondition>
<cronExpression>0 6 * * *</cronExpression>
</cronTrigger>
</triggers>
答案 0 :(得分:1)
如果你想每天都跑步
<scheduleTrigger time="06:00" buildCondition="ForceBuild" name="Scheduled"></scheduleTrigger>
有人知道如何解决这个问题吗?我每个月都有类似的问题。
答案 1 :(得分:1)
取自:http://build.sharpdevelop.net/ccnet/doc/CCNET/Cron%20Trigger.html
单个表达式由5个以空格分隔的字段组成: 每周工作一天,每周工作一天
示例:
此触发器将在每个月的第5天执行
<triggers>
<cronTrigger>
<cronExpression>0 0 5 * *</cronExpression>
</cronTrigger>
</triggers>
此触发器将每天凌晨5点执行
<triggers>
<cronTrigger>
<cronExpression>0 5 * * *</cronExpression>
</cronTrigger>
</triggers>
问候,
德扬