服务器拉取SVN代码打包上传服务器

Posted by xujie on February 6, 2017

正所谓前人栽树,后人乘凉。

感谢Huxpro提供的博客模板

我的的博客

前言

服务器必须具备以下环境:maven、svn、jdk 废话不多说,直接贴上代码

1.创建文件夹,用于存放从SVN拉取的项目文件

mkdir /opt/svndata
cd /opt/svndata

2.从SVN拉取数据:

svn co https://svn地址/svn/xj/zk_api_parent

3.打包项目指令

mvn clean package -pl zk_ykt_api -am -Dmaven.test.skip=true -Ptest

4.下面是完整的shell脚本:

#!/bin/sh
#author xujie
project_path=/opt/tomcat/webapps/zk_ykt_api/
tomcat_path=/opt/tomcat/webapps/
project_file=/opt/tomcat/webapps/zk_ykt_api/zk_ykt_api-0.0.1-SNAPSHOT-nolib.zip
bak_path=/opt/bak/

cp -r ${project_file} /opt/bak

cd /opt/svndata
svn co https://192.168.1.88/svn/xj/zk_api_parent
cd /opt/svndata/zk_api_parent
mvn clean package -pl zk_ykt_api -am -Dmaven.test.skip=true -Ptest


cd /opt/svndata/zk_api_parent/zk_ykt_api/target
cp -f zk_ykt_api-0.0.1-SNAPSHOT-nolib.zip $project_path
cd $project_path
unzip -o zk_ykt_api-0.0.1-SNAPSHOT-nolib.zip

tomcatPath=/opt/tomcat
PID=$(ps -ef|grep tomcat|grep -v grep|awk '{print $2}')
if [ -n "$PID" ];then
  echo "kill loading ..."
  kill -9 ${PID}
fi
sleep 1	
if [ ! -d ${tomcatPath}];then
  echo "file error"
else	
  echo "start....."
  ${tomcatPath}/bin/startup.sh
fi
tail -f /opt/tomcat/logs/catalina.out