2009-07-17 11 views
2

私たちは夜間にCruiseControlをビルドしています。夜間のビルドに失敗した場合は、電子メールを送信します。プログラマーは、彼/彼女の変更の問題チェックを修正し、その後強制的にビルドします。ビルドに失敗すると、電子メールが再度送信されます。フォースビルドが押されたときに電子メールを送信しない方法がありますか?CruiseControl.netメール

答えて

1

1.4では可能ではないと思います。しかし、電子タグの発行者にとっては、1.5で新しいタグ「dynamicvalues」を使用することが可能です。

このタグには、確認できる変数が2つあります。それは完全にリリースされていないので、私はあなたの特定のニーズにうまくいくかもしれないと推測することができます。

可能なタグ:

  1. CCNetRequestSource = IntervalTrigger(インターバルトリガーは、ビルドの原因だった場合にのみ電子メールで送信します)あなたのため
  2. CCNetBuildCondion = IfModificationExists(このビルドを強制ignoreはあります)

例:

あなたの設定は、最終的には、電子メールの出版社でこれに似たものがあります:

<email> 
... 
<dynamicValues> 
    <directValue> 
    <property>buildArgs</property> 
    <parameter>BuildArgs</parameter> 
    <default>-t:$[$CCNetRequestSource|IntervalTrigger]</default> 
    </directValue> 
</dynamicValues> 
... 
</email> 

CruiseControl.NETバージョン1.5が既にCTPです。だから、すぐになるでしょう。

リンク天国:

+0

最新の1.5ビルドは、 http://ccnetlive.thoughtworks.com/CCNet-builds/1.5.0/でアクセスできます。 – Lee

1

今すぐ

<modifierNotificationTypes> 
    <NotificationType>Change</NotificationType> 
</modifierNotificationTypes> 
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="[email protected]" includeDetails="true" mailhostUsername="night.builder" mailhostPassword="xxx" useSSL="FALSE"> 
    <dynamicValues> 
     <directValue property="mailhost" parameter="SmtpServer" default="fake" /> 
    </dynamicValues>   
    </email> 
</publishers> 

私はしかし、誰成功し、Email Publisherからません要素を使用しようとしました。

もっと適切な解決策がある人は、ここで共有してください。

関連する問題