温馨提示×

CentOS Jenkins配置中的邮件通知如何设置

小樊
40
2025-11-08 04:37:11
栏目: 智能运维

CentOS Jenkins邮件通知配置步骤

1. 安装必要插件

首先需安装Email Extension Plugin(支持灵活的邮件模板和触发器),步骤如下:

  • 登录Jenkins管理界面,点击Manage Jenkins > Manage Plugins
  • 切换至Available标签页,搜索“Email Extension Plugin”。
  • 勾选该插件,点击Install without restart(无需重启即可生效)。

2. 配置全局SMTP邮件服务器

全局配置是Jenkins发送邮件的基础,需在系统设置中完成:

  • 进入Manage Jenkins > Configure System
  • 向下滚动至Extended E-mail Notification部分,填写以下信息:
    • SMTP Server:输入SMTP服务器地址(如Gmail为smtp.gmail.com,企业邮箱替换为对应地址)。
    • SMTP Port:输入端口(常用587(TLS)或465(SSL),根据SMTP服务商要求调整)。
    • User Name:SMTP认证用户名(通常为发件邮箱地址,如your-email@gmail.com)。
    • Password:SMTP认证密码(若使用Gmail,需提前在账户设置中生成应用专用密码,避免直接使用账户密码)。
    • 勾选Use SMTP Authentication(启用认证)和Use SSL/TLS(启用加密,根据SMTP服务器要求选择)。
    • Default Subject Prefix:邮件主题前缀(如[Jenkins],便于快速识别)。
    • Default Content Type:邮件内容类型(推荐HTML,支持富文本格式)。
    • From Address:发件人地址(建议与SMTP用户名一致,如jenkins@yourdomain.com)。
  • 点击页面底部Test Configuration,输入测试收件人邮箱,点击Send test e-mail验证配置是否正确(若收到测试邮件,则说明SMTP配置成功)。

3. 配置项目特定邮件通知

在具体Jenkins Job中设置触发条件和收件人,步骤如下:

  • 进入目标Job的配置页面(点击Job名称 > Configure)。
  • 向下滚动至Post-build Actions(构建后操作)部分,点击Add post-build action,选择Editable Email Notification
  • 配置以下关键参数:
    • Recipient List:收件人邮箱地址(多个地址用逗号分隔,如dev1@example.com,dev2@example.com;也可通过Recipient Providers选择动态收件人,如“构建失败时通知提交者”)。
    • Subject:邮件主题(支持变量,如Build Status: ${BUILD_STATUS} - Job: ${JOB_NAME}${BUILD_STATUS}会自动替换为“SUCCESS”或“FAILURE”)。
    • Body:邮件正文(支持HTML和Groovy脚本,如:
      <html>
        <body>
          <h2>Build Status: ${BUILD_STATUS}</h2>
          <p>Project: ${JOB_NAME}</p>
          <p>Build Number: ${BUILD_NUMBER}</p>
          <p>Build URL: ${BUILD_URL}</p>
          <p>Changes: ${CHANGES}</p>
        </body>
      </html>
      ```)。  
      
    • Triggers:设置触发邮件的条件(如“构建失败时发送”“构建成功时发送”“不稳定时发送”等,可根据需求勾选多个)。
  • 点击Save保存Job配置。

4. 测试邮件通知

  • 手动触发Job构建(点击Build Now)。
  • 观察构建日志,确认是否有邮件发送记录(若配置正确,日志中会显示“Sending email to: xxx@example.com”)。
  • 检查收件人邮箱,确认是否收到符合预期的邮件(包含主题、正文及动态内容)。

注意事项

  • 若使用Gmail等第三方邮箱,需确保已开启允许不够安全的应用访问(不推荐)或使用应用专用密码(推荐)。
  • 若SMTP服务器为自收邮件(如企业内部SMTP),可能无需开启SSL/TLS,但需确认服务器要求。
  • 邮件内容中的变量(如${BUILD_STATUS}${JOB_NAME})可根据Jenkins文档调整,实现动态内容展示。

0