jenkins使用pipeline构建项目时发送钉钉通知

现在使用jenkins做持续集成和发布的越来越多,使用钉钉用来处理工作、交流的也越来越多,一般情况下,我们希望jenkins完成一个job的时候可以通知相关人员完成的状态(成功或失败),邮件是一个不错的选择,但是如果能使用钉钉进行通知,那就更加方便了。
   目前jenkins已有插件可以支持通过钉钉发送消息,下面就简单介绍一下,如何使用Jenkins的钉钉插件发送消息到钉钉上。

一、获取并安装钉钉插件

登入jenkins,进入系统管理——>插件管理,再可选插件栏搜索“dingding”,再过滤出来的插件列表中选择“Dingding[钉钉] Plugin”,安装即可。

java 集成 钉钉 jenkins钉钉_群组


java 集成 钉钉 jenkins钉钉_java 集成 钉钉_02


二、创建钉钉的自定义机器人

创建一个钉钉群组,或者使用已有群组,注意:只有群主有权限创建钉钉机器人。进入群组,选择群设置,选择群机器人

java 集成 钉钉 jenkins钉钉_java 集成 钉钉_03


选择添加机器人,在选择自定义,按照步骤完成添加

java 集成 钉钉 jenkins钉钉_发送消息_04


java 集成 钉钉 jenkins钉钉_群组_05


选择已添加的机器人可以看到webhook一栏有一个地址,这便是我们Jenkins需要使用的地方,选择复制,将地址复制下来。

java 集成 钉钉 jenkins钉钉_群组_06


三、普通job使用钉钉通知

1. 在jenkins中创建一个job,创建过程不赘述,在“增加构建后操作步骤”中选择钉钉通知 :

java 集成 钉钉 jenkins钉钉_运维_07


按照提示进行相关配置即可:

java 集成 钉钉 jenkins钉钉_群组_08


ps:jenkins Url最后的“/”必须要写,access_token只需要填写,我们复制的钉钉webhook中的token部分。

2.也可以在在构建后步骤中选择:Send Message To Ding Talk

java 集成 钉钉 jenkins钉钉_java 集成 钉钉_09


按照要求填写相关内容即可

java 集成 钉钉 jenkins钉钉_运维_10


3.消息测试

点击构建我们刚刚创建的测试任务,完成后,我们的钉钉就会收到构建消息,亲测,相比邮件通知,即时性很高,基本刚刚构建完成消息就会收到。

java 集成 钉钉 jenkins钉钉_java 集成 钉钉_11


四、当job为pipeline类型时,在pipeline脚本中添加发送钉钉消息

1.网上很多资料都是基于普通job的钉钉通知,那么如何通过pipeline脚本来实现钉钉消息通知呢?很简单,只需要在pipeline脚本中添加一段代码即可:

post {
		success {
			dingTalk accessToken:'你的钉钉webhook,完整的webhook即可', 
			imageUrl:'图片地址', 
			jenkinsUrl:'jenkins地址/', 
			message:'成功时,想要发送的消息', 
			notifyPeople:''
			  }
		failure {
			dingTalk accessToken:'你的钉钉webhook,完整的webhook即可', 
			imageUrl:'图片地址', 
			jenkinsUrl:'jenkins地址/', 
			message:'失败时想要发送的消息', 
			notifyPeople:''
			  }
			}

了解更多:https://github.com/jenkinsci/dingding-notifications-plugin 2.构建测试

java 集成 钉钉 jenkins钉钉_运维_12


构建完成后,在群里我们就可以收到相关的通知了。

五、第一次写文章,不足的地方,请多指教