上篇文章中已經將絕大部分,Jenkins容器項目打包的相關功能改造完成了,這里在對構建部署后的告警類操作進行一些補充
1.流水線告警
1.1 安裝釘釘插件
image-20250915111108685
1.2 配置釘釘插件
image-20250915111235865
image-20250915111532829
1.3 Pipeline釘釘告警
這里我就把成功構建的通知邏輯寫到這里了,因為其他的通知邏輯基本也差不多,沒必要全貼出來,大家自己也可以進行改造,(另外圖中是Jenkins-DingDing這個通知機器人,截圖的時候沒有截取到下面的BuildBoy通知機器人,你再ID里面添加的那個名字就調用哪個名字)
def createVersion() {// 創建了一個方法createVersion()// 定義一個時間戳+構建ID作為版本號,為tag使用return new Date().format('yyyyMMddHHmmss') + "_${env.BUILD_ID}"
}
pipeline {agent { node { label "node47"}}//上章節內容此處勝率// .......}post {always{script {println("流水線結束后,經常做的事情")}}success {script {// 檢查用戶選擇的是分支還是標簽if (params.BRANCH_TAG.startsWith("rel-")) {echo "選擇的是標簽,不打標簽。"} else if (params.BRANCH_TAG == "master" || params.BRANCH_TAG == "origin/master") {// 只有在 master 分支時打標簽sh "git tag rel-${_tag}" // 打標簽sh "git push origin rel-${_tag}" // 推送標簽到遠程echo "為分支 ${params.BRANCH_TAG} 打標簽 rel-${_tag}。"} else {echo "當前分支 ${params.BRANCH_TAG} 不是 master,不打標簽。"}// 構建通知文本def notificationText = []notificationText.add("- 成功構建部署: ${JOB_NAME}項目!\n")notificationText.add("- 版本: ${BRANCH_TAG}\n")notificationText.add("- 持續時間: ${currentBuild.durationString}\n")notificationText.add("- 任務: #${JOB_NAME}")// 根據條件添加標簽信息if (params.BRANCH_TAG == "master" || params.BRANCH_TAG == "origin/master") {notificationText.add("- 標簽: rel-${_tag}\n") // 僅在打標簽時添加}// 發送成功通知dingtalk (robot: 'BuildBoy',type: 'MARKDOWN',title: "success: ${JOB_NAME}",text: notificationText // 直接傳遞列表)}}failure{dingtalk (robot: 'BuildBoy',type:'MARKDOWN',title: "fail: ${JOB_NAME}",text: ["- 失敗構建部署:${JOB_NAME}項目!\n- 版本:${BRANCH_TAG}\n- 持續時間:${currentBuild.durationString}\n- 任務:#${JOB_NAME}"])}aborted{dingtalk (robot: 'BuildBoy',type:'MARKDOWN',title: "aborted: ${JOB_NAME}",text: ["- 流水線被取消:${JOB_NAME}項目!\n- 版本:${BRANCH_TAG}\n- 持續時間:${currentBuild.durationString}\n- 任務:${JOB_NAME}"])}}
}
今天時間比較趕就寫到這里先,如果文章對您有幫助,給我點個贊哦!非常感謝!