编辑
2025-09-25
Devops
00

目录

一、下载插件
二、Jenkins配置钉钉

一、下载插件

image.png

然后去钉钉添加机器人 image.png

image.png

image.png

image.png

复制下来 image.png

js
https://oapi.dingtalk.com/robot/send?access_token=f1888f239560668660d65047a4c8079ceba05e96c07c6a3f7686f6875b602839

二、Jenkins配置钉钉

image.png

image.png

然后去gitlab仓库的jenkins文件添加代码

image.png

js
pipeline { agent any stages { stage('1.拉取git仓库代码') { steps { checkout scmGit(branches: [[name: '${tag}']], extensions: [], userRemoteConfigs: [[credentialsId: '41ccb3f5-d95e-4f7c-94cd-8af30c885e0d', url: 'http://192.168.201.105:8929/root/mytest1.git']]) } } stage('2.通过Maven构建项目') { steps { sh '/var/jenkins_home/maven/bin/mvn clean package -DskipTests' } } stage('3.质量代码检测') { steps { sh '/var/jenkins_home/sonar-scanner-4.8.0.2856-linux/bin/sonar-scanner -Dsonar.sources=./ -Dsonar.projectname=${JOB_NAME} -Dsonar.projectKey=${JOB_NAME} -Dsonar.java.binaries=./target/ -Dsonar.login=178e1842a7318cabd37749b7f2f5a5b88a5fb997' } } stage('4.Docker制作镜像') { steps { sh '''cp -rf ./target/*.jar ./docker/ docker build -t ${JOB_NAME}:${tag} ./docker/''' } } stage('5.自定义镜像推送Harbor') { steps { sh '''docker login 192.168.201.107:80 -u admin -p 123456 docker tag ${JOB_NAME}:${tag} 192.168.201.107:80/${JOB_NAME}/${JOB_NAME}:${tag} docker push 192.168.201.107:80/${JOB_NAME}/${JOB_NAME}:${tag}''' } } stage('6.通知目标服务器拉取镜像启动') { steps { sshPublisher(publishers: [sshPublisherDesc(configName: '测试本机服务器', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: "jiaoben.sh 192.168.201.107:80 mytest1test ${JOB_NAME} $tag $host_port $port", execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)]) } } } post { success { dingtalk ( robot: 'jenkins-dingding', type: 'MARKDOWN', title: "构建成功: ${env.JOB_NAME}", text: [ "### 项目: ${env.JOB_NAME}", "### 版本: ${tag}", "### 构建结果: SUCCESS", "### 持续时间: ${currentBuild.durationString}" ], at: [] ) } failure { dingtalk ( robot: 'jenkins-dingding', type: 'MARKDOWN', title: "构建失败: ${env.JOB_NAME}", text: [ "### 项目: ${env.JOB_NAME}", "### 版本: ${tag}", "### 构建结果: FAILURE", "### 持续时间: ${currentBuild.durationString}", "**失败原因:**", "${currentBuild.currentResult}" ], atAll: true ) } } }

执行完成Jenkins流水线任务后,成功通知钉钉机器人 image.png

本文作者:松轩(^U^)

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

Document