2014-03-05 259 views
0

當巡航構建被觸發時,它會調用我的構建腳本。我的構建腳本使用版本號來安裝東西。這個版本並不是一成不變的,因爲我在每次安裝時都會提取它,並且需要在電子郵件主題中使用。 (決定cruise labellers不會是一個好的解決方案)如何在進程運行時更新ccnet.config後告訴CruiseControl使用新值?

我已經在ccnet.config <cb:define version="" />中定義了我在哪裏使用我的構建腳本在構建過程中進行更新。但是,由於此更新是在構建運行時完成的,巡航已經讀取了配置文件,並且在構建之前取得了該值。

我想在構建期間取值。該值顯示在郵件的標題,如:

<publishers> 
    <email> 
     <subjectSettings> 
     <subject buildResult="Success" value="Version $(version) was installed " /> 
     </subjectSettings> 
    </email> 
</publishers> 

有沒有一種方法,我可以以某種方式告訴巡航時,它準備以電子郵件的構建過程中使用的新的價值?也許如果我弄清楚這個信息是如何存儲的,我可以在構建運行時清理它,然後顯示我的新值。

回答

0

我沒有發現在構建過程中更新版本的方法,所以我分離了曲折控制消息。如果失敗,則使用巡航控制觸發電子郵件。如果成功,它會通過NAnt觸發一封電子郵件。通過在南特成功的一部分,我能夠得到觸發構建所需的版本,並保持巡航屬性,如${CCNetProject}, ${CCNetBuildTime}等。

相關問題