⭐添加飞书自定义机器人
🎀设置飞书签名校验
- 我这个设置了签名的,具体怎么设置签名可以查看飞书官方文档
⭐安装python 环境
因为我们这里需要使用python语言发送消息,所以需要安装python环境
yum install python3 python3-devel python3-pip
# 请求工具
python3 -m pip install requests
🎀发送消息python脚本
#!/usr/bin/env python
# -*- encoding:utf-8 -*-
import sys
import requests
import time
import hashlib
import base64
import hmac
import calendar
def gen_sign(timestamp, secret):
string_to_sign = '{}\n{}'.format(timestamp, secret)
hmac_code = hmac.new(string_to_sign.encode("utf-8"), digestmod=hashlib.sha256).digest()
# 对结果进行base64处理
sign = base64.b64encode(hmac_code).decode('utf-8')
return sign
JOB_URL = sys.argv[1]
JOB_NAME = sys.argv[2]
BUILD_NUMBER = sys.argv[3]
isFinish = "开始构建" if str(sys.argv[4]) == str(0) else "构建完成"
timestamp = str(calendar.timegm(time.gmtime()))
currenttime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
sign_key = '你的签名'
sgin = gen_sign(timestamp, sign_key)
url = '你的webhook 地址'
method = 'post'
headers = {
'Content-Type': 'application/json'
}
json = {
"timestamp": "" + timestamp + "",
"msg_type": "interactive",
"sign": "" + sgin + "",
"card": {
"config": {
"wide_screen_mode": True,
"enable_forward": True
},
"elements": [{
"tag": "div",
"text": {
"content": "项目名称:" + JOB_NAME + "\n构建编号:第" + BUILD_NUMBER + "次构建\n运行时间:" + currenttime,
"tag": "lark_md"
}
}, {
"actions": [{
"tag": "button",
"text": {
"content": "查看报告",
"tag": "lark_md"
},
"url": JOB_URL,
"type": "default",
"value": {}
}],
"tag": "action"
}],
"header": {
"title": {
"content": JOB_NAME + " "+isFinish+"",
"tag": "plain_text"
}
}
}
}
requests.request(method=method, url=url, headers=headers, json=json)
🎀把脚本上传倒linux上
可以看到上传去是没有执行权限的,一定要记得叫上执行权限
chmod +x sendMsg.py
🎀jenkins 上执行脚本
- 最后一个参数标识 0 开始构建 1 构建完成
/opt/java/script/sendMsg.py
这一段不要跟着我写 根据自己存放的位置和名字来
python3 /opt/java/script/sendMsg.py $JOB_URL $JOB_NAME $BUILD_NUMBER 0
⭐步骤总结
- 在Linux环境下使用Jenkins来构建和部署项目,并通过飞书机器人发送通知的步骤如下:
- 安装和配置Jenkins:首先,需要在Linux服务器上安装和配置Jenkins。可以按照Jenkins官方文档提供的步骤进行安装,并确保Jenkins服务器正常运行。
- 创建Jenkins任务:使用Jenkins的Web界面创建一个新的任务或者选择现有的任务。任务可以是一个构建或部署项目的作业。
- 配置构建步骤:在任务的配置页面上,配置构建步骤,例如从代码仓库拉取代码、编译项目、运行测试等。根据项目的需求和具体操作,可以添加一系列构建步骤。
- 安装和配置飞书机器人插件:在Jenkins的插件管理页面中,搜索并安装飞书机器人插件。安装完成后,在全局配置页面中,配置飞书机器人的Webhook URL,这将用于发送通知消息到飞书。
- 添加Post-build Actions:在任务的配置页面上,找到“Post-build Actions”部分,选择“Send notification to Feishu”选项。在该选项中,填写消息的标题、内容等信息,可以使用Jenkins的环境变量来动态地生成通知内容。
- 保存并触发构建:完成所有配置后,保存任务的设置。然后,手动触发构建,或者设置定时触发构建等方式启动任务。
- 查看飞书通知:一旦Jenkins任务完成构建,飞书机器人将根据配置的Webhook URL发送通知消息。在飞书中登陆相应的机器人账号,即可查看接收到的通知信息。
- 通过上述步骤,你可以在Linux环境下使用Jenkins进行项目构建和部署,并通过飞书机器人实现通知功能。这样可以及时了解项目构建的状态或者其他相关信息,提高开发和运维的效率。