1.1 编写目的
编写本文档,旨在与大家交流经验、分享成果。该文档主要说明了如何结合安装配置Tomcat、JDK、Ant、Subversion等工具搭建基于Jenkins的持续集成环境。
编者按:文档涉及到Jenkins的安装配置,但并未涵盖Jenkins的所有功能范畴。
1.2 术语与缩略词
术语和缩略语说明
术语及缩略词 | 说明 |
CI | Continuous Integration,持续集成 |
Jenkins | 用于CI的开源项目,持续集成工具,笔者所用jenkins1491.zip |
JDK | Java开发必备工具包; 笔者所用JDK安装包:jdk-6u25-windows-i586.exe |
JRE | Java Runtime Environment,Java运行时环境 |
JAVA_HOME | D:\CI\Env\Java\jdk1.6 |
CLASSPATH | .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar |
PATH | %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin;%ANT_HOME%\bin; |
ANT_HOME | D:\CI\Env\apache-ant-1.7.0 |
Tomcat | 开源项目,Web服务器,笔者所用apache-tomcat-6.0.26.zip |
Tomcat_Home | D:\CI\Env\apache-tomcat-6.0.26 |
Jenkins工作目录 | D:\CI\Workspace |
|
|
2 基于Jenkins的CI环境
2.1 搭建Jenkins环境
2.1.1 安装目录约定
在D盘建立CI目录,其下包括Env、Workspace两个目录。
Env:请将Java、Ant、Tomcat、findbugs等工具都安装在此目录下;
Workspace:Jenkins工作目录,比如从SVN获取的代码等内容都存放在此目录下。
笔者强烈建议按上图所示目录结构进行各类工具的安装,在后期会给大家带来很大的好处,比如环境变量的配置,Ant脚本的简单复用等等。
2.1.2 JDK安装
JDK的安装过程跟普通的Windows程序安装过程类似,只要不停的Next就可以啦,详细的安装步骤在此略过。
参照“2.1.4 环境变量配置”配置后环境变量后,在Dos窗口下,输入java-version并回车,如果出现下图所示提示,说明JDK已经安装配置成功了。
2.1.3 Ant安装
笔者使用的是免安装版Ant(apache-ant-1.7.0.rar),只要解压即可。
参照“2.1.4 环境变量配置”配置后环境变量后,在Dos窗口下,输入ant -version并回车,如果出现下面的提示,说明Ant已经安装配置成功了。
2.1.4 环境变量配置
在安装完成JDK与Ant以后,还需要正确的配置环境变量才可以使用,您需要新增JAVA_HOME、CLASS_PATH以及ANT_HOME三个环境变量,修改PATH环境变量。在修改PATH环境变量时,请在已有的PATH变量内容后面附加。详情请参阅章节“1.2术语与缩略词”,如果您按笔者建议的目录结构安装与解压,你只需要简单复制相关内容即可。
请点击“我的电脑—属性—高级—环境变量”,以打开环境变量配置窗口,如下图所示。
2.1.5 安装Tomcat
笔者使用的是免安装版apache-tomcat-6.0.26,简单的压缩文件,只要解压即可。
Tomcat安装或解压完成后,在Tomcat的安装路径下找到:bin/startup.bat
双击运行该文件,如果弹出如下的Console窗口,则说明Tomcat已经可以正常启动了。
在你的浏览器地址栏上键入:http://127.0.0.1:8080/
按下回车,如果能够看到如下页面,则说明你的Tomcat已经安装成功啦。
Tips:
1、如果Tomcat不能正常启动,请检查你的环境变量中是不是已经正确设置了[JAVA_HOME]。
2、如果启动Tomcat发生了端口冲突提示,请关闭占用端口的应用;或是修改Tomcat的配置文件 [{tomcat_home}/conf/server.xml],按注释的说明,修改相应端口。
2.1.6 安装Jenkins
Jenkins是以J2EE Web应用包的形式提供的。笔者所使用的文件是jenkins1491.zip。请将该文件重命名为Jenkins.war(为了文档编写方便)。
请将Jenkins.war拷贝至tomcat_home的webapps目录下:
{tomcat_home}/webapps
Tomcat会自动部署Jenkins(如果遇到部署异常,尝试重启tomcat),如下图所示:
显示Jenkins is fully up and running则jenkins环境已经启动完成。
在浏览器地址栏输入:http://本地IP地址:8080/Jenkins
按下回车,如果能够出现如下图所示页面,说明你的Jenkins安装成功了。
2.2 配置Jenkins
这一节开始我们来了解Jenkins基本环境的配置。
在Jenkins首页,左侧菜单栏有四个功能菜单【新Job】、【查看用户】、【任务历史】、【系统管理】。
点击【系统管理】,进入系统管理页面,如下图所示:
在上图所示系统管理页面中,我们主要关心的是【系统设置】项,请点击【系统设置】链接,进入系统设置页面,找到如下图所示配置内容:
在上图中,单击【新增JDK】:
取消对【自动安装】选项的选择,出现如下内容,在其中填写完成【别名】、【JAVA_HOME】即完成了对JDK的配置。
【Ant】的配置跟【JDK】类似,在此不再赘述,配置完成后的页面,请参照下图。
对于【Subversion】和【Jenkins URL】的配置请参见下图,需要说明的是,在配置【Jenkins URL】的时候,请填写您的Jenkins服务器的IP地址。
点击页面最下方的【Save】按钮,保存即可。
现在,我们已经完成Jenkins环境的基本配置了。
2.3 Jenkins插件安装
Jenkins基础环境安装完成了,接下来我们介绍如何安装Jenkins插件。
目前,笔者主要用到了如下插件:
插件名称 | 版本 | 说明 |
Publish Over SSH | 1.9 | 用于上传发布包的插件。 |
Static Analysis Utilities | 1.48 | 用于辅助分析构建结果的插件。 |
FindBugs Plugin | 4.45 | 用于自动构建时自动按规则检查代码的插件。 |
1.0.9 | 用于自动测试代码覆盖率的插件。 | |
Tagging Plugin Subversion | 1.16 | 用于SVN打标签时使用的插件。 |
Build PipelinePlugin | 1.3.3 | Job级联展示插件。 |
有需要的同事,可以向笔者获取已经下载好的插件。
2.3.1 本地上传安装插件
在Jenkins首页,依次点击【系统管理】、【管理插件】,如果在【已安装】Tab也没有找到需要的插件,那我们需要安装它。如下图:
在【高级】页面中找到“上传插件”部分,选择【浏览】,找到本地.jpi文件点击【上传】即可。
记得上传完成所有需要的插件后要重启Tomcat才会生效哦!
好了,到这里我们已经基本完成了jenkins环境的安装。如果有问题再回过头看看相应的章节,是否有配置错误的地方,好好检查下吧!
2.4 Jenkins权限管理
Jenkins基于角色的用户管理就要借助插件“Role-basedAuthorization Strategy”,该插件的安装可以采用在线安装或者下载之后本地安装,安装的过程都很简单快捷,切记插件安装之后要重启Jenkins服务。
2.4.1 启用安全策略
要想使用Jenkins的权限管理功能,通常要遵循如下几个步骤:
一:首先要在“系统设置”里面的勾选“启用安全”选项。如下图所示:
二:注册“admin”管理员账号,注册“admin”账号之后Jenkins会默认设置为管理员权限。注册其他账号是不会默认分配权限的。
三:安装“Role-BasedStrategy”插件并且启用为当前的“授全策略”。
四:以上几步配置完成之后,就会在“系统管理”里面出现一个新的选项“Manage and Assign Roles”。、
2.4.2 权限配置
角色管理分两类,一类是“Global roles”基于全局的角色设置,另一类是“Project roles”基于项目的角色设置。
一:“Global roles”通常用来设置 “系统管理员”,“任务的创建者”,“anonymous”等的全局性角色,诸如“Overall”,“Slave”等权限的设置。
二:“Project roles”通常是用来设置某个项目针对某些人员的局部性角色,诸如“Job”,“Run”等权限的设置。
三:值得注意的是“Global roles”会覆盖“Project roles”具有相配置项的权限。
四:“Project roles”的“Pattern”属性是采用后置通配符的方式来配置的,是严格区分大小写的。比如下图“testerA”角色就是应用与项目名称为“New”开始的项目。
一:用户分配角色可以同时分配“Global roles”和“Project roles”,如下图所示:
二:即用户“gavin”有与角色“testerA”和“testerB”所对应的项目权限,而用户“leq”就只具有与角色“testerB”所对应的项目权限,如下图所示:
3 附录
暂无。