[英]Single Jenkins job with multiple deployment
我們如何為不同的環境配置Jenkins作業。 我們正在使用git存儲庫,該存儲庫具有不同的分支,如master,test和devl,並且這些環境部署在不同的服務器中。 我已經配置了帶參數的構建選項,因此可以使用單選按鈕從此作業構建任何分支。 當我選擇devl分支時,工作需要從devl分支獲取最新代碼並進行構建,然后將其部署到devl服務器中。 如果選擇測試,則需要將其部署到測試服務器中。 我們如何在同一工作中配置此多個部署?
您可以使用https://wiki.jenkins.io/display/JENKINS/Pipeline+Multibranch+Plugin 。
該插件將監視您回購的所有分支,並基於Jenkinsfile構建不同的分支。
在Jenkinsfile中,您可以使用when
表達式:
stage('Deploy devl') {
when {
expression { env.BRANCH_NAME == 'devl' }
}
steps {
sh 'deploy devl'
}
}
我的建議-不要太深入細節(因為我沒有這些細節)。
在每個不同的環境中都有一個作業,將每個作業連接到相關的git存儲庫和分支,每當構建此作業時,它將執行scm checkout(您也可以使用鈎子在更改時觸發它)並部署到相關環境。
如果您會回答#2,我也許可以建議其他選項來管理此問題(可能是在同一工作下-如果出於某些原因需要這樣做)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.