1 Jenkins的安装与配置
1.1 Jenkins安装
(1)下载最新的版本(一个 WAR 文件)。Jenkins官方网址: http://Jenkins-ci.org/
(2)运行 java -jar jenkins.war,直接在浏览器地址栏中输入http://localhost:8080即可访问。(Jenkins默认运行在8080端口,如果要改变端口,可以java -jar jenkins.war –httpPort=8081)
注意:Jenkins 需要运行 Java 5以及以上的版本。
还有一种安装方式就是将下载的war包文件部署到 servlet 容器,然后启动容器,在浏览器的URL地址栏中输入类似http://localhost:8080/jenkins/这样的地址即可。下图是安装成功后的界面(使用的是Windows+Tomcat7+Java7环境):
1.2 Jenkins的配置
1.2.1系统管理
在已运行的Jenkins主页中,点击左侧的系统管理进入如下界面:
1.2.1.1提示信息
Ps:版本不同提示的消息有可能不同
新的版本
提示有新的版本可以下载安全设置
詹金斯允许网络上的任何人代表您启动进程。考虑至少启用身份验证来阻止滥用。点击Dismiss忽略该消息,点击Setup Security进入设置界面.详细设置请参考 Configure Global Security(安全设置) 章节
1.2.1.2系统设置
在已运行的Jenkins主页中,点击左侧的系统管理—>系统设置进入如下界面:
JDK, Maven, Git配置
配置一个JDK、git、Maven实例,请在每一节下面单击Add(新增) 按钮,这里将添加实例的名称和绝对地址
JDK别名:随便写
JAVA_HOME:这个是本机JDK的安装路径(错误的路径会有红字提示)
自动安装:不推荐这个选项
后面Git与Maven的配置是一样的,自己下载安装在本地。
git在安装插件后才会出现,具体参考插件安装章节。
邮件通知配置
配置发件人地址
配置邮件通知
配置完成后可以测试:
这样表示邮件配置成功。
ps:邮箱设置仅供参考,不同的邮箱SMTP设置不一样,Jenkins URL也根据自己的设置。
1.2.1.3 Configure Global Security(安全设置)
在已运行的Jenkins主页中,点击左侧的系统管理—>Configure Global Security进入如下界面:
设置如上图,保存后系统管理中就出现管理用户的选项。页面右上角也会出现登录/注册的选项。
1.2.1.4 管理用户设置
在右上角点击注册
点击sign up按钮,提示你现在已经登录.返回首页.
登录后和匿名账号看到的首页有几点不同,如下图红框所示:
1.2.1.5 管理插件设置
阅读Jenkins插件章节后,再回来安装如下的插件
(1)GitHub plugin
This plugin integrates Jenkins with Github projects.
github插件
(2)Deploy to container Plugin
This plugin allows you to deploy a war to a container after a successful build.Glassfish 3.x remote deployment
这个插件将生成的构件(war或者ear)部署到主流的服务器上
(3)GIT plugin
This plugin integrates GIT with Jenkins.
git插件
2 构建项目
2.1 构建maven+git+tomcat项目
2.1.1 新建maven项目
这时,需要为新的构建任务指定一个名称。(这里输入的任务名称为:maven_test)这里有几种的任务类型可供选择,鉴于初步介绍,先选择构建一个maven项目。对于其他的类型,经常使用的是拷贝已存在任务;这主要为了能在现有的任务基础上新建任务。点击OK按钮,
构建任务配置
源码管理
在”源码管理->Git”下的Repository URL输入Repository的Git地址(PS:可以选择分支)。触发器设置
在”构建触发器”中选择”Build when a change is pushed to GitHub “和”Poll SCM “,这两项的作用分别是当GitHub有版本库更新时触发Jenkins进行构建和定期检查版本库是否有更新,如果有更新则触发Jenkins进行构建。这里要注意Schedule语法,例如”H/2 * * *”表示每隔2分钟检查一次。
maven构建设置
Root POM根据自己设置,如果有错,会出现红色提示。邮件通知设置
在Recipients中输入收件人邮件地址,如果用多个收件人用“,”英文逗号隔开。由于前面系统设置的时候已经设置好邮件后缀了,所以现在就不用写了。war包部署到tomcat设置
首先你必须安装好Deploy Plugin插件,然后在tomcat的conf目录配置tomcat-users.xml文件,在节点里添加如下内容:
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
引号里的username和password可以随便替换,待会要用的。
选择Deploy war/ear to a container
WAR/EAR files:war文件的存放位置,如:target/SpringDemo.war 注意:相对路径,根据自己的配置看是否target前面要加项目名。
Context path:访问时需要输入的内容,如test访问时如下:http://192.168.x.x:8080/test/,如果为空,默认是war包的名字。
Container:选择你的web容器,如tomca 7.x
Manager user name:填入tomcat-users.xml配置的username内容
Manager password:填入tomcat-users.xml配置的password内容
Tomcat URL:填入http://192.168.x.x:8080/
Deploy on failure:构建失败依然部署,一般不选择
注意:虽然这种部署方法可能会导致tomcat加载时出现卡死的现象。但是也是最简单的部署方式。如果卡死了重启下就好了,将tomcat的java内存参数调高可以解决这个问题。
到此一个项目的获取源码,打包,远程部署,邮件通知就完成了。
2.1.2 监控
在工作区域的左边菜单上点“立即构建”,开始构建项目
构建完成后可以在项目中看到项目构建的具体信息,如工作区、变更集和每次构建的控制台输出等。
开始构建
一旦构建完成后,你可以在Jenkins的控制面板上看到它,如下图。
在上面展示的截图中,您将注意到有两个图标描述当前作业的状态。S栏目代表着“最新构建状态”,W栏目代表着“构建稳定性”。
Jenkins使用这两个概念来介绍一个作业的总体状况:
构建状态:下图中分级符号概述了一个Job新近一次构建会产生的四种可能的状态:
Successful:完成构建,且被认为是稳定的。
Unstable:完成构建,但被认为不稳定。
Failed:构建失败。
Disabled:构建已禁用。
构建稳定性: 当一个Job中构建已完成并生成了一个未发布的目标构件,如果您准备评估此次构建的稳定性,Jenkins会基于一些后处理器任务为构建发布一个稳健指数 (从0-100 ),这些任务一般以插件的方式实现。它们可能包括单元测试(JUnit)、覆盖率(Cobertura )和静态代码分析(FindBugs)。分数越高,表明构建越稳定。下图中分级符号概述了稳定性的评分范围。任何构建作业的状态(总分100)低于80分就是不稳定的。
在当前Job主界面也可看到。
左侧栏的链接主要控制Job的配置、删除作业、构建作业。右边部分的链接指向最新的项目报告和构件。 通过点击构建历史(Build History)中某个具体的构建链接,您就能跳转到Jenkins为这个构建实例而创建的构建主页上。如下图
如果你想通过视图输出界面来监控当前任务的进展情况。你可以单击Console Output(控制台输出)。如果工作已完成,这将显示构建脚本产生的静态输出;如果作业仍然在运行中,Jenkins将不断刷新网页的内容,以便您可以看到它运行时的输出。如下图:
3 Jenkins插件
3.1 Jenkins插件安装
从Jenkins现有的功能扩展或开发者们为Jenkins提供的新功能都可以称之为Jenkins插件。
Jenkins 插件管理器允许您安装新的插件,和更新您Jenkins服务器上的插件。管理者将连接到联机资料库,检索可用的和已更新的插件。如果您的Jenkins服务器无法直接连接到外部资源,您可以从Jenkins网站上下载或者翻墙。
在已运行的Jenkins主页中,点击左侧的系统管理—>管理插件进入如下界面:
它包含四个标签:
更新:清单中列示了Jenkins为某些插件搜索到了可用的更新。列出的每个插件可以被选择并应用更新。
可选安装:清单中列示了可用于安装(而不是目前已安装的)的所有插件。列出的每个插件都可以被选择并安装。
已安装:清单中列示了已经安装的插件。
高级:允许您通过设定HTTP代理的方式使Jenkins与在线插件库建立连接。此外,还提供了一个上传设备,可以安装你在Jenkins以外已下载的那些插件。
如果想安装新的插件,可以点击tab分页中的可选插件。如下图:
从图可知,各种Jenkins插件根据之前所记述的类型进行分门别类。可勾选任意想安装的Jenkins插件,点击直接安装按钮进行安装。安装后,所有插件以hpi作为后缀名放置在plugins文件夹下。如果是高级用户还可以自行开发插件方便具体项目使用。
注意:安装完成后需要重启Jenkins部署的容器。这样才能使用新装的插件。