Jenkins是一个持续集成的工具,可以应用在任何一种开发环境下,不过这也得需要安装不同的插件来支持。
怎样才算是持续集成啊?随着软件开发的复杂度不断提高,代码量也随之增加,团队开发成员如何更高效合理的协调工作,并保证代码质量和集成的效果?它的工作原理是这样的,如图:
Jenkins持续集成的构建过程就是:不断从SVN上检查代码状态,如果有更新,那么就从SVN版本控制服务器上下载最新的代码,更新完代码以后,会调用自动化编译脚本,进行代码编译,生成dll文件,再进行IIS部署。通过媒体集成变化的代码并发布,这样可以尽早的发现问题,减少项目的风险。而且可以减少重复性的动作来节省时间、成本,提高效率。
所以Jenkins就是这样一种持续集成的工具。下面详细介绍在.NET环境下如何基于Jenkins持续集成。
一、安装Jenkins。安装完成后会自动创建一个Windows服务,默认的端口号是8080(http://localhost:8080)
二、安装插件。点击左侧的“系统管理”,选择“插件管理”,如图:
然后安装以下3个插件:
构建插件MsBuild Plugin
发邮件插件Email Extension Plugin
基于角色的权限管理插件role strategy plugin
配置MsBuild
三、具体项目的配置
1、新建job
2、选择配置的SCM工具类型,输入相应的版本库。首次的话会有身份验证。
3、配置触发器
Build periodically是周期进行项目构建(它不关心源码是否发生变化)。
Poll SCM是定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新的code,然后执行构建。
H 9-16/2 * * 1-5是每个工作日(周一至周五)的9-16点内每隔2个小时执行一次。它的设置规则是由五部分组成(minute Hour DOM Month Dow)分时天月年,详细内容,点击问号帮助。
4、MSBuild配置
MSBuild Build File是要构建的项目名称,必须是csproj文件名。注意:经我试验,这里最好填写成2级菜单,否则容易报错。
Command填写命令行,这是存放编译好的dll文件
/t:ResolveReferences;Compile /t:_CopyWebApplication/p:Configuration=Release/p:WebProjectOutputDir=E:\Jenkins_Publish\FreshSystem\Server/p:OutputPath=E:\Jenkins_Publish\FreshSystem\Server\bin
至此,大部分配置已完成,最后点击下边的“应用”-“保存”,然后点击左侧的“立即构建”就能测试是否构建成功。