Jenkins自动发送邮件配置及定时构建
前言
在配置之前,我们需要安装好Jenkins,对于如何安装不在赘述,看我之前一篇安装教程(或者找度娘,教程很多)。接下来我们开始详细讲解build运行完成后自动发送邮件和定时自动构建build
系统配置
安装插件
我们在安装Jenkins的时候可以选择安装,也可以在安装之后选择安装需要的插件
1.点击Jenkins面板[Manage Jenkins]
2.管理Jenkins页面选择[Manage Plugins]插件管理
3.切换窗口到可选插件,右上角搜索插件Email Extension Template Plugin
4.安装后需要重新启动Jenkins(安装的时候有重启的选项,勾选上就可以了,安装完会自动重启),我这边已经安装好了
系统配置
同样,在管理Jenkins页面,点击[Configure Sysyem]系统配置
1.配置Jenkins Location
这里没啥可说的Url就是自己电脑的ip地址,后面跟Jenkins的默认端口
2.配置Extended E-mail Notification
字段说明:默认收件人可以是多个,多个接受者使用逗号分隔
正文代码
<!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>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
<li>构建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>
<li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
</ul> <h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/> <h4><font color="#0B610B">最近提交(#$SVN_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>
3.配置Jenkins自带的邮件功能
注意:不要勾选使用SSL协议,否则无法发送邮件;SMTP的端口和前面设置插件的端口一样,哪个有效就使用哪个(25和465)
4.配置触发器Trigger
页面就这样一个按钮,找不到的时候仔细找肯定有,就在一个角落
ok,所有的配置都已经完成了,接下来我们先测试一下是否成功,再使用。
嗯,已经成功了,别忘记保存,接下来我们构建一个项目测试一下发送的邮件
构建项目
1.新建Job
Jenkins面板选择[新建item]
2.命名Job名称并选择构建一个自由风格的项目
3.输入项目描述
4.源码管理
这里我们不适用任何的库直接选择None
5.构建触发器
我这里设置的是每5分钟构建一次实现定时自动构建
6.构建命令
我这里直接选择执行cmd命令
7.构建后操作
我们再次点击Advanced Settings 修改一下默认接受者(这里我们最好把默认的接受者都删除,然后自己重新添加,防止接收失败)
选择构建后发送邮件
说明:
我这里发送邮件时,带上了附件,那么附件是从report目录下的所有以.html格式的文件压缩成
Attach Build Log 这个选择可以根据自己情况选择,我选择的是发送邮件的附件会包含项目构建的日志
ok,以上设置完成之后保存即可
添加项目
我们找到Jenkins安装目录下的workspace目录,在此目录下我们会发现和我们之前新建项目时填写的名字一样的一个目录,没错了,这个目录就是Jenkins构建时的工作项目目录
注意: 如果worksapce下面你没找到你的项目名目录,你需要手动执行一次构建点击Build Now即可
手动构建之后就会自动生成我们Job名称命名的目录了
接下来我们复制我们的代码到这个目录中
结果展示
以上所有的工作完成之后我们可以选择手动构建,测试一下是否能够接受到邮件和邮件内容是否正确
控制台输出(部分内容)
等待构建完成,查看一下控制台日志和邮箱是否接受到正确的邮件
控制台日志
邮箱
正文
附件优化
这里附件有点多,我们只需要发送新的报告文件即可。我们再改一下构建时的命令
ok,保存,我们再次手动构建,或者直接等待时间到后自动构建,再次查看邮箱附件是否只有新生成的报告
可以看到我们的附件只有最新的报告和build日志了,开心吧! 赶紧试试吧
总结
本章主要讲解Jenkins配置自动发送邮件,配置自由风格的项目及定时构建。主要使用第三方报告插件,且要学会定时构建时的语法,好了,又多了个装逼的技能,赶紧跟着我试一试!
Jenkins自动发送邮件配置及定时构建的更多相关文章
- jenkins自动发送邮件配置
一. 前提:确保插件存在 在一切开始之前,必须得确保任务配置里有两个插件:E-mail Notification(邮件通知) 和 Editable Email Notification(可编辑的邮件通 ...
- postman(十):配置jenkins自动发送邮件(邮件包含测试报告)
继续说一下jenkins与postman的集成 上一篇通过jenkins远程执行postman导出的脚本,并把html报告指定输出到了jenkins对应的job工作空间,接下来配置一下当jenkins ...
- Jenkins+github的一次定时构建示例
首先说明,我的电脑环境是windows,所以以下的示例是基于windows10 X64. 一.新建任务,填写名称,选择类型,点击左下角的[确定] 二.配置 1.General 2.源码管理 之前在gi ...
- Jenkins自动打包配置
当时也是花费了不少时间来配置Jenkins自动打包的问题,觉得还是需要记录一下. 1.安装Jenkins,这个很简单,不需要多说. 2.下载Git Plugin,Gradle Plugin,Andro ...
- jenkins自动化部署项目9 --定时构建
举几个例子:每隔5分钟构建一次H/5 * * * * 每两小时构建一次H H/2 * * * 每天中午12点定时构建一次H 12 * * * 每天下午18点定时构建一次H 18 * * * 在每个小时 ...
- jenkins自动拉取git分支构建项目
一,创建jenkins项目 new item ->freestyle project, 自定义一个项目名称 二,配置项目 1,Source Code Management 选择 git,输入gi ...
- Jenkins配置自动发送邮件,成功!
Jenkins自动发送邮件配置: 打开"系统管理"--"系统设置" 在"Jenkins Location"设置系统管理员地址(重要:不能省略 ...
- [原] Jenkins Android 自动打包配置
一.Jenkins自动打包配置 目标:1. 自动打包:2. 自动上传:3. 友好下载 1. Jenkins简介 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作. 减少重复劳 ...
- Jenkins进阶之自动发送邮件的Default Content设置模板
分享一个简洁实用的Jenkins项目邮件管理系统的"Default Content"设置模板 配置如下: <h1><center><font colo ...
随机推荐
- 【STM32H7教程】第15章 STM32H7的GPIO基础知识(重要)
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第15章 STM32H7的GPIO基础知识(重要) ...
- UTF-8和BOM的一些说明
BOM的含义 BOM即Byte Order Mark字节序标记.BOM是为UTF-16和UTF-32准备的,用户标记字节序(byte order).拿UTF-16来举例,其是以两个字节为编码单元,在解 ...
- Java泛型类型擦除与运行时类型获取
Java的泛型大家都知道是类型擦除的方式实现的,“编译器会进行泛型擦除”是一个常识了(实际擦除的是参数和自变量的类型).“类型擦除” 并非像许多开发者认为的那样,在 <..> 符号内的东西 ...
- [ida]查看某一函数在程序中被谁引用
1. 点亮函数名 2.view - open subviews - cross references 注意:不要点击绘图那个
- OpenGL入门1.5:矩阵与变换
每一个小步骤的源码都放在了Github 的内容为插入注释,可以先跳过 前言 在阅读本篇博客之前,你必须对向量和矩阵有基本的认识,并且能熟练进行向量和矩阵的运算 我们已经知道了如何创建一个物体.着色.加 ...
- awk 输出前 N 列的最简单方法
最近遇到一种场景,需要输出一个文本信息的前 N 列. 众所周知 cut 可以指定分隔符并指定列的范围,如 cut -d' ' -f-4 就是以空格为分隔符输出前 4 列.但是 cut 的分隔符只能是一 ...
- 顺F速运,你被爱加M坑了
- 加密情况 首先我们到顺F官网,下载顺F速运APP,当然,是Android版,毕竟穷. 接下来,得看看怎么用,当然顺便用Wireshark抓包,点那个显眼的立即登录按钮. 使用手机号登录,随便敲敲, ...
- 8.智能快递柜SDK(联网型锁板)
1.智能快递柜(开篇) 2.智能快递柜(终端篇) 3.智能快递柜(通信篇-HTTP) 4.智能快递柜(通信篇-SOCKET) 5.智能快递柜(通信篇-Server程序) 6.智能快递柜(平台篇) 7. ...
- MySQL 部署分布式架构 MyCAT (五)
分片(水平拆分) 4.全局表 业务使用场景: 如果你的业务中有些数据类似于数据字典,比如配置文件的配置, 常用业务的配置或者数据量不大很少变动的表,这些表往往不是特别大, 而且大部分的业务场景都会用到 ...
- 错误:shell 打开出现一大堆 错误 declare -x 之类的消息
像图中这种情况:这是什么情况呢? 原因:可能是你最近修改了.bashrc 或者 bash_profile 之类的文件.其中export 命令,要求export 命令写在单独的一行上: 就像下面这样,如 ...