jenkins流水线发布告警

概述

  • 通知

    1
    2
    3
    jenkins进行自动化部署代码后,项目发布的成功或失败都没有相应的通知。
    运维人员无法及时发现项目的部署情况,需要人为查看比较麻烦。
    所以采用相关通知,如钉钉。
  • 使用钉钉优势

1
2
3
实现简单、实时提醒、便于查看等。
# 邮件缺点
配置复杂、有延迟、邮件容易被拒收等。

配置

  • 钉钉配置消息机器人
1
2
3
1. 打开钉钉群,点击群机器人。
2. 添加自定义机器人,可修改机器人头像、名称等。
3. 复制webhook地址
  • 配置jenkins
1
2
3
4
5
1. 安装插件,Dingding(钉钉)
2. 项目配置里,构建后操作,增加构建后操作 选择钉钉通知器配置
jenkin URL:http://192.168.100.6:8080
钉钉access token:fd93o4kjhsdgkjhdfgas****
选择需要通知的种类

普通任务通知

先安装插件:dingding



pipeline流水线

  • 安装插件:安装钉钉
  • pipeline里添加钉钉
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
pipeline {
agent any

//任务集合,一个大的任务
stages {
stage('获取代码') {
steps {
checkout([$class: 'GitSCM', branches: [[name: '${git_version}']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: 'http://192.168.100.6/liyk-group/liyk-group-1.git']]])
}
}
stage('代码质检') {
steps {
sh '/data/sonar-scanner/bin/sonar-scanner -Dsonar.projectKey=html -Dsonar.projectName=${JOB_NAME} -Dsonar.sources=${WORKSPACE} -Dsonar.host.url=http://192.168.100.4:9000 -Dsonar.login=0ec647d8c7533a1bdb4a7fc02192a590120501b9'
}
}
stage('代码构建') {
steps {
echo "build is ok"
}
}
stage('代码部署') {
steps {
sh '/data/scripts/deploy-nginx.yaml'
}
}
}
post {
failure {
dingtalk (
robot: '66518d54-742d-4e0e-8fda-30882fa6cafa',
type: 'LINK',
atAll: false,
messageUrl: 'http://192.168.100.2/cuowu.png',
title: "${JOB_NAME} ID:${BUILD_ID}",
text: ["msg: 部署失败"]
)
}
success {
dingtalk (
robot: '66518d54-742d-4e0e-8fda-30882fa6cafa',
type: 'LINK',
atAll: false,
messageUrl: 'http://192.168.100.2/cuowu.png',
title: "${JOB_NAME} ID:${BUILD_ID}",
text: ["msg: 部署成功"]
)
}
}
}


-------------本文结束感谢您的阅读-------------
原创技术分享,感谢您的支持。