欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Jenkin邮件收发实现原理及过程详解

程序员文章站 2022-03-09 21:53:03
一、配置 jenkins 邮箱的全局配置检查是否已安装插件email extension plugin获取 qq 邮箱授权码进入 qq 邮箱 ---> 设置 ---> 账户配置 jenki...

一、配置 jenkins 邮箱的全局配置

检查是否已安装插件email extension plugin

获取 qq 邮箱授权码

进入 qq 邮箱 ---> 设置 ---> 账户

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

配置 jenkins 邮箱的全局配置:系统管理 - 系统设置 - 完成邮箱

配置 - 测试是否配置正确

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <title>${env, var="job_name"}-第${build_number}次构建日志</title>
</head>

<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
   offset="0">
<table class="table" width="1000" border="1" cellspacing="0" cellpadding="5">
  <caption align="center"><h3>项目构建信息</h3></caption>
  <thead>
  <tr>
    <th>构建项目-<b>${project_name}</b></th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td><font color="#cc0000"><b>构建结果 - ${build_status}</b></font></td>
  </tr>
  </tbody>
  <tr>
    本邮件由系统自动发出,无需回复!<br/>
    各位同事,大家好,以下为${project_name}项目构建信息</br>
  </tr>

  <tr>
    <td><br/>
      <b><font color="#0b610b">构建报告</font></b>
      <hr size="2" width="100%" align="center"/>
      <ul>
        <li>构建报告:<a href="${build_url}allure/" rel="external nofollow" >${project_url}allure/</li>
      </ul>
    </td>
  </tr>
  <tr>
    <td><br/>
      <b><font color="#0b610b">构建信息</font></b>
      <hr size="2" width="100%" align="center"/>
      <ul>
        <li>项目名称: ${project_name}</li>
        <li>构建编号: 第${build_number}次构建</li>
        <li>触发原因:${cause}</li>
        <li>构建状态:${build_status}</li>
        <li>构建日志:<a href="${build_url}console" rel="external nofollow" >${build_url}console</a></li>
        <li>构建 url: <a href="${build_url}" rel="external nofollow" >${build_url}</a></li>
        <li>工作目录: <a href="${project_url}ws" rel="external nofollow" >${project_url}ws</a></li>
        <li>项目 url: <a href="${project_url}" rel="external nofollow" >${project_url}</a></li>
      </ul>
    </td>
  </tr>
  <tr>
    <td>
      <b><font color="#0b610b">构建详细信息</font></b>
      <hr size="2" width="100%" align="center"/>
      <ul>
        <li>build_number: ${build_number}</li>
        <li>build_display_name: ${build_display_name}</li>
        <li>build_id: ${build_id}</li>
        <li>job_name: ${job_name}</li>
        <li>job_base_name: ${job_base_name}</li>
        <li>build_tag: ${build_tag}</li>
        <li>executor_number: ${executor_number}</li>
        <li>node_name: ${node_name}</li>
        <li>node_labels: ${node_labels}</li>
        <li>workspace: ${workspace}</li>
        <li>jenkins_home: ${jenkins_home}</li>
        <li>jenkins_url: ${jenkins_url}</li>
        <li>build_url: ${build_url}</li>
        <li>job_url: ${job_url}</li>
        <li>svn_revision: ${svn_revision}</li>
        <li>svn_url: ${svn_url}</li>
      </ul>
    </td>
  </tr>
  
  <tr>
    <td>
      <b><font color="#0b610b">变更信息:</font></b>
      <hr size="2" width="100%" align="center"/>
    </td>
  </tr>
  <tr>
    <td>
      <ul>
        <li>
          上次构建成功后变化 : ${changes_since_last_success, reverse=true, format="%c", changesformat="<li>%d [%a] %m</li>"}
        </li>
      </ul>
    </td>
  </tr>
  <tr>
    <td>
      <ul>
        <li>上次构建不稳定后变化 : ${changes_since_last_unstable, reverse=true, format="%c", changesformat="<li>%d [%a] %m</li>"}
        </li>
      </ul>
    </td>
  <tr>
    <td>
      <ul>
        <li>历史变更记录 : <a href="${project_url}changes" rel="external nofollow" >${project_url}changes</a></li>
      </ul>
    </td>
  </tr>
  <tr>
    <td>
      <ul>
        <li>变更集:${jelly_script,template="html"}</li>
      </ul>
    </td>
  </tr>
  <tr>
    <td><b><font color="#0b610b">构建日志 (最后 200行):</font></b>
      <hr size="2" width="100%" align="center"/>
    </td>
  </tr>
  <tr>
    <td><textarea cols="120" rows="30" readonly="readonly"
           style="font-family: courier new">${build_log, maxlines=200}</textarea>
    </td>
  </tr>
</table>
</body>
</html>

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

二、构建后操作(一)

增加构建后操作步骤 e-mail notification

Jenkin邮件收发实现原理及过程详解

执行构建,检查邮件是否成功收发

  • 当构建败时将会发送邮件
  • 当失败后第一次恢复稳定的构建也会发送邮件
  • 持续稳定后将不会发送邮件

Jenkin邮件收发实现原理及过程详解

三、构建后操作(二)

  • 增加构建后操作步骤 editable email notification
  • 如果 jenkins 系统配置中配置了default recipients(默认接收人)则下图中 recipient list 中不需要输入收件人邮箱地址

Jenkin邮件收发实现原理及过程详解

Jenkin邮件收发实现原理及过程详解

构建后邮件结果如下

Jenkin邮件收发实现原理及过程详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关标签: Jenkin 邮件