我在探索Jenkins的分段功能,我想要設計一個快速和精益的設置。基本上,Jenkins提倡使用階段來在構建過程中進行分區,並提供關於構建過程的良好視覺反饋。Maven和Jenkinsfile--跳過以前的階段
所以Jenkinsfile
去像
stage("Build")
bat("mvn compile")
stage("Test")
bat("mvn test")
stage("Deploy")
bat("mvn deploy")
這個效果很好,但感覺不對,因爲deploy
和test
都將再次這樣做之前階段的活動。因此,在此設置中,我構建了三次(儘管因沒有更改而跳過編譯)並測試了兩次(在測試和部署運行中)。
當我谷歌周圍我可以找到各種開關,其中一個用於跳過單元測試,但編譯和依賴性解決步驟發生,無論我做什麼。
在這種情況下,我需要在速度和階段之間進行選擇嗎?還是我可以同時選擇?
我的意思是:
stage("Resolve dependencies, build, test and deploy")
bat("mvn deploy")
是迄今爲止最快的方法,但它不能在詹金斯交出了漂亮的進度表。
您可以創建[自定義maven生命週期](https://developer.jboss.org/wiki/CreatingACustomLifecycleInMaven) –
使用'-DskipTests'跳過_deploy_階段中的測試。你的應用程序已經編譯好了,應該會自動檢測到。 – StephenKing