Jenkins 钉钉 机器人 Python版本

17 篇文章 0 订阅

最近在做一点Jenkins的探索,想把OCLint的结果解析出来用钉钉的形式发送到钉钉群(参考文档),以便大家接受及时消息。

简单说一下大概的步骤:

创建一个机器人


按照下一步下一步就行了。
最后:



获得到一个 webhook

发送消息

其实发送消息十分简单,官网写的比较详细了(官方文档)。
但是官方的文档只有Java和PHP的。

但是。。。。。Java好久不用,PHP不会。。。。。。。

只能用python想办法,没有啥样的实例只能自己动手了:

    #!/usr/bin/python
    #coding=utf-8
    import urllib
    import urllib2
    import json
    import sys
    import socket

    reload(sys)
    sys.setdefaultencoding('utf8')

    # 获取钉钉消息
    def extractionMessage() :
        #拼接需要发送的消息
        return "##### <font color=orange> 钉钉message </font>"

    #发送钉钉消息
    def sendDingDingMessage(url, data):
        req = urllib2.Request(url)
        req.add_header("Content-Type", "application/json; charset=utf-8")
        opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())
        response = opener.open(req, json.dumps(data))
        return response.read()

    #主函数
    def main():
        posturl = "https://oapi.dingtalk.com/robot/send?access_token=????????????????????????????"
        data = {"msgtype": "markdown", "markdown": {"text": extractionMessage(),"title":"Jenkins","isAtAll": "false"}}
        sendDingDingMessage(posturl, data)

    main()

具体解析OCLint的结果XML的代码和解析log的代码就不贴了,别忘了 把main()中的posturl换成自己的webhook地址 就OK了。

附上一个结果,这里用的是markdown格式,其他格式参考官方文档:(官方文档)。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值