通过svn获取代码,然后maven编译,发布到jetty,然后重启
#!/bin/sh
svnpath=http://192.168.1.121/svn/cate-manager/trunk
svnusername=yoursvnname
svnpassword=yousvnpwd
workplace=cate-manager
projname=cate-manager-web
deployPath=/home/work/jetty-80/webapps
stopShell="/home/work/jetty-80/bin/jetty.sh stop"
startShell="/home/work/jetty-80/bin/jetty.sh start"
restartShell="/home/work/jetty-80/bin/jetty.sh restart"
rm -fr ${workplace}
#从svn上面export代码
svn export ${svnpath} ./${workplace} --username ${svnusername} --password ${svnpassword}
#maven编译
compileSuccessFlag=0
cd ${workplace}
mvn clean package -Dmaven.test.skip=true
if [ $? -eq 0 ]; then
compileSuccessFlag=1
echo "maven编译成功"
else
echo "maven编译失败"
fi
cd ../
#如果编译失败,直接退出
echo ${compileSuccessFlag}
if [ ${compileSuccessFlag} -eq 0 ]; then
exit 1;
fi
#编译成功,war存在,则复制到jetty目录,重启jetty
warPath=./${workplace}/${projname}/target/${projname}.war
if [ -f "${warPath}" ]; then
#删除老的war包,将新的包拷贝过去
rm -f ${deployPath}/root.war
cp ./${workplace}/${projname}/target/${projname}.war ${deployPath}/root.war
#重启jetty
echo ${restartShell}
${restartShell}
else
echo "war包不存在"
fi
echo "deploy success"