game-api/sh/linux/build.sh

47 lines
1012 B
Bash

#!/bin/bash
targetName=xk-admin
basePath=/opt/server/dist/${targetName}
# 1. 切换项目根目录
cd "$(dirname "$0")/../.."
# 2. 切换分支(可选参数)
if [ $# -gt 0 ]; then
echo "切换分支: $1"
git fetch
git checkout $1
fi
# 3. 拉取最新代码
echo "拉取最新代码..."
git pull
# 4. Maven 构建
echo "开始打包..."
mvn -Dmaven.test.skip=true clean package
if [ $? -eq 0 ]; then
echo "打包成功,开始拷贝文件..."
# 5. 创建目标目录
mkdir -p ${basePath}/config
mkdir -p ${basePath}/dumps
# 6. 拷贝构建产物
cp -v ff-game/target/xk-*.jar ${basePath}/
# 7. 拷贝配置文件
cp -v ff-game/src/main/resources/config/**/*.properties ${basePath}/config/
cp -v ff-game/src/main/resources/application-prod.properties ${basePath}/
# 8. 拷贝启动脚本
cp ./start.sh ${basePath}/
echo "构建并部署完成,路径:${basePath}"
else
echo "构建失败,请检查构建日志。"
exit 1
fi