2010-12-20 13 views
2

現在のプロジェクトステータスを公開する際に問題が発生しました。Cruisecontrol Publishコマンドonfailure

マッピング:

ThoughtWorks.CruiseControl.Core.Config.ConfigurationException:設定文書からCruiseControlのプロジェクトをインスタンス化できません

<publishers> 
    <xmllogger /><!-- Log For WebDashboard ##Do not remove##-->  
    <email> 
    ... 
    </email> 
    <onfailure> 
    <exec> 
     <executable>echo ERROR > logs/status.txt</executable> 
    </exec> 
    </onfailure>    
</publishers> 

私は、次のメッセージが表示されます私のサービスを開始したい

。 CruiseControl設定を正しく入力するために必要なXMLノードが設定文書にない可能性があります。 配列項目「ONFAILURE」をロードできません - 値を持つオブジェクトに対してThoughtWorks.CruiseControl.Core.ITaskに型可能System.Stringから変換できません:「エコーERROR>ログ/ status.txt」

誰が何そのメッセージを知っています手段?見越して

おかげ

アレックス

答えて

5

あなたはCruiseControlのかCruiseControl.NETを使用していますか?

CC.NETの場合、 "onfailure"ノードは存在しません。 [1] http://ccnetlive.thoughtworks.com/ccnet/doc/CCNET/Conditional%20Publisher.html

+0

おかげで、私は私がエラーメッセージを取得する今、あなたのソリューションを試してみました iはdidntの申し訳ありませんイム、それは動作しますが、私は確かにバージョン1.5.7256.1 –

+0

を使用していERROR >ログ/ status.txt をエコーでは、それは、Vの出版社のサブノードだということを知っていましたエリーあなたの供給のおかげで。 (: –

0


<exec> 
    <executable>cmd.exe</executable> 
    <buildArgs>/c "echo ERROR > logs\status.txt"</buildArgs> 
</exec> 

<conditionalPublisher> 
    <conditions> 
     <condition>Failure</condition> 
    </conditions> 
    <publishers> 
     <exec> 
      <executable>echo ERROR > logs/status.txt</executable> 
     </exec> 
    </publishers> 
</conditionalPublisher> 

あなたはまた、CMDのinvokationであなたのエコータスクをカプセル化する必要があるかもしれません。その代わりに、[1]このようConditionnal Publisherを使用する必要があります<executable>は、実行可能ファイルの名前である必要があり、引数は<buildArgs>に渡さなければならないようdocumentationから、それが見えます。だからこのような何かがトリックを行うかもしれません。 ThoughtWorks.CruiseControl.Core.Config.ConfigurationException:検出された未使用ノード: 失敗 ご返信用

<exec> 
    <executable>echo</executable> 
    <buildArgs>ERROR > logs/status.txt</buildArgs> 
</exec> 
+0

返信ありがとう、これは私の問題、同じメッセージを解決しませんでした:/ –

+0

以下の回答との関連で、それは働いて、ありがとう。(: –