Jenkins容易使用

Jenkins简单使用

环境

CentOS+JDK7+MAVEN3.2+SVN

SVN安装 

yum install -y subversion

 

 

一.下载并运行Jenkins

地址:http://jenkins-ci.org/

下载完成后扔到Tomcat下运行,“系统管理→系统设置”配置JDK,MAVEN,SVN

 

二.安装Publish Over SSH插件

1.安装

在“系统管理→管理插件→可选插件→Artifact Uploaders→Publish Over SSH”,勾选Publish Over SSH插件,选择直接安装

 

2.配置

在“系统管理→系统设置→Publish Over SSH“,配置示例如下:


Jenkins容易使用
 

公共配置:

Passphrase:密码(key的密码,如果你设置了)

Path to key:key文件(私钥)的路径

Key:将私钥复制到这个框中

Disable exec:禁止运行命令

 

私有配置:

SSH Server Name:标识的名字(随便你取什么)

Hostname:需要连接ssh的主机名或ip地址(建议ip)

Username:用户名

Remote Directory:远程目录

Use password authentication, or use a different key:可以替换公共配置(选中展开的就是公共配置的东西,这样做扩展性很好)

 

私有配置的高级:

Port:端口(默认22)

Timeout (ms):超时时间(毫秒)默认即可

Disable exec:禁止运行命令

Test Configuration:测试连接 

 

 

三. 构建一个maven项目

配置如下:先安装依赖,后通过SSH拷贝到文件夹下,执行脚本运行


Jenkins容易使用
 
Jenkins容易使用
 
Jenkins容易使用
 
Jenkins容易使用
 
Jenkins容易使用
 
Jenkins容易使用
 
Jenkins容易使用
 

说明

1.项目checkout地址为 : ~/.jenkins/jobs/{项目名称}/workspace ,这部分不用填写

2.Cron Expression语法,看我另一个帖子 http://sgq0085.iteye.com/blog/2202658

 

Pre Steps

安装依赖,POM需要直接指向需要的POM文件

 

SSH Publishers配置说明:

Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)

Remove prefix:移除目录(只能指定Transfer Set Source files中的目录)

Remote directory:远程目录(根据你的需求填写吧,因为我这儿是测试,所以偷懒没有填写。默认会继承系统配置)

 

Exec command:把你要执行的命令写在里面

 

四.执行脚本

publish.sh

#!/bin/bash
#defined 
TOMCAT_HOME="/root/jenkins/save/apache-tomcat-7.0.61"
TOMCAT_PORT=80
PROJECT=adp-web
SAVE_DIR="/root/jenkins/save"
#shutdown tomcat
"$TOMCAT_HOME"/bin/shutdown.sh
echo "tomcat shutdown"
#publish project
echo "$PROJECT publishing"
rm -rf "$TOMCAT_HOME"/webapps/$PROJECT*
cp "$SAVE_DIR"/$PROJECT.war "$TOMCAT_HOME"/webapps/$PROJECT.war
#bak project
BAK_DIR="$SAVE_DIR"/bak/$PROJECT/`date +%Y%m%d`
mkdir -p "$BAK_DIR"
cp "$TOMCAT_HOME"/webapps/$PROJECT.war "$BAK_DIR"/"$PROJECT"_`date +%H%M%S`.war
#remove tmp
rm -rf "$SAVE_DIR"/$PROJECT*.war
#start tomcat
"$TOMCAT_HOME"/bin/startup.sh
echo "tomcat is starting,please try to access $PROJECT conslone url" 1