美文网首页
使用Jenkins进行持续集成

使用Jenkins进行持续集成

作者: 好多可乐 | 来源:发表于2020-04-26 15:05 被阅读0次
1. 修改Jenkins插件下载地址

Jenkins国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址:
Jenkins->Manage Jenkins->Advanced,把Update Site改为国内插件下载地址,https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json,保存,重启tmocat

2. 下载汉化插件

Jenkins->Manage Jenkins->Manage Plugins,点击Available,搜索"Chinese",然后点击下载,然后重启jenkins,就可以看到中文界面了

3. 安装Maven Integration插件

按照上述操作安装,如果跟我一样网不好的,到这个网站找到插件,下载下来,然后在高级->上传插件里面安装吧,无奈 https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/

4. 进行全局配置
  • 配置Jdk
    首页->Global Tool Configuration->新增maven->取消勾选自动安装->输入maven名称和本地地址->保存


    查看软件版本.png
    jdk版本.png
  • 配置Maven
    首页->Global Tool Configuration->新增Jdk->取消勾选自动安装->输入Jdk名称和本地地址->保存->应用


    maven版本.png
  • 配置Git
    首页->Global Tool Configuration->Git->输入名称,Git.exe的路径>保存->应用


    配置git.png
5. 新建项目

返回首页->创建一个新项目->构建一个maven项目->输入标题->确定->点击Pre Steps->Build(这时候会看到一个报错,点击链接跳过去进行配置)


image.png
6. 进行源码管理

返回首页->点击项目->源码管理->选择Git->Repository URL里输入github仓库的ssh的地址->点击添加->输入github的用户名,密码->点击添加->保存


配置用户名密码.png
git全局配置.png
7. 构建项目

点击Build->Goals and options输入clean build->点击保存->应用


构建项目.png
8. 运行项目

返回首页->点击项目->Build now->点击控制台输出可以查看运行情况
ps:控制台乱码解决方案:https://blog.csdn.net/wushuai150831/article/details/80454105

9. 构建触发器配置

功能:配置定时任务
点击项目->配置->构建触发器配置-触发器常用的主要有2种,一种是定时配置,不管版本是否发生变更(Build periodically),一种是隔一段时间比较一次,如果源码发生变更就build,否则不build(Poll SCM)

设置在工作日每天9点开始跑.png

时间表达式:

  • 时间表达式是由五部分组成,每一部分中间由逗号隔开,如下:
    MINUTE HOUR DOM MONTH DOW
    MINUTE : 分钟值,0-59
    HOUR:时钟值,0-23
    DOM:日期,1-31(day of month)
    MONTH:月份,1-12
    DOW:一周中的某一天(0-7)0-7都代表周天(day of week)
  • 每一部分还可以设置为以下的值:
    *:指所有的值
    M-H:指一个范围内区间的值
    M-H/X 或 */X:指在(一个范围内/所有)满足间隔X的值
    A,B....Z:列举了这一部分所有的值

为了实现负载均衡,使用H Jenkins会根据当前系统的压力分配任务去确定执行的具体时间,避免出现同一时间高并发的问题,H可以和范围一起使用,H符号可以被认为是一个范围内的随机值

  • 每15分钟执行一次(可能在:07,:22,:37:52 )
    H/15 * * * *
  • 在每半小时前半小时中每隔10分钟跑一次(3次,可能是在:04,:14,:24)
    H(0-29) /10 * * * *
  • 每个工作日的上午9:45分开始到下午4点每两个小时间隔执行一次
    45 9-16/2 * * 1-5
  • 在每周的上午9点到下午5点每隔2小时执行一次,当天具体几分执行是随机的(4次,可能是在10:38,12:38,14:38,16:38)
    H H(9-16) /2 * * 1-5 (注意9点到16点指的9点到16:59)
  • 1-11月份的每个月1号和15号执行,当天具体几点执行是随机的
    H H 1,15 1-11 *
10. 构建后操作

功能:设置定时任务跑完后要做的操作,比如发测试报告邮件等

  • 安装Email插件 Eamil Extension Plugin
  • 设置Extend Email Notification:
    进入系统管理->系统设置->Extend Email Notification进行设置


    邮箱配置.png

ps:password不是qq密码,是qq邮箱申请开通IMAP/SMTP服务后收到的密码

获取qq的smtp密码.png
  • 底下的邮件通知也做一样配置,就不赘述了
  • 配置系统管理员邮件地址


    配置系统管理员邮件地址.png
  • 验证邮件是否有配置好
    系统设置->邮件通知->输入邮箱地址->点击测试
    先在全局配置暂时配置这些,一些个性化的邮件配置操作建议在项目设置
11.对邮件配置进行个性化操作

返回首页->点击项目->设置->构建后操作->增加构建后操作步骤->Editable Email Notification

  • 设置发件人收件人列表


    普通设置.png
  • 高级设置:个性化设置发件人列表,什么情况下发送等


    高级设置.png
  • 邮件内容编辑
  1. project receipt list:收件人,多个逗号隔开
  2. project -reply to list:收到邮件者回复时间回复的人,一般不会回复
  3. content type:内容类型,我们选择html
  4. default subject:邮件主题,如


    邮件主题.png
  5. 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">  
    <h3>以下是Jenkins自动发送的邮件,请勿回复!</h3>
    <div>
    <table width="95%" cellpadding="0" cellspacing="0" 
        style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif"> 
        <tr>  
            <td>  
                <ul>  
                    <li>项目名称 : ${PROJECT_NAME}</li><br />  
                    <li>构建编号 : 第${BUILD_NUMBER}次构建</li> <br /> 
                    <li>触发原因: ${CAUSE}</li><br />                    
                    <li>项目  Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li><br />
                    <li>测试报告: api_report.html附在附件中,请查收</li><br /> 
                </ul>  
            </td> 
        </tr>  
    </table> 
    </div>
    <div>
    <table> 
    </table> 
    </div>
     
  </body>  
</html>

相关文章

网友评论

      本文标题:使用Jenkins进行持续集成

      本文链接:https://www.haomeiwen.com/subject/gsadwhtx.html