jenkins+sonarqube流水線腳本模板


pipeline {
//這個任務在哪個主機上運行
//agent any

//將這個項目運行在slave上
agent { label 'node1' }

//參數化構建,主要設定git_version變量的值
parameters {
string(name: 'git_version', defaultValue: 'v1.1', description: '選擇你要部署的tag??')
}

stages { //整個部署的任務

stage ('獲取代碼'){
steps {
checkout([$class: 'GitSCM', branches: [[name: '${git_version}']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '(獲取代碼庫ssh密鑰)', url: 'git@gitlab.oldxu.com:dev/monitor.git']]])
}
}
stage ('代碼質檢'){
steps {
withSonarQubeEnv('SonarQube') {
sh '/usr/local/sonar-scanner/bin/sonar-scanner -Dsonar.projectKey=${JOB_NAME} -Dsonar.sources=.'
}
}
}
stage ('代碼構建') {
steps {
echo "構建成功"
//sh 'mvn package -Dmaven.test.skip=true' //java項目
}
}
stage ('確認部署?') {
steps {
input message: '是否部署', ok: 'ok'
}
}
stage('代碼部署'){
steps {
sh 'sh -x /scripts/html_deploy_tag.sh'
}
}
}

post { //stages所有任務執行后觸發post
failure { //構建失敗通知
dingTalk accessToken:'(釘釘通知密鑰)',imageUrl: '', jenkinsUrl: 'http://jenkins.oldbgx.com:8080/', message: '代碼部署失敗', notifyPeople: 'phone'
}

success { //構建成功通知
dingTalk accessToken:'(釘釘通知密鑰)',imageUrl: '', jenkinsUrl: 'http://jenkins.oldbgx.com:8080/', message: '代碼部署成功', notifyPeople: 'phone'
}
}
}

 

 

 

 

 

 

 

 

 

自用!!!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM