deploy automation script

本文介绍了一款用于Tomcat的自动化部署脚本。该脚本通过Shell语言编写,能够从Maven仓库下载WAR文件,并自动完成在Tomcat上的部署过程。支持选择不同项目及指定部署版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

In order to make our process automation and make free of error, we build automation script for deploy. Following script will download war file from maven repository and deploy to tomcat.

 

#!/bin/sh 

TOMCAT_HOME=/opt/tomcat

if [ -z $PROJECT]; then
        PS3="Please choose:"
        PROJECTS="project1 project2"
        echo "Choose which project you want to deploy from the list below:"
        select PROJECT in $PROJECTS;
        do
                case $PROJECT in
                project1)
                        REPO_PATH=com/yuan/project1
                        PRJ_NAME=project1
                        break;;
                esac  
        done
fi 

if [ -z $PROJECT ]; then
        echo "Error in select project!"
        exit 1 
fi

read -p "Please enter which version you want to deploy:" PRJ_VERSION


WAR_FILE="http://build.yuan.com:9999/repository/"$REPO_PATH"/"$PRJ_VERSION"/"$PRJ_NAME"-"$PRJ_VERSION".war"

echo "Project Name="$PRJ_NAME
echo "WAR location="$WAR_FILE
echo "TOMCAT_HOME=" $TOMCAT_HOME

WORKING_DIR=~/tmp

echo "Working Dir=" $WORKING_DIR

echo "---clean working dir..."
if [ -d $WORKING_DIR ]
then
        rm -fR $WORKING_DIR
fi
mkdir $WORKING_DIR

cd $WORKING_DIR
echo "Get war file..."
wget $WAR_FILE
if [ $? -ne 0 ]; then
        exit 1
fi

echo "shutdown tomcat..."
$TOMCAT_HOME/bin/shutdown.sh
# wait 6 seconds after a clean shutdown before killing

      count=1
      pids=`ps aux | grep java | grep catalina | awk '{print $2}'`
      while [ $count -ne 6 ] && [ -n "$pids" ];
      do
          echo "Waiting 1s on TOMCAT java pids: $pids"
          sleep 1
          count=$(( $count + 1))
          pids=`ps aux | grep java | grep catalina | awk '{print $2}'`
      done

      # kill if anything is still around

      if [ -n "$pids" ]; then
          pkill -9 $pids
      fi

echo "deploy war to tomcat..."
rm -rf $TOMCAT_HOME/webapps/$PRJ_NAME/
rm -rf $TOMCAT_HOME/webapps/$PRJ_NAME.war
cp $WORKING_DIR/$PRJ_NAME-$PRJ_VERSION.war $TOMCAT_HOME/webapps/$PRJ_NAME.war

echo "start tomcat..."
$TOMCAT_HOME/bin/startup.sh

echo "done."
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值