Jenkins是一个什么?它是一个持续集成的开源工具。它的前身是 Hudson,2011年Hudson社区为摆脱Oracle对‘Hudson’命名干扰,将Hudson改名为Jenkins。
一个团队开发比较大型的软件时,比如采用敏捷开发,多次迭代。在第一次迭代完成时,开发和测试就可以同时进行。使用Jenkins构建一个测试环境。这样测试也不会对开发环境造成混乱。
Jenkins优点是,可以通过各种手段触发构建。例如提交给版本控制系统时被触发,也可以通过类似Cron的机制调度,也可以在其他的构建已经完成时,还可以通过一个特定的URL进行请求。
Jenkins是基于Java环境开发的,在安装jenkins前要安装JDK(),然后下载安装。得到默认端口为8080的 Jenkins本地地址。
第一次使用的时候,我们要进行一些必要的配置。
插件管理-可选插件,比如MSBuild plugin、Email Extension plugin等插件。
MSBuild是 Microsoft Build Engine 的缩写,代表 Microsoft 和 Visual Studio 的新的生成平台。
已安装插件可以查看。
JenkinsURL:将Localhost设置为局域网Ip。比如:将http://localhost:8080修改为http://192.168.24.*:8080,这样同一个局域网内的小伙伴就可以访问你的Jenkins页面了。
JDK、Ant、maven、SSH Sever ,CVS,Subversion工具等工具安装。。
根据系统需要使用,比如我要安装一个MSBulid。点击安装。MSBulid一般位置都会在Fromework安装包中。
配置管理员邮件,需要安装Email extension 插件,在构建过程中,会将构建的成功/失败情况发送到邮箱中。
是否允许注册用户,并且为它设置权限。
设置这个之后就可以登录用户,然后就进行其他用户信息维护和构建job了。
。。。
控制管理所有已知的用户,看他们的操作记录。以及操作过的Job记录。
-1、job名称
-2、.net语言开发
-3、Java语言开发
-4、当已有job项目建立,里面大多设置相同时,可以直接输入已有任务名称,这样很多重复的设置就可以省略了。
在构建的过程需要进行的设置:
因为我使用SVN进行源码管咯,所以选择subversion进行设置。
这个触发器是一个非常灵活的东西,Jenkins实现自动构建,就需要在这里设置时间就可以,不管是相隔几分钟,几小时,几天都可以自动构建,只要在日常表里按照 分时日月年的顺序写就可以。如果不会写,看看后面的帮助,它非常有用。我只是以日常表为例,如果有兴趣可以试试其他的。
接下来就是和具体系统相关的的了。
步骤填写好之后,保存--立即构建。
有一个晴雨表可以表现构建情况。下图依次代表的情况是:构建5次成功、未成功、构建一次两次成功、构建三次四次成功。
当出现小太阳的时候,是所有构建系统人都愿意的看到的,这就说明系统可以发布了。我使用IIS进行发布。
新建网站--物理地址是构建生成文件的地址--ip可以选本地--端口后两位任意输入。
设置应用程序池-
-选择 建的网站--基本设置将framework设置为4.0的版本。这个和系统中使用的版本相同。-高级设置--启用32位应用程序为true。
设置权限
操作--编辑权限--安全--添加一个everyone账户,权限全部选中。
浏览网站就可以。有了网站地址,其他成员就可以访问系统了。
在使用Jenkins的时候遇到很多的问题,这些问题来自Jenkins设置错误。系统代码bug,IIS设置不正确。
这类错误往往会在设置过程中,或者构建的时候,直接提示问题是什么。根据提示找到设置不正确的地方,就可以避免这类的问题了。
是因为SVN地址不正确,配置步骤的文件和SVN相连可以在SVN找到该文件,就说明配置正确了。
这样在系统中有错误的,在Jenkins构建的时候也会提示一样的错误。
解决
1)在IIS中右击要发布的网站,在弹出的快捷菜单中找到【高级设置】,在高级设置对话窗口中将【进程模型】下的标识改为【LocalSystem】本地系统。
2)打开客户端的web.config文件,找到<system.serviceModel>节点下的httpsGetEnabled=”true”改为”false”
问题还有很多。但是只要有耐心,结合以前的经验和知识,就都会迎刃而解的。
Jenkins的使用,使持续构建更方便。比如一个团队开发开发项目,会不定时向SVN上传代码,以及修改bug。 Jenkins就可以根据设置,有更新就构建,或者定时进行构建。