2011-05-24 70 views
0

我設置管理的哈德遜服務器,在那裏我有3個項目:A,B和C如何設置哈德森作業,使下游作業始終執行?

  1. 作業中的是什麼時,在樹幹被選中建設
  2. 作業B是建立作業後一個成功完成
  3. 作業C是建立後作業B成功完成

作業A需要大約25-35分鐘來執行,而作業B和C是非常快的(作業B約1分鐘,作業C約1/2秒)。

現在,因爲有人在作業A正在執行時進行檢入,它總是中斷進程並且不執行作業B和C.

那麼,有沒有辦法強制作業B和C在作業A成功執行後執行?

+0

這應該是可能的,如果你使用鎖和鎖存插件:你有沒有嘗試過? http://wiki.hudson-ci.org/display/HUDSON/Locks+and+Latches+plugin – davek 2011-05-24 13:14:05

+0

@Davek不,但是那個頁面說只鎖定了。它還在工作嗎? – 2011-05-24 13:16:19

回答

0

只需將其移出答案 - 就像@davek所說的那樣,鎖和鎖存器插件可以工作。您可以將它設置爲鎖定集的A,B和C部分,以便在B或C工作時,A排隊。我們在我們的設置中使用這個功能來停止共享資源的構建。

警告:有一個已知的鎖定錯誤,希望能很快修復,如果多個構建在等待同一個鎖定,它們偶爾會在釋放鎖定時啓動,而不是阻止另一個鎖定。