这两天研究了一下Jenkins使用,这里就简单介绍一下,作为自己学习的记录。
【是什么】
Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使得持续集成编程可能。Jenkins的前身是Hudson,是基于Java开发的一种持续集成工具,它可以根据配置进行持续定期编译,运行相应的代码,将运行结果发送至邮件或者展示成报告等。
【为什么】
Jenkins作为持续集成的标志性工具,自然是有了持续集成的众多优点。(持续集成)
Jenkins可以做一些自动化的build,只要我们把Jenkins搭建成功,可以设置几分钟build一次,在定时自动build,验证单元测试,如果发生错误则把错误报告以Email的形式发送给项目模块负责人。
【宏观理解】
先来个图,大致理解一下宏观。(具体介绍,详见博客:点击打开链接)
【怎么做】
首先建立好Jenkins服务器的各节点配置,建立完成之后的结果如下图
然后再根据第一张图中的蓝色箭头,首先将开发的代码提交至SVN中,通过运行批处理文件,将SVN上的代码复制到服务器中的workspace文件夹中,再通过运行批处理文件,将workspace中的代码发布在ITOO4.1 Public文件夹中,并且在服务器上将建立的每个Job进行发布。这个集成环境搭建成功之后,作为开发人员,我们只需在VS中将更新的代码提交至SVN上,剩下的都是自动持续集成的。
具体操作步骤如下:
一、服务器配置
安装JDK,和slave-agent
二、配置Jenkins Job
然后系统会进入任务配置页面,
进行源代码配置,填写相应的版本库URL。
接下来,配置触发器。其中,“Build after other projects are build”是指在其他项目触发时的时候触发本次构建;“Poll SCM”是指定时检查源码变更,如果有更新就checkout最新的代码,并且执行构建。“Build periodically”是指自动构建。这里我们勾选Poll SCM,配置自动构建的时间和日期,由5部分组成,分别是:分、时、日、月、年,5部分以空格进行分割,逗号表示同属于一部分的分割,*代表任意。”H/15 * * * *“是指15分钟检测一次代码更新情况。
接下来配置MSBuild。在构建步骤下拉框中选择第四个“Build Visual Studio project or solution using MsBuild”,填写要构建的项目文件名(注意:必须是csproj文件),填写命令行参数为:/t:ResolveReferences;Compile /t:_CopyWebApplication /p:Configuration=Release /p:WebProjectOutputDir=C:\ITOO4.1_Public\AuthorityBack\AuthorityBackResourceManage\ITOO.AuthorityBackResourceManage.Client/p:OutputPath=C:\ITOO4.1_Public\AuthorityBack\AuthorityBackResourceManage\ITOO.AuthorityBackResourceManage.Client\bin
其中,/p:Configuration=Release 表示编译Release版本,/p:WebProjectOutputDir=C:\ITOO4.1_Public\AuthorityBack\AuthorityBackResourceManage\ITOO.AuthorityBackResourceManage.Client表示网站发布文件的输出路径,该路径作为以后配置IIS的网站路径。/p:OutputPath=C:\ITOO4.1_Public\AuthorityBack\AuthorityBackResourceManage\ITOO.AuthorityBackResourceManage.Client\bin表示项目dll的输出路径
调用批处理文件,自动复制代码和dll文件至相应的文件夹。
配置Email邮件
保存。然后将该网站发布到IIS上,网站路径要配置为Jenkins网站发布的输出路径。立即构建。
构建结果如下