2012-06-07 38 views
0

我們使用Hudson進行構建和部署。目前,我們有四個主要工作:BUILD,DEPLOY-DEV,DEPLOY-TEST和DEPLOY-PROD。Hudson連續工作執行

BUILD作業已參數化,因此我們可以指定新的版本號並使用Hudson管理的BUILD_NUMBER對其進行擴充。這工作得很好。我們也有一個「nightlybuild」參數,默認爲false。我們的目的是通過另一個Hudson工作來設定。

我們正在嘗試使用「nightlybuild」參數集首先調用BUILD作業的自動化NIGHTLY-BUILD作業,一旦成功,請調用DEPLOY-DEV作業。我們也想打電話給SONAR工作人員分析代碼,但對於這個問題,這兩步解決方案就足夠了。

對於NIGHTLY-BUILD作業,調用參數化作業的唯一方法是「觸發器參數化構建其他項目」後構建操作。我無法直接從BUILD作業中觸發,因爲「nightlybuild」默認值爲false,我也不想觸發任何manula構建。我還有一個NIGHTLY-DEPLOY,在NIGHTLY-BUILD上有一個構建觸發器「在其他項目構建完成後構建」。由於這些都是最終構建後的動作,它們同時觸發而不是連續觸發。

Started by user anonymous 
Triggering a new build of BUILD #49 
Triggering a new build of NIGHTLY-DEPLOY #3 
Triggering a new build of NIGHTTY-SONAR #3 
[DEBUG] Skipping watched dependency update; build not configured with trigger: NIGHTLY-BUILD #5 
Finished: SUCCESS 

當我開始構建,它完成了幾秒鐘,開始建立和同時部署,所以作爲新版本正在建設,舊版本的部署。不是我想要的。

我查看並下載了「Build Pipeline Plugin」,但它看起來只依賴於自動轉換的相同後期構建操作,併爲手動轉換添加了新功能。

有沒有人有任何建議如何解決這個問題?

回答

0

使用參數化觸發器插件作爲構建步驟,而不是構建後步驟。然後它可以選擇等待下游生成完成。

注意:這與Jenkins一起工作,我不能保證該選項存在於插件的Hudson版本中。

+0

這很有道理。我一直在尋找一個實際的構建步驟來調用另一個構建或參數化構建,它不存在。哈德森的插件版本是2.4(近2年)。我必須看看在同一個盒子裏站起來一個Jenkins實例需要做什麼。 – GeoGriffin

+0

我仍然希望有一個基於Hudson的解決方案 – GeoGriffin

+0

不允許您使用Jenkins的企業限制? –