修复工作流:支持非git目录部署
All checks were successful
Deploy to Server / deploy (push) Successful in 19s

This commit is contained in:
爽哒哒
2026-03-21 00:16:06 +08:00
parent 7e0d68112d
commit 65a03fb761

View File

@@ -13,30 +13,32 @@ jobs:
password: 123quant-speed
script: |
TARGET_DIR="/home/quant/data/dev/deploy"
REPO_URL="https://gitea.tangledup-ai.com/quant-speed-AI/Scoring-System.git"
BRANCH="main"
SUDO_PASSWORD="123quant-speed"
# 1. 切换到目标目录
echo "===== 切换到目标目录: $TARGET_DIR ====="
cd $TARGET_DIR || {
echo "错误:目录 $TARGET_DIR 不存在!"
exit 1
}
# 1. 创建目标目录
echo "===== 创建目标目录: $TARGET_DIR ====="
sudo mkdir -p $TARGET_DIR
# 2. 停止并移除 Docker 容器
echo -e "\n===== 停止并清理 Docker ====="
echo $SUDO_PASSWORD | sudo -S docker compose down
# 3. 拉取 Git 最新代码
echo -e "\n===== 拉取 Git 代码 ====="
if ! git pull; then
echo "警告Git pull 失败,尝试强制同步远程代码..."
git fetch --all
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
git reset --hard origin/$CURRENT_BRANCH
git pull
# 2. 检查是否是 git 仓库
echo "===== 检查 git 仓库 ====="
cd $TARGET_DIR
if [ ! -d ".git" ]; then
echo "目录不是 git 仓库,将进行克隆..."
sudo rm -rf $TARGET_DIR/*
sudo git clone -b $BRANCH $REPO_URL $TARGET_DIR
else
echo "已是 git 仓库,执行 pull..."
sudo git pull origin $BRANCH
fi
# 3.1 创建/更新 .env 文件
# 3. 停止并移除 Docker 容器
echo -e "\n===== 停止并清理 Docker ====="
cd $TARGET_DIR
echo $SUDO_PASSWORD | sudo -S docker compose down
# 4. 创建/更新 .env 文件
echo -e "\n===== 配置环境变量 ====="
cat > backend/.env <<EOF
# Database Configuration
@@ -56,7 +58,7 @@ jobs:
DASHSCOPE_API_KEY=sk-84e9eef24a274f568d4fa15c97556c9f
EOF
# 4. 重新启动 Docker 容器
# 5. 重新启动 Docker 容器
echo -e "\n===== 启动 Docker 容器 ====="
echo $SUDO_PASSWORD | sudo -S docker compose up -d --build