jenkins 自动发布脚本(publish.sh)
2017-07-05 00:00
501 查看
1. jenkins打包完成后,通过ssh将war上传到目标服务器,之后执行指定文件、传入参数
2. # touch /data/tomcat/jenkins/publish.sh
3. 增加如下内容:
2. # touch /data/tomcat/jenkins/publish.sh
3. 增加如下内容:
#!/bin/bash #defined source /etc/profile TOMCAT_HOME="/root/jenkins/tomcat" TOMCAT_PORT=8088 PROJECT="$1" #param validate if [ $# -lt 1 ]; then echo "you must use like this : ./publish.sh <projectname> <tomcat home dir>:<tomcat port>" exit fi if [ "$2" == "" ]; then echo "you must use like this : ./publish.sh <projectname> <tomcat home dir>:<tomcat port>" exit fi #sleep 5 OLD_IFS=$IFS IFS=$',' arr=($2) for x in ${arr[@]}; do IFS=$':' p=($x) TOMCAT_HOME=${p[0]} TOMCAT_PORT=${p[1]} #check tomcat process tomcat_pid=`/usr/sbin/lsof -n -P -t -i :$TOMCAT_PORT` echo "current :" $tomcat_pid #shutdown tomcat kill -9 "$tomcat_pid" echo "tomcat shutdown" while [ -n "$tomcat_pid" ] do sleep 5 tomcat_pid=`/usr/sbin/lsof -n -P -t -i :$TOMCAT_PORT` kill -9 "$tomcat_pid" echo "scan tomcat pid :" $tomcat_pid done #bak project #BAK_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/$PROJECT*.war basepath=$(cd `dirname $0`; pwd) #publish project echo "scan no tomcat pid,$PROJECT publishing" rm -rf "$TOMCAT_HOME"/webapps/ROOT* cp "$basepath"/$PROJECT*.war "$TOMCAT_HOME"/webapps/ROOT.war #start tomcat "$TOMCAT_HOME"/bin/startup.sh echo "tomcat is starting,please try to access $PROJECT conslone url" done IFS=$OLD_IFS
相关文章推荐
- Jenkins自动构建发布镜像脚本
- 使用 svn+maven+jenkins(hudson)+Publish Over SSH plugins 构建持续集成及自动远程发布体系(转)
- Jenkins Publish Over SSH 远程自动发布
- 【Java工具】java项目 Idea打包发布工具,自动生成bat sh 、shell 脚本
- 贴一段Jenkins的自动发布脚本
- 使用 svn+maven+jenkins(hudson)+Publish Over SSH plugins 构建持续集成及自动远程发布体系
- macos下使用jenkins+tomcat搭建自动构建环境的脚本配置
- sh脚本----第二个sh脚本,第一个没权利发布
- 脚本ANT自动打包Android应用(方便多渠道发布)
- 项目管理实践【五】自动编译和发布【Using Visual Studio with Source Control System to build and publish website automatically】
- tomcat项目自动发布脚本.项目配置脚本
- tomcat项目自动发布脚本.脚本运行效果
- 自动运行和关闭jar程序的sh脚本
- 使用hotnode自动更新脚本(热发布)
- 项目管理实践【五】自动编译和发布网站【Using Visual Studio with Source Control System to build and publish website autom
- Linux下Oracle归档日志自动清理脚本代码(sh)
- 项目管理实践【四】自动编译和发布网站【Using Visual Studio with Source Control System to build and publish website automatically】
- nuget自动发布脚本
- 项目管理实践【五】自动编译和发布网站【Using Visual Studio with Source Control System to build and publish website automatically】
- 通过Python脚本自动发布ArcGIS服务