写点什么

邮件告警插件安装和使用:提取 Job 构建结果与多种通知方式

  • 2024-05-29
    北京
  • 本文字数:1829 字

    阅读完需:约 6 分钟

更多软件测试学习资料戳

在持续集成(CI)和持续交付(CD)过程中,及时获取构建结果和通知是确保项目质量和进度的重要环节。通过邮件告警插件,我们可以在 Job 构建结果出现异常时,第一时间收到通知。本文将介绍如何在 Jenkins 中安装和使用邮件告警插件,提取构建结果,并通过多种通知方式提醒团队成员。

一、安装邮件告警插件

  1. 安装邮件扩展插件(Email Extension Plugin)

  • 登录 Jenkins 的管理控制台。

  • 进入“Manage Jenkins” -> “Manage Plugins”。

  • 在“Available”标签下搜索“Email Extension Plugin”。

  • 勾选插件并点击“Install without restart”进行安装。

配置邮件通知

  • 安装完成后,进入“Manage Jenkins” -> “Configure System”。

  • 找到“Extended E-mail Notification”部分,配置 SMTP 服务器和邮件发送设置。例如:SMTP server: smtp.example.comDefault user e-mail suffix: @example.comSender E-mail Address: jenkins@example.comSMTP Authentication: 配置 SMTP 认证信息(如有必要)SMTP Port: 25或其他端口 Use SSL: 根据 SMTP 服务器配置选择是否使用 SSL

测试邮件配置

  • 配置完成后,点击“Test configuration by sending test e-mail”。

  • 输入接收测试邮件的邮箱地址,点击“Test”发送测试邮件,确保邮件配置正确。

二、配置 Job 的邮件通知

  1. 配置 Job


  • 进入需要配置邮件通知的 Job。

  • 点击“Configure”进入 Job 的配置页面。

  • 在“Post-build Actions”中选择“Editable Email Notification”。

配置邮件通知触发条件

  • Project Recipient List:指定接收通知的邮件地址,多个地址用逗号分隔。

  • Content Type:选择邮件内容格式(HTML、Plain text、XML 等)。

  • Default Subject:设置邮件主题,可以使用变量(如$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!)。

  • Default Content:设置邮件内容,支持使用变量和 HTML 格式。例如


<p>Job: $PROJECT_NAME</p><p>Build Number: $BUILD_NUMBER</p><p>Status: $BUILD_STATUS</p><p>Console Output: $BUILD_URL/console</p>
复制代码
  • Triggers:选择触发邮件通知的条件(如构建失败、构建成功、构建不稳定等)。

  1. 高级配置

  • 点击“Advanced Settings”可以进行更详细的配置,如附件、预定义的变量、不同触发条件下的邮件内容等。

三、多种通知方式

除了邮件通知,Jenkins 还支持多种其他通知方式,如 Slack、微信、短信等。以下是几种常见的配置方法:

  1. Slack 通知

安装 Slack 插件

  • 在“Manage Plugins”中搜索并安装“Slack Notification Plugin”。

  • 配置 Slack 插件


    进入“Manage Jenkins” -> “Configure System”。

    找到“Slack”部分,配置团队域名和集成 Token。

  • 配置 Job 的 Slack 通知


    在 Job 的配置页面,添加“Slack Notifications”构建后操作。

    配置 Slack 频道和通知触发条件。

微信通知

  • 安装微信企业号插件


    在“Manage Plugins”中搜索并安装“WeChat Notification Plugin”。

  • 配置微信企业号插件


    进入“Manage Jenkins” -> “Configure System”。

    找到“WeChat”部分,配置企业号的相关信息(如企业 ID、应用 ID、Secret 等)。

  • 配置 Job 的微信通知


    在 Job 的配置页面,添加“WeChat Notifications”构建后操作。

    配置接收通知的用户和通知触发条件。

短信通知

  • 安装相关插件


    根据使用的短信服务商,安装对应的插件或通过 API 集成。

  • 配置插件或 API


    进入“Manage Jenkins” -> “Configure System”,配置短信服务的相关信息。

  • 配置 Job 的短信通知


    在 Job 的配置页面,添加相应的短信通知操作。

    配置接收通知的电话号码和通知触发条件。

四、提取 Job 构建结果

为了在通知中包含详细的构建结果信息,可以使用 Jenkins 提供的环境变量和脚本:

  • 环境变量:在邮件内容或其他通知内容中使用 Jenkins 环境变量,如:


    $BUILD_NUMBER:构建编号

    $BUILD_STATUS:构建状态

    $BUILD_URL:构建 URL

    $PROJECT_NAME:项目名称

  • 脚本:使用 Groovy 脚本提取更多信息。在邮件扩展插件的“Advanced Settings”中,可以编写 Groovy 脚本来生成邮件内容。

例如,提取构建日志中的关键信息并包含在邮件中:

def buildLog = manager.build.logdef importantInfo = buildLog.findAll { it.contains("ERROR") || it.contains("WARN") }manager.listener.logger.println("Important Info: " + importantInfo)return """<p>Build Number: ${manager.build.number}</p><p>Status: ${manager.build.result}</p><p>Important Logs:</p><pre>${importantInfo}</pre>"""
复制代码

通过以上步骤和配置,你可以在 Jenkins 中实现邮件告警和多种通知方式,及时获取构建结果并通知团队成员,确保项目的质量和进度。


用户头像

社区:ceshiren.com 微信:ceshiren2023 2022-08-29 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料、实事更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬

评论

发布
暂无评论
邮件告警插件安装和使用:提取Job构建结果与多种通知方式_测试_测吧(北京)科技有限公司_InfoQ写作社区