Jenkins持续集成方案
新增工程 AutoCITower
考虑到持续集成和自动部署需要做一些特殊处理
1.使用构建触发器实现自动构建
这边主要可以选择使用三种:
轮询SCM
每隔两小时检查一次源码,源码有更新就执行构建
定时构建
每隔24小时执行构建一次
构建分支默认选用develop,后期如果需要构建其他分支可以修改配置或是使用webhook
webhook
(1)需要安装插件:Gitlab Hook Plugin和Gitlab Plugin
(2)安装插件: Generic Webhook Trigger
(3)配置webhook
2.部署web测试地址
使用anywhere提供静态文件服务器 (开启某一个端口 anywhere -p 8090)
使用xl_close_port管理端口 (关闭某一个端口 xl_close_port -p 8090)
3.构建成功发邮件
(1)需要安装插件: Extended E-mail Notification
(2)这边以163邮箱的smtp服务为例,需要注意的是Password切记填的是授权码,否则无法收到.邮箱授权码可以在邮箱设置中获取.
jenkins邮箱账户: 自己去申请 授权码 我不告诉你
邮件内容
<!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)配置接收者邮箱,多个邮箱可以使用,分隔