之前写了个gradle自动打包,移动到目录的shell,保存一下
#!/bin/bash
echo -e "自动化部署脚本"
PROJECT_NAME="cerberus-1.0" # 名称 默认用该名称作为发布项目的上级目录
DIR_RELEASE_WEBAPPS=/run/media/root/disk1/jamie # 项目发布目录
DIR_RELEASE_BACKUP_PROJECT=/run/media/root/disk1/jamie/backup/$PROJECT_NAME # 项目备份目录
DIR_GIT_PROJECT=/root/git/xxx # 项目源码所在目录
FILE_GIT_PROJECT_JAR=/root/git/s/build/libs/$PROJECT_NAME.jar # 编译之后JAR包所在的路径
echo "============ 处理给定工作目录是否存在,不存在则创建"
if [ -d "$DIR_RELEASE_WEBAPPS" ];
then
echo $DIR_RELEASE_WEBAPPS "目录存已在"
else
mkdir -p $DIR_RELEASE_WEBAPPS
fi
if [ -d "$DIR_RELEASE_BACKUP_PROJECT" ];
then
echo $DIR_RELEASE_BACKUP_PROJECT "目录存已在"
else
mkdir -p $DIR_RELEASE_BACKUP_PROJECT
fi
echo "============ pull 同步更新项目"
cd $DIR_GIT_PROJECT
git pull
gradle bootrepackage
echo "============ 准备项目文件及备份"
cd $DIR_RELEASE_WEBAPPS
cp -u $PROJECT_NAME.jar $DIR_RELEASE_BACKUP_PROJECT # 先备份
rm -rf $PROJECT_NAME.jar # 后删除
cp -u $FILE_GIT_PROJECT_JAR $DIR_RELEASE_WEBAPPS # 将新的拷贝过来
echo "============ 完成"