手把手教你配置Jenkins自动化邮件通知

news2024/11/28 12:55:07

完成基于Jenkins的持续集成部署后,自动化测试执行后,测试结果需要通知到相关人员,除了钉钉通知外我们还可以通过Email通知到对应负责人,这里记录一下测试结果通过Jenkins邮件通知的配置与部署

01、安装插件

方法1: 进入Jenkins-系统管理–插件管理-可选插件,安装Email Extension Plugin和Build Timestamp插件
在这里插入图片描述

方法2:进入Jenkins插件下载email-ext和build-timestamp与其依赖插件,进入Jenkins-系统管理–插件管理-高级-上传插件, 上传安装
在这里插入图片描述

Email Extension Plugin:通过STMP协议发送电子邮件

Build Timestamp:获取构建时的时间戳并转换为指定格式 用于获取log和html测试报告名称发送邮件附件

02、SMTP介绍

SMTP 的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。

SMTP认证 简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机

STMP授权码的获取:

QQ邮箱获取授权码

163邮箱获取授权码

03、Jenkins系统配置

进入系统管理 - 系统配置

1.配置获取的时间戳格式 用于发送邮件时获取log和html报告为邮件附件
在这里插入图片描述

2.配置发件箱与邮件类型
在这里插入图片描述
3.设置默认收件、邮件标题和邮件内容
在这里插入图片描述4. 设置触发类型与重复发件箱配置
在这里插入图片描述

注:配置完成后可通过发送测试邮件是否配置正确

04、配置Job

进入Job - 配置 - 构建后操作 - -增加构建后步骤 - Editable Email Notification, 配置如下

1.配置收件人列表、邮件标题和邮件内容,可覆盖系统配置的参数
在这里插入图片描述2. 获取邮件附件 Log和html测试报告
在这里插入图片描述

3. 配置是否发送构建日志为附件、发件类型和发件对象
在这里插入图片描述
Default Subject 

【接口自动化】$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!

Default Content

<!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 width="95%" cellpadding="0" cellspacing="0"  style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">

        <tr>本邮件由系统自动发出,无需回复!

            <br/>各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br>

            <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>

        </tr>

        <tr>

            <td><br />

            <b><font color="#0B610B">构建信息</font></b>

            <hr size="2" width="100%" align="center" /></td>

        </tr>

        <tr>

            <td>

                <ul>

                    <li>项目名称:${PROJECT_NAME}</li>

                    <li>构建编号:第${BUILD_NUMBER}次构建</li>

                    <li>触发原因:${CAUSE}</li>

                    <li>构建状态:${BUILD_STATUS}</li>

                    <li>项目URL:<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>

                    <li>工作目录:<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>

                    <li>构建URL:<a href="${BUILD_URL}">${BUILD_URL}</a></li>

                    <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>

                    <li>测试报告:<a href="${BUILD_URL}HTML_20Report/">${BUILD_URL}HTML_20Report/</a></li>

                </ul>

                <h4><font color="#0B610B">失败用例</font></h4>

                <hr size="2" width="100%" />$FAILED_TESTS<br/>

                <h4><font color="#0B610B">最近提交版本(git:$GIT_REVISION)</font></h4>

                <hr size="2" width="100%" />

                <ul>

                ${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d[%a] %m</li>"}

                </ul>

                    详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>

            </td>

        </tr>

    </table>

</body>

</html>

05、邮件发送效果预览
在这里插入图片描述在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/763851.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java+Swing+Mysql学生成绩管理系统

基于JavaSwingMysql学生成绩管理系统 一、系统介绍二、功能展示1.登陆2.学生成绩查询3.学生成绩添加4.学生成绩修改5.学生成绩删除 三、数据库四、其他系统实现五、获取源码 一、系统介绍 该系统实现了学生成绩的增加、修改、查询、删除 运行环境&#xff1a;eclipse、idea、…

ORB-SLAM2学习笔记3之EuRoc开源数据集运行ORB-SLAM2生成轨迹并用evo工具评估轨迹

文章目录 0 引言1 EuRoc数据集1.1 下载数据1.2 真值轨迹格式转换 2 单目ORB-SLAM22.1 运行ORB-SLAM22.2 evo评估轨迹2.2.1 载入和对比轨迹2.2.2 计算绝对轨迹误差 3 双目ORB-SLAM23.1 运行ORB-SLAM23.2 evo评估轨迹3.2.1 载入和对比轨迹3.2.2 计算绝对轨迹误差 ORB-SLAM2学习笔…

Spark(28):Spark Shuffle解析

目录 0. 相关文章链接 1. ShuffleMapStage与ResultStage 2. HashShuffle解析 2.1. 未优化的HashShuffle 2.2. 优化后的 HashShuffle 3. SortShuffle解析 3.1. 普通SortShuffle 3.2. bypass SortShuffle 0. 相关文章链接 Spark文章汇总 1. ShuffleMapStage与ResultSta…

C语言实现通讯录【文件版】——存档联系人信息

我真的无法对一个追逐梦想的少年生恨 目录 一、源码阅读注意事项 二、文件读取函数及文件读写规则 1.打开文件 2.读写文件 3.关闭文件 大家好&#xff0c;我是纪宁。 上篇文章向大家如何用C语言实现动态版的通讯录&#xff0c;这篇文章将介绍如何用C语言将通讯录的信息写…

2快速入门Spring基于XML的方式注册第一个组件

基于XML的方式注册第一个组件 开发步骤 第一步&#xff1a;创建Maven工程配置生成的pom.xml文件, 添加spring context基础依赖和junit依赖(注意根据Spring官方文档描述,Spring6需要JDK版本17) 当添加Spring的基础依赖spring context之后&#xff0c;Maven会自动关联并引入其…

【嵌入式项目】南海无线通信系统的射频子系统

前言 射频子系统是无线通行系统的重要组成部分之一。 射频子系统主要由天线、射频前端和调制解调器组成。其工作原理如下&#xff1a; 1. 发送端将数字信号转换成高频模拟信号&#xff1a;无线通行系统的控制中心或读卡器产生的一组数字信号需要通过数模转换器将其转换为模拟…

图纸加密软件哪些可以用?哪个好?

图纸加密软件是一种用于保护和加密图纸文件的工具。它们可以对图纸文件进行加密&#xff0c;以确保只有授权的人可以访问和查看这些文件。 图纸加密软件通常提供了多种加密算法和安全性措施&#xff0c;以确保图纸的保密性和安全性。此外&#xff0c;一些图纸加密软件还提供了…

Postman:postman多接口顺序执行

Runner的使用 postman不仅可以单独运行某个接口&#xff0c;postman的 Runner模块可以运行多个接口&#xff0c;可以实现真正意义上的自动化接口测试 Runner的主要功能如下 按顺序调用接口&#xff0c;执行用例&#xff1b; 批量发送请求&#xff1b; 对接口数据进行参数化…

程序员最常用的6大技术博客排行榜

自互联网发展以来&#xff0c;程序员越来越多&#xff0c;相对应的博客、论坛、社区也五花八门&#xff0c;难以抉择。这么多年用过不少博客平台&#xff0c;以下是我总结的一些程序员常用的技术博客网站。 1、CSDN CSDN博客是专业的IT技术发表平台&#xff0c;流量大、资源多…

欧美暖通现状大解析!涂鸦智慧暖通方案,强大的数据管理能力为你打造爆品

作为现代建筑领域中不可或缺的一部分&#xff0c;暖通行业近两年的增长远超行业人士的预期。主要原因在于全球高温频发、能源问题越发突出&#xff0c;各国政府、科技巨头对新能源产业、节能减排等绿色环保产业给予了极大关注和资金投入。 IMARC Group 数据显示&#xff0c;202…

FL Studio是什么软件?FL Studio2023最新更新内容

FL Studio是什么软件 FL Studio是由比利时软件公司Image-Line开发的音乐制作软件&#xff0c;它拥有丰富的音效、合成器、采样器、鼓机等工具。FL Studio支持多种音频文件格式&#xff0c;包括MIDI、MP3、WAV、OGG等&#xff0c;可以帮助用户自由地进行音乐创作。 FL Studio界…

在After Effects 加速渲染的 21个技巧,记得收藏!

如何减少After Effects 渲染时间&#xff1f; 1.升级内存 减少渲染时间的一种有效方法是升级 RAM&#xff08;随机存取存储器&#xff09;。RAM 在渲染过程中起着至关重要的作用&#xff0c;因为它存储并快速访问渲染任务所需的数据。增加系统中的 RAM 量可提供更多的数据存储…

【基础架构】刚果商城(congomall)

刚果商城(congomall) 整体架构 公共规约组件 congomall-base-spring-boot-starter META-INF/spring.factories 自动装配 org.springframework.boot.autoconfigure.EnableAutoConfigurationorg.opengoofy.congomall.springboot.starter.base.config.ApplicationBaseAutoConfi…

Webpack原理与实战 --- Webpack 核心特性

如何使用 Webpack 实现模块化打包&#xff1f; 对模块化打包方案或工具的设想或者说是诉求&#xff1a; 能够将散落的模块打包到一起&#xff1b;能够编译代码中的新特性&#xff1b;能够支持不同种类的前端资源模块。 其中最为主流的就是 Webpack、Parcel 和 Rollup 以 We…

Lottie源代码解析

Lottie-iOS Lottie动画的原理&#xff1a; 一个完整动画View&#xff0c;是由很多个子Layer 组成&#xff0c;而每个子Layer主要通过shapes&#xff08;形状&#xff09;&#xff0c;masks&#xff08;蒙版&#xff09;&#xff0c;transform三大部分进行动画。Lottie框架通过…

jdk9以上反射报错 , jib 镜像打包添加配置

错误信息&#xff1a; unable to make protected final java.lang.class java.lang.classloader.defineclass 在IDEA中添加&#xff1a; --add-opens java.base/java.langALL-UNNAMED 即可启动 如果用了jib-maven-plugin 发布镜像&#xff0c; 怎么配置这个参数进去呢&…

多表查询进阶

首先两表如下所示 两表结构如下 查询要求 1 所有有门派的人员信息 select *from t_emp right join t_dept on t_emp.deptIdt_dept.id; 2 列出所有用户&#xff0c;并显示其机构信息 select t_emp.name,t_dept.id,t_dept.deptName,t_dept.address,t_dept.CEO from t_emp l…

深蓝学院C++基础与深度解析笔记 第 12 章 类进阶

深蓝学院C基础与深度解析笔记 第 12 章 类进阶 1. 运算符重载 ● 使用 operator 关键字引入重载函数&#xff1a; – 重载不能发明新的运算&#xff0c;不能改变运算的优先级与结合性&#xff0c;通常不改变运算含义 – 函数参数个数与运算操作数个数相同&#xff0c;至少一…

C++模拟实现unordered_map和unordered_set(哈希)

目录 一、unordered系列关联式容器 1.1 unordered_map 1.1.1 unordered_map 1.1.2 unordered_map接口说明 1. unordered_map的容量 2. unordered_map的迭代器 3.unordered_map的元素访问 4. unordered_map的查询 5. unordered_map的修改操作 6. unordered_map的桶操作…

ros::catkin_create_pkg

用下面的命令即可 catkin_create_pkg first_pkg rospy roscpp std_msg -m ur-email-name