`
annan211
  • 浏览: 445751 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

shell 自动部署tar包

 
阅读更多
#!/bin/bash

:<<!
  @date 2018-03-15
  @author Jeff.jing
  @desc 
     使用规则:
	  1 脚本需要有执行权限 chmod 755
	  2 需要将 standalone.tar.gz 压缩文件作为参数传入脚本
	 	
!

#接收部署文件名称
standalone_file=$1
if [ ! -f $standalone_file ]; then  
  echo $standalone_file " source file is not found,please check it and try again later !"
  exit 1
fi  
	
if [[ ! -s $standalone_file ]];then 
  echo "***********************************************************************"
  echo "***********************************************************************"
  echo "target source file  is not found ,please check it and try again later !"
  echo "***********************************************************************"
  echo "***********************************************************************"
  exit 1
fi 

if [ ! "${standalone_file##*.}"x = "gz"x ];then
  echo "***********************************************************************"
  echo "***********************************************************************"
  echo "target source file type is not .tar.gz ,please check it and try again later !"
  echo "***********************************************************************"
  echo "***********************************************************************"
  exit 1
fi


#备份原项目
backup_dir=/opt/profile-facade-auto-`date '+%Y%m%d%H%M%S'`
echo "***********************************************************************"
echo "begin backup profile-facade-auto into "$backup_dir
sudo mkdir $backup_dir
sudo cp -R /opt/profile-facade-auto/*  $backup_dir
echo "backup profile-facade-auto into is done"

p_id='profile-facade-auto.PID'
kill_file="kil-file"
touch $p_id
touch $kill_file

#停止facade-auto 进程
echo "***********************************************************************"
echo "begin stop profile-facade-auto java process "
ps -ef | grep "/opt/profile-facade-auto/config/" | grep -v grep | awk '{print $2}' > $p_id
P_ID=$(head -1 $p_id | awk '{print$1}')
echo $P_ID 

if [ ! -f $P_ID ]; then
	echo "exit failure process : "$P_ID 
	sudo kill -9 ${P_ID}  #>/dev/null 2>&1    需要判断此进程是否真的存在 !!!!!
	echo "profile-facade-auto has been stoped"
fi

sudo rm -rf  /opt/profile-facade-auto/
sudo mkdir /opt/profile-facade-auto/

#解压缩目标发布包
echo "***********************************************************************"
echo "begin install profile-facade-auto service,please wait a second... "
sudo tar -zxvf $standalone_file  -C /opt/profile-facade-auto

#线上环境配置文件覆盖
sudo cp $backup_dir/config/DP-ProfileFacadeAuto-Traffic/config/automotive-schema-extension.json /opt/profile-facade-auto/config/DP-ProfileFacadeAuto-Traffic/config/
sudo cp $backup_dir/config/DP-ProfileFacadeAuto-Traffic/config/profile-facade-auto.config.yml /opt/profile-facade-auto/config/DP-ProfileFacadeAuto-Traffic/config/
sudo cp $backup_dir/config/DP-ProfileFacadeAuto-Traffic/credential/DP-ProfileFacadeAuto-Traffic.yml  /opt/profile-facade-auto/config/DP-ProfileFacadeAuto-Traffic/credential/
sudo cp -R $backup_dir/config/foundation-shared/config/* /opt/profile-facade-auto/config/foundation-shared/config/

#启动项目
echo "***********************************************************************"
echo "starting profile-facade-auto service "
sudo /opt/profile-facade-auto/bin/startup.sh 
echo "profile-facade-auto start up success !" 

rm $p_id





分享到:
评论

相关推荐

    离线Shell脚本自动化部署Fastdfs

    tar -zxvf libfastcommon-V1.0.38.tar.gz cd libfastcommon-1.0.38/ #编译安装 ./make.sh && ./make.sh install cd #安装fastdfs tar -zxvf fastdfsV5.11.tar.gz cd fastdfs-5.11/ #编译安装 ./make.sh ...

    SparkDeployTools:用于将 spark 自动部署到多节点的 Linux shell

    Spark自动部署工具 本工具有一些需要Expect工具的支持实现SSH用户名和密码自动登录。 1. linux\mscp 一键多节点拷贝,使用expect进行远程ssh登陆。可以实现自动解压缩tar文件,自动递归拷贝目录。会调用multicopy_...

    install-app:各种应用部署安装方式汇总,如:纯手动执行说明脚本+半自动shell脚本+docker方式+k8s方式安装应用

    install-app各种应用部署安装方式汇总,如:纯手动执行说明脚本+半自动shell脚本+docker方式+k8s方式安装应用各种软件源的配置参考http://mirrors.ustc.edu.cn/help/注意:shell.tar.gz 默认解压缩放在/opt目录下,...

    一个简洁的全自动安装LNMP服务器环境的Shell脚本分享

    此脚本在生产服务器上使用了一年多,本脚本崇尚简单唯美,只需要一个脚本就可以在任何一台有网络的服务器上自动配置LNMP。 本脚本会在脚本执行目录下,建packages目录用于存放LNMP所需要的软件。大家安装完可以删除...

    自动从GitHub部署到Replit,闪电般快:high_voltage:

    重新部署自动从 GitHub 部署到 Replit,闪电般快速:high_voltage:repl.deploy分为一个 GitHub 应用程序,它侦听代码更改并将事件发送到您的 repl在您的 repl 上运行的守护进程侦听事件、从 GitHub 获取更改并重新...

    一键部署kubernetes1.18版本

    运行直接tar -zxvf 解压过后,运行install.sh即可,中途会需要输入IP地址(后续版本会添加自动获取),会生成node节点jion加入的文本。而且shell中都是很多简单的代码,可以通过学习进行自行编写升级。有些备注。学...

    DT:在嵌套虚拟机中自动部署Hadoop

    DT 在嵌套虚拟机中自动部署Hadoop 群集用到的pkg hadoop-2.10.1.tar.gz spark-3.0.2-bin-without-hadoop.tgz 猪0.17.0.tar.gz ache-hive-2.3.7-bin.tar.gz apache-tez-0.9.2-bin.tar.gzap

    基于Django+PyEcharts实现游客行为分析系统可视化大屏源码+操作说明+sql数据库.tar

    基于Django+PyEcharts实现游客行为分析系统可视化大屏源码+操作说明+sql数据库.tar 本项目Scrapy进行数据爬取,并使用Django框架+PyEcharts实现可视化大屏。效果如下 每个模块都有详情页,可以通过点击首页各个模块...

    java开源包8

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包4

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    CentOS装机实用Bash脚本

    自己写的几个Bash脚本 适用系统:CentOS6.x CentOS7.x 上传到CentOS系统中任意目录解压 #tar -...本着方便批量部署集群与学习的目的,对自动化部署十分感兴趣, 但个人水平能力有限,有错误或不足的地方欢迎各位指正!

    java开源包1

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包2

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包3

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包11

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包6

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包5

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包10

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包7

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

    java开源包9

    SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,...

Global site tag (gtag.js) - Google Analytics