jenkins简介
Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。
一、JDK的安装以及环境变量配置
2)JDK的安装
tar.gz版本在linux下直接解压,命令如下:
bin版本为可执行文件,赋予权限之后直接使用./jdk-6u45-linux-x64.bin即可在当前目录生成对应版本的文件夹。命令如下:
赋权限:
执行 :
3)环境变量配置
修改/etc/profile文件,命令如下:
在文档最底部加入以下语句:
export JAVA_HOME=jdk所在路径
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
通过以下命令使环境变量生效:
如果系统本身已装过jdk,用下面命令把默认的jdk(本系统默认是JDK1.4)改成刚新装的jdk1.7
#cd /usr/bin
#ln -s -f /usr/java/jre/bin/java
#ln -s -f /usr/java/bin/javac
通过java -version命令检查jdk环境变量是否配置成功:
二、Tomcat的安装及配置
1)Tomcat官网下载
http://tomcat.apache.org/download-70.cgi
2)Tomcat解压并赋予权限
Tomcat解压:
Tomcat赋予权限:
启动tomcat:(进入tomcat bin目录,通过以下命令执行)
验证:在浏览器中输入IP地址:8080是否跳转到以下页面:
三、Maven的安装以及环境变量配置
1)Maven官网下载
http://mirror.bit.edu.cn/apache/maven/binaries/apache-maven-3.2.1-bin.tar.gz
2)Maven的安装
通过以下命令将下载好的文件直接解压即可:
3)Maven环境变量配置
修改/etc/profile文件,命令如下:
在文档最底部加入以下语句:
#maven
M2_HOME=maven所在目录
PATH=$PATH:$M2_HOME/bin
export M2_HOME PATH
通过以下命令使环境变量生效:
验证maven是否安装配置成功:下图所示表示成功安装
四、Apache ant安装及配置
1)Ant下载:
http://ant.apache.org/srcdownload.cgi
2)Ant安装及配置
解压缩:
切换到解压目录:
PATH 设置:
ANT_HOME 设置:
现在可以执行 ant -v 来验证你的 ant 是否已安装好了呢,效果如下:
五、Jenkins安装,插件配置以及项目部署
1)Jenkins官网下载:
http://jenkins-ci.org/
注意:这里建议下载war包,否则linux下安装包依赖关系比较麻烦
2)jenkins安装以及启动
将下载好的jenkins.war包拷贝到tomcat 的webapps目录下,然后启动tomcat即可。
Jenkins 验证:
在浏览器里,输入网址: http://localhost:8080/jenkins/ 显示下面界面,跳出选择插件安装的时候直接勾选标准安装即可。
3)Jenkins插件选择安装
进入如上图所示页面,可以看到可选插件,然后在右上角过滤中输入以下插件:
Ant Plugin:
–普通项目构建打包工具。
SSH plugin:
–这个插件执行远程使用SSH协议的shell命令。
Publish Over SSH:
–发送构建工件通过SSH
Deploy plugin:
–Jenkins运行自动部署war包到servlet容器内,要实现这个功能必须安装此
插件。
Maven project plugin:
–构建maven2/3项目时所需的插件。
注意:有些插件需要jdk1.7及以上版本支持,故建议安装1.7版本jdk
4)Jenkins Global Tool Configuration全局工具配置
Maven configuration配置:
Jdk配置:
Ant配置:
Maven配置:
5)jenkins系统设置
配置publish over ssh,用于项目远程部署:
配置subversion版本:
6)新建jop以及配置
(1) 新建一个jop
从上图我们可以看到新建的时候可以选择不同的构建方式,这里以第一种构建方式(构建一个自由风格的软件项目)为标准进行搭建。
(2) 配置新建的jop
新建完成后,jenkins会自动跳转到配置页面,我们需要配置的地方如下:
1、项目svn地址的配置(包含项目名称):
2、构建触发器:
这里构建触发器的主要作用是定时或者根据项目变化触发构建项目并发布。
1.触发远程构建(例如使用脚本)
–这里可以编写脚本实时监控svn库中项目版本的变化,自动构建此项目。
2.build ofter other projects are built
–这里可以配置依赖项目构建后,然后自动构建此项目。
3.Build periodically
–这里可以建立定期执行项目构建。(常用)。具体定时格式可参考:
http://blog.csdn.net/roothomes/article/details/8736778
3、配置ant对项目进行打包
在下图配置中找到增加构建步骤,选择invoke ant
注意:这里如果需要在jenkins服务器进行一些特殊处理可以增加一个Exeute shell编写shell脚本进行ant构建前后的操作。
选择已安装好的ant版本,若无下拉框而且服务器已经安装ant,该插件则会默认选择服务器已经安装的版本,不用配置。
点开上图右下角的“高级”按钮可进行下面配置
4、配置over ssh
点击增加构建后操作步骤,选择send build artifacts over ssh
根据下图进行配置:
至此,jenkins新建普通java web工程的任务配置完成。
Shell脚本:
#!/bin/bash
export JAVA_HOME=/usr/soft/jdk
tomcat_pid=`/usr/sbin/lsof -n -P -t -i :8089`
[ -n "$tomcat_pid" ] && kill -9 $tomcat_pid
echo "current :" $tomcat_pid
cd /usr/soft/temp/升级包
#判断名称为iGop的文件或文件夹是否存在,存在则删除
if [ -d "/usr/soft/tomcat2/webapps/iGop" ]; then
rm -f /usr/soft/tomcat2/webapps/iGop.war
rm -rf /usr/soft/tomcat2/webapps/iGop
fi
#create bak dir
BAK_DIR=/usr/soft/bak/iGop/`date +%Y%m%d`
mkdir -p "$BAK_DIR"
#bak project
cp iGop_*.war "$BAK_DIR"/iGop_`date +%H%M%S`.war
#deploy project
cp iGop_*.war /usr/soft/tomcat2/webapps/iGop.war
#delete local project
rm -f iGop_*.war
cd /usr/soft/tomcat2/bin
#start tomcat
./startup.sh
(3) 构建新建的jop
选择新建好的项目进入下图所示页面,点击立即构建即可:
(4) 观察项目构建状态
如上图点击图示最新构建的版本,进入下图所示页面:
点击图示红框即可实时观察构建状态,如下图所示:
验证是否构建成功:
在浏览器中输入对应的服务器地址:端口号/项目名称,正常访问即为正常。
附录:
构建状态:下图中分级符号概述了一个Job新近一次构建会产生的四种可能的状态:
Successful:完成构建,且被认为是稳定的。
Unstable:完成构建,但被认为不稳定。
Failed:构建失败。
Disabled:构建已禁用。
构建稳定性: 当一个Job中构建已完成并生成了一个未发布的目标构件,如果您准备评估此次构建的稳定性,Jenkins会基于一些后处理器任务为构建发布一个稳健指数 (从0-100 ),这些任务一般以插件的方式实现。它们可能包括单元测试(JUnit)、覆盖率(Cobertura )和静态代码分析(FindBugs)。分数越高,表明构建越稳定。下图中分级符号概述了稳定性的评分范围。任何构建作业的状态(总分100)低于80分就是不稳定的。