作業dsl是否有辦法配置postBuildSteps,只有在構建成功時才能執行Maven作業。我看到有postSuccessfulBuildSteps只適用於發佈工作。作業DSL - 如何配置postBuildSteps Maven只有在構建成功時才啓動
回答
您必須使用「配置」塊「定製」 <runPostStepsIfResult>
設置追加到config.xml中
這個工作對我來說:如果你需要添加XML
job(type: Maven) {
name('MyMavenJob')
goals('install')
preBuildSteps {
shell('#!/bin/bash\n' +
'echo "PRE BUILD SCRIPT"\n' +
'env | sort\n' +
'echo "PRE BUILD END"\n')
}
postBuildSteps {
shell('#!/bin/bash\n' +
'echo "POST BUILD SCRIPT"\n' +
'env | sort\n' +
'echo "POST BUILD END"\n')
}
// Append <runPostStepsIfResult> at the end of the xml
// (which will be just after the closing </postbuilders> tag)
// "it" is a groovy.util.Node representing the
// root <project> element of config.xml.
configure { it <<
'runPostStepsIfResult' {
name('SUCCESS')
}
}
}
一般來說其不受Job DSL支持,您可以通過在Jenkins中手動配置作業來查找所需的內容,然後在Jenkins-主磁盤上查看結果3210。這通常位於${JENKINS_HOME}/jobs/job-name/config.xml
在http://job-dsl.herokuapp.com/作業-DSL操場是測試修改,直到你得到它匹配手動設置什麼時候做詹金斯在作業/作業名稱/ config.xml文件的東西有用的地方。
這很奇怪,但它不適用於'postBuilders',但開始使用'postbuilders'(小寫)。我在jenkins-1.596.2 – 2015-04-02 16:20:39
@Slava上測試過它你說得對,應該是小寫,我也是1.596.2。 我注意到「Run only if build succeeded」無線電不再設置,「runPostStepsIfResult」塊實際上應該在
你錯過了閱讀我的問題,我在詢問'只有在構建成功時才配置postBuildSteps'的方式' – Pushkar 2014-11-16 15:28:38
這工作:
postBuildSteps("SUCCESS") {
...
}
這是2017年的正確答案。 – 2017-10-16 13:06:52
- 1. 配置hudson maven作業,在測試失敗時繼續構建,但只在沒有測試失敗時部署
- 2. 如何在Jenkins上配置Maven構建作業以告知SonarQube構建作業的URL?
- 3. 作業DSL管線配置觸發器
- 4. 如何在啓動Intellji-Idea JUnit測試配置時運行Maven構建?
- 5. 不正確的作業配置插件使用工作DSL
- 6. 如何在TFS 2013中構建成功時啓動另一個構建
- 7. 只有在Cron作業失敗時才能重新啓動網絡?
- 8. 如何在作業DSL中配置多個shell步驟
- 9. 只有在構建成功的情況下,才能在Visual Studio中啓動makefile的任何聰明方法?
- 10. 如何使用Jenkins DSL設置所有作業的作業超時
- 11. Jenkins構建作業即使成功也沒有完成
- 12. Quartz Scheduler只有在沒有運行時才執行作業
- 13. 由job-dsl生成的Jenkins作業沒有選擇默認的Maven設置
- 14. Jenkins下游(構建後行動)工作的DSL是什麼?
- 15. iPhone構建配置啓用功能
- 16. 如何在git中完全自動啓動Jenkins for Maven作業?
- 17. TFS構建vNext - 成功構建後啓動過程
- 18. Jenkins DSL作業失敗
- 19. Maven Report配置與構建配置
- 20. 設置Jenkins構建名稱只在成功構建
- 21. Jenkins在多重配置作業中預構建和後構建
- 22. 選擇要在Jenkins多配置作業中構建的配置
- 23. 如何在Maven原型中包含Maven啓動配置?
- 24. JDBC:`con.rollback()`只有在`con.commit`沒有成功時纔有效果?
- 25. maven-failsafe-plugin錯誤和構建成功?
- 26. 如果某個特定的最後工作構建成功,則構建作業
- 27. 作業DSL創建「管道」類型作業
- 28. 如何在maven中創建可重用的構建配置?
- 29. 如何在使用Maven 2.0集成eclipse時禁用Maven構建?
- 30. 如何在gitlab中創建新分支時啓動Jenkins作業?
你實際上是說要動態地重新配置工作,而它運行?你想運行「maven」步驟,如果成功觸發dsl添加隨後運行的後續步驟? – 2015-02-17 11:10:11
沒有。詹金斯只有在構建成功的情況下才提供後期構建操作的方法 – Pushkar 2015-02-24 18:09:02
好吧我想我明白了;你想用Job-DSL創建一個PostBuildAction的maven作業。 PostBuildAction部分必須配置爲僅在maven步驟成功時才運行。 – 2015-02-24 23:15:54