我们让CruiseControl为我们做夜间构建。如果每晚构建失败,它会发送一封电子邮件。程序员将修复问题检查他/她的更改然后执行强制构建。如果构建失败,则会再次发送电子邮件。有没有办法在按下强制构建时不发送电子邮件。
答案 0 :(得分:1)
我认为在1.4中不可能。但是,应该可以在1.5中使用新标记“dynamicvalues”为电子邮件发布者。
此标记应包含两个您可以检查的变量。由于尚未完全发布,我只能推测可能适合您的特定需求。
可能的标签:
示例:强>
您的配置最终会在电子邮件发布商中与此类似:
<email>
...
<dynamicValues>
<directValue>
<property>buildArgs</property>
<parameter>BuildArgs</parameter>
<default>-t:$[$CCNetRequestSource|IntervalTrigger]</default>
</directValue>
</dynamicValues>
...
</email>
CruiseControl.NET 1.5版已经CTP。所以,很快就会到来。
Link Heaven:
答案 1 :(得分:1)
将以下内容添加到您的配置
<modifierNotificationTypes>
<NotificationType>Change</NotificationType>
</modifierNotificationTypes>
答案 2 :(得分:0)
现在我正在使用某种解决方法:
<triggers>
<parameterTrigger>
<trigger type="scheduleTrigger">
<time>01:00</time>
<buildCondition>ForceBuild</buildCondition>
</trigger>
<parameters>
<namedValue name="SmtpServer" value="smtp.mail.com"/>
</parameters>
</parameterTrigger>
</triggers>
<publishers>
<email mailhost="fake" from="night.builder@mail.com" includeDetails="true" mailhostUsername="night.builder" mailhostPassword="xxx" useSSL="FALSE">
<dynamicValues>
<directValue property="mailhost" parameter="SmtpServer" default="fake" />
</dynamicValues>
</email>
</publishers>
我尝试使用Email Publisher中的否元素,但没有成功。
如果有人有更合适的解决方案,请在此处分享。