first commit
This commit is contained in:
commit
ba848e218d
1001 changed files with 152333 additions and 0 deletions
178
shell/java微服务更新/jar_deploy.sh
Normal file
178
shell/java微服务更新/jar_deploy.sh
Normal file
|
@ -0,0 +1,178 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Edit by ZeroC
|
||||
# 2020/03/13
|
||||
|
||||
eureka=/home/appuser/insurance/servers/application-insurance-discovery-server/application-insurance-discovery-server.jar
|
||||
discovery=application-insurance-discovery-server.jar
|
||||
env=dev
|
||||
|
||||
# 参数检查及赋值
|
||||
getParameter()
|
||||
{
|
||||
while [ -n "$1" ];do
|
||||
case $1 in
|
||||
--publicdir)
|
||||
if [ -n "$2" ];then
|
||||
# jar包临时存放目录
|
||||
publicdir=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
--basedir)
|
||||
if [ -n "$2" ];then
|
||||
# 项目根目录
|
||||
basedir=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
--project)
|
||||
if [ -n "$2" ];then
|
||||
# 应用名字
|
||||
project=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
--package)
|
||||
if [ -n "$2" ];then
|
||||
# 包名
|
||||
package=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
--option)
|
||||
if [ -n "$2" ];then
|
||||
# jar启动参数
|
||||
option=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
--proption)
|
||||
if [ -n "$2" ];then
|
||||
# 项目运行参数
|
||||
proption=$2
|
||||
shift 2
|
||||
else
|
||||
echo -e "\033[32m$1 not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo -e "\033[32mParameter wrong! \033[0m"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ ! -n $publicdir ] || [ ! -n $basedir ] || [ ! -n $project ] || [ ! -n $package ];then
|
||||
echo -e "\033[32mpublicdir/basedir/project/package not set! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查并创建目录
|
||||
dirIsExists()
|
||||
{
|
||||
if [ ! -d $1 ];then
|
||||
mkdir -p $1
|
||||
fi
|
||||
}
|
||||
|
||||
# 创建必要目录
|
||||
mkDir()
|
||||
{
|
||||
# 配置文件目录
|
||||
confdir=$basedir/prod_conf
|
||||
# 配置文件目录
|
||||
appconfdir=$confdir/$project
|
||||
# 应用存放目录
|
||||
projectdir=$basedir/$project
|
||||
# 过去版本存放目录
|
||||
versionsdir=$projectdir/versions
|
||||
|
||||
if [ ! -d "$appconfdir" ];then
|
||||
echo -e "\033[32mConfig directory not EXISTS! Please CHECK ! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dirIsExists $projectdir
|
||||
dirIsExists $versionsdir
|
||||
}
|
||||
|
||||
# 移动到对应目录并创建软链接
|
||||
lnSoft()
|
||||
{
|
||||
if [ -f $publicdir/$package ];then
|
||||
sign=`date +%Y%m%d-%H%M%S`
|
||||
projectname=`echo $package | awk -F'.' '{print $1}'`
|
||||
mv $publicdir/$package $versionsdir/$projectname-${sign}.jar
|
||||
find $versionsdir -name "$projectname-*.jar" -mtime +7 -exec rm -rf {} \;
|
||||
rm -rf $basedir/servers/$project/$package
|
||||
ln -s $versionsdir/$projectname-${sign}.jar $basedir/servers/$project/$package
|
||||
else
|
||||
echo -e "\033[32m$package not Found in $publicdir! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 启动jar文件
|
||||
jarAction()
|
||||
{
|
||||
e_status=`ps aux | grep $discovery | grep -v grep | awk '{print $2}'`
|
||||
if [ -z $e_status ];then
|
||||
nohup java -jar $eureka > /dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
echo -e "\033[31mCreate soft Link!\033[0m"
|
||||
lnSoft
|
||||
|
||||
echo -e "\033[31mStop $project if Exists! \033[0m"
|
||||
jar_status=`ps aux | grep $package |grep "java -jar" | grep -v grep | awk '{print $2}'`
|
||||
if [ -n '$jar_status' ];then
|
||||
kill -9 $jar_status > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
echo -e "\033[31mStart $project Now! \033[0m"
|
||||
#cd $basedir/servers/$project && echo "nohup java -jar $package --spring.profiles.active=$env -Dspring.config.location=$appconfdir/application-${env}.yml > /dev/null 2>&1 &" | bash
|
||||
if [[ $option ]] && [[ $proption ]];then
|
||||
#cd $basedir/servers/$project && echo "nohup java -jar $option $package > /dev/null 2>&1 &" | bash
|
||||
cd $basedir/servers/$project && echo "nohup java -jar $option $package $proption > /dev/null 2>&1 &" | bash
|
||||
elif [[ $option ]] && [[ ! $proption ]];then
|
||||
cd $basedir/servers/$project && echo "nohup java -jar $option $package > /dev/null 2>&1 &" | bash
|
||||
elif [[ ! $option ]] && [[ $proption ]];then
|
||||
cd $basedir/servers/$project && echo "nohup java -jar $package $proption > /dev/null 2>&1 &" | bash
|
||||
else
|
||||
cd $basedir/servers/$project && echo "nohup java -jar $package > /dev/null 2>&1 &" | bash
|
||||
fi
|
||||
|
||||
|
||||
if [ -z '$jar_status' ];then
|
||||
echo -e "\033[32m$project start FAIL! \033[0m"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
main()
|
||||
{
|
||||
getParameter "$@"
|
||||
mkDir
|
||||
jarAction
|
||||
}
|
||||
|
||||
source /home/appuser/.bash_profile
|
||||
main "$@"
|
Loading…
Add table
Add a link
Reference in a new issue