#!/bin/bash echo "##deploy begin" shellName=$0 echo "##run shell $0" # 接收参数:服务名称,应用名称,应用环境 # reservoir-main-dev-1.0-SNAPSHOT.war app=$1 # dev profiles=$2 # tomcat-8082-reservoir-backend tomcatServer=$3 # /workspace/tomcat/reservoir-backend tomcatPath=$4 # 获取当前执行脚本路径 currentDir=$(cd $(dirname $0); pwd) # 打印当前路径 echo "##current dir:${currentDir}" cd ${currentDir} # 打印输入参数 echo "##tomcatServer:${tomcatServer}" echo "##app:${app}" echo "##profiles:${profiles}" # #更新GIT到最新版本 # echo "开始执行" CMD_PATH=`dirname $0` cd $CMD_PATH echo "进入目录:$PWD" # #未clone请先做一下clone # echo "拉取代码..." git reset --hard HEAD git clean -f git pull # #修改目录权限 # echo "修改目录用户权限..." chmod -R 755 ./ # 编译打包程序 #echo "mvn clean package -DskipTests -P ${profiles}" #mvn clean package -DskipTests -P ${profiles} #echo "##mvn war:war -DskipTests -P ${profiles}" #mvn war:war -DskipTests -P ${profiles} # mvn install -P ${profiles} # 停止docker服务 echo "##docker stop" docker stop ${tomcatServer} # 拷贝程序至目标目录 echo "##copy war package" warDir=${currentDir}/reservoir-main/target #将程序包命名为ROOT echo "##mv ${warDir}/${app} ${warDir}/ROOT.war" mv ${warDir}/${app} ${warDir}/ROOT.war #移除旧包 echo "rm -rf ${tomcatPath}/webapps/ROO*" rm -rf ${tomcatPath}/webapps/ROO* #将新的包移到Tomcat程序目录下 echo "cp -r ${warDir}/ROOT.war ./webapps" cp -r ${warDir}/ROOT.war ${tomcatPath}/webapps # 启动docker服务 echo "##docker start" docker start ${tomcatServer} # echo "##start end"