[代码上线]-微信通知
2021/8/18 23:10:19
本文主要是介绍[代码上线]-微信通知,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第1章 Jenkins使用微信发送结果通知
1.登陆微信企业公众号
登陆并填写注册信息:
https://work.weixin.qq.com/wework_admin/loginpage_wx
2.创建新应用
3.填写应用详细信息
上传logo,填写应用名称 ,应用介绍等
4.查看并记录相关信息
创建应用之后会生成几个信息需要我们记录一下,因为一会会用到
1.Agentid 2.Secret 3.企业ID 4.用户账号
5.测试发送消息
接下来我们来测试一下接口调用是否正常,测试地址:
http://work.weixin.qq.com/api/devtools/devtool.php
6.修改weixin发送消息脚本
修改脚本里的企业ID,Secret,AgentID信息为自己的:
cat >/scripts/jenkins/jenkins_notify.py <<'EOF' #!/usr/bin/python2.7 #_*_coding:utf-8 _*_ import requests,sys,json import urllib3 urllib3.disable_warnings() reload(sys) sys.setdefaultencoding('utf-8') def GetToken(Corpid,Secret): Url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken" Data = { "corpid":Corpid, "corpsecret":Secret } r = requests.get(url=Url,params=Data,verify=False) Token = r.json()['access_token'] return Token def SendMessage(Token,Subject,Content, ProName): Url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s" % Token data = { # 接收通知的用户账号,多个用逗号隔开 "touser" : "ZhangYa", "msgtype" : "text", # 自己的AgentId "agentid" : 1000009, "text" : { "content" : "[项目名称] : " + ProName + '\n' + "[项目地址] : " + Subject + '\n' + Content + '\n' }, "safe":0 } r = requests.post(url=Url,data=json.dumps(data),verify=False) return r.text def action_from_file(filename): try: str1 = '[变更日志] : ' with open(filename, 'r') as f: for i in f.readlines(): str1 += i print str1 if len(str1) == 17: str1 += "无变更" return str1 except Exception as e: str1 += str(e) if __name__ == '__main__': # 企业 ID Corpid = "wwd26fdfb9940e7efa" # Secret Secret = "0yf0x_KuQi1IfGkI__K77k_JpjK1IOflxQTIre6qHM8" Subject = sys.argv[1] Content = action_from_file(sys.argv[2]) ProName = sys.argv[3] Token = GetToken(Corpid, Secret) Status = SendMessage(Token,Subject,Content,ProName) print Status EOF
7.安装python脚本需要的依赖
yum install python-pip -y pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
8.配置Jenkins项目的构建环境
参数解释:
%3$s(at %4$s via %1$s) : 参数分别为:Change Log,时间,提交人 yyyy-MM-dd HH:mm:ss: 时间格式 年-月-日 小时:分钟:秒
插件安装方式:
Add Changelog Information to Environment 选项是需要插件支持的 如果没有选项,需要自己去github下载插件然后编译拷贝到jenkins插件目录下,项目地址: https://github.com/daniel-beck/changelog-environment-plugin 解压进入目录,执行mvn verify命令 执行完会在changelog-environment-plugin-master/target/下生成一个changelog-environment.hpi文件 上传到jenkins的插件目录下重启后即可使用。
9.添加构建后操作
执行内容:
echo "==========Start Notify==============" echo ${SCM_CHANGELOG} > /tmp/${JOB_NAME}_change.log python /scripts/jenkins/jenkins_notify.py ${BUILD_URL} /tmp/${JOB_NAME}_change.log ${JOB_NAME} rm -fv /tmp/${JOB_NAME}_change.log
插件解释:
上述操作需要两个插件的支持: changelog:提供SCM_CHANGELOG; Hudson Post build task:提供 Post build task;
10.提交变更查看信息
此时我们如果提交新的代码,就会触发jenkins执行操作,然后将结果通过微信发送到手机上
这篇关于[代码上线]-微信通知的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南