2011-06-07 73 views

回答

15

好吧,我想我設法找到了解決方案。

  • 重試失敗構建插件無法正常工作,因爲它無法覆蓋默認項目計劃,所以失敗的項目一次又一次地構建完成。
  • Naginator插件沒有工作,因爲延遲是不可配置的。
  • 先決條件構建步驟插件不適用。

的解決方案是安裝Groovy Postbuild Plugin,其下的詹金斯JVM運行,並公開暴露出詹金斯實例。因此,有可能以編程方式直接在項目配置禁用當前版本:

if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) { 
    manager.build.project.disabled = true 
} 
+0

死簡單,完美的作品。謝謝! – 2014-08-18 15:17:17

+0

@Vladimir Sinenko我試過這個。在Groovy後期製作腳本中沒有任何變化.even println。什麼可能是問題 – no1 2015-06-04 06:40:45

3

有項目狀態頁面上的按鈕「禁用項目」。我模擬與數據HTTP POST消息按鈕,點擊右鍵從運行構建(項目)的bash腳本「提交= \」禁用項目\「」像這樣

wget --post-data "Submit=\"Disable Project\"" ${JOB_URL}disable 

。整個代碼可以是這樣的

set +e 
# Run test/build 
# .... 
if [ $? -ne 0 ]; 
then 
    wget --post-data "Submit=\"Disable Project\"" ${JOB_URL}disable 
# Or you can use following to disable one job from another 
# wget --post-data "Submit=\"Disable Project\"" http://<Server>/job/$JOB_NAME/disable 
    exit -1 
fi 

這是一個比較老的問題,所以我想有沒有禁用詹金斯GUI比/啓用按鈕。如果詹金斯受密碼保護,則需要先使用wget登錄,將cookie存儲在某個文件中,然後在第二個文件中添加cookie。

+0

一些解釋會很好... – Trinimon 2013-05-05 19:30:28