我爲我們的maven多項目創建了一個hudson作業,包含5個模塊以將SNAPSHOT
構件部署到maven庫。沒關係,只要它在沒有測試失敗的情況下成功構建即可。但是,現在我想滿足以下要求:配置hudson maven作業,在測試失敗時繼續構建,但只在沒有測試失敗時部署
- 當模塊發生測試失敗時,構建應繼續構建並測試其他模塊,但變爲黃色。使用
-Dmaven.test.failure.ignore=true
完成,但在下一個要求失敗。 - 當模塊發生測試失敗時,沒有任何工件應該部署到Maven存儲庫。其他項目依賴於這個項目的快照,這些項目只想使用最新的快照,沒有任何測試失敗。
- 最好使用哈德森maven集成,而不是免費的腳本,我們得到哈德森報告頁面(每個模塊的紅色/黃色/藍色狀態,生成日誌錯誤着色,...)。特別是運行Maven構建兩次(第一個
mvn test -Dmaven.test.failure.ignore=true
,而不是mvn deploy -DskipTests
)不是一個解決方案,因爲它是一個性能損失,它混淆了哈德森報告頁面,它不是原子的(它在第二個版本中再次從存儲庫中更新)。
有什麼辦法可以做到這一點?
陷阱:選項*將工件部署到Maven存儲庫*在自由式哈德森作業中不可用,僅在maven2哈德森作業中(顯然對於maven 3不起作用)。 – 2011-03-22 08:44:11
現在,maven2 hudson/jenkins構建確實支持maven3 – 2011-04-01 13:26:29