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“,配置示例如下:
公共配置:
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拷贝到文件夹下,执行脚本运行
说明
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