Jenkins构建完成发送飞书消息通知

作者:梅琳marlin2024.01.17 13:40浏览量:70

简介:在Jenkins中集成飞书消息通知,实现构建完成自动发送通知的功能。本文将介绍如何配置Jenkins与飞书API的集成,以及如何编写脚本发送消息。

在Jenkins中集成飞书消息通知,可以让你在构建完成时自动接收通知,以便及时了解构建状态。下面将介绍如何配置Jenkins与飞书API的集成,以及如何编写脚本发送消息。
步骤1:获取飞书API访问令牌
首先,你需要在飞书开放平台上注册并创建一个应用,以获取API访问令牌。以下是获取API访问令牌的步骤:

  1. 打开飞书开放平台,并登录你的账户。
  2. 点击“创建应用”按钮,创建一个新的应用。
  3. 在应用详情页面中,找到“API 令牌”或“访问令牌”选项,复制该令牌。
  4. 将该令牌保存在安全的地方,以便在Jenkins中使用。
    步骤2:安装Jenkins插件
    在Jenkins中,你需要安装一个名为“EnvInject”的插件,以便在构建过程中注入环境变量。以下是安装该插件的步骤:
  5. 打开Jenkins,并登录到你的账户。
  6. 点击“管理插件”选项。
  7. 在插件市场中搜索“EnvInject”插件,并安装它。
  8. 重启Jenkins以使插件生效。
    步骤3:配置Jenkins构建任务
    接下来,你需要在Jenkins中配置构建任务,以便在构建完成时发送飞书消息通知。以下是配置构建任务的步骤:
  9. 打开Jenkins,并选择你要配置构建任务的项目。
  10. 点击“配置”选项。
  11. 在配置页面中,找到“构建后操作”部分。
  12. 点击“添加构建后操作”按钮,并选择“发送邮件”选项。
  13. 在邮件通知设置中,填写收件人、主题和正文等信息。
  14. 在“环境变量”部分,使用“Inject environment variables from a file or script”选项注入环境变量。选择一个文件或编写一个脚本,以设置飞书API访问令牌和其他相关环境变量。例如:
    1. FL_API_TOKEN=你的API访问令牌
    2. FL_USER_ID=接收消息的用户ID或群组ID
  15. 保存配置。
    步骤4:编写脚本发送飞书消息通知
    如果你想通过脚本发送飞书消息通知,你可以使用以下示例脚本(Python):
    1. import requests
    2. import json
    3. def send_fl_message(token, user_id, message):
    4. url = 'https://open.feishu.cn/open-apis/bot/v2/hook/send_msg'
    5. headers = {
    6. 'Content-Type': 'application/json',
    7. 'Authorization': 'Bearer ' + token,
    8. }
    9. data = {
    10. 'open_id': user_id,
    11. 'msg_type': 'text',
    12. 'content': {
    13. 'text': message,
    14. },
    15. }
    16. response = requests.post(url, headers=headers, data=json.dumps(data))
    17. return response.status_code == 200
    你可以根据需要修改脚本中的URL、请求头和消息内容。确保在脚本中使用正确的API访问令牌和接收消息的用户ID或群组ID。在Jenkins构建过程中调用该脚本,以发送飞书消息通知。例如:send_fl_message('${FL_API_TOKEN}', '${FL_USER_ID}', '构建完成')。这样,当Jenkins构建完成时,脚本将自动发送飞书消息通知给指定的用户或群组。