From ca2e294735c4d61e93ef8bff4a08b7827837e7a7 Mon Sep 17 00:00:00 2001 From: wonder Date: Sat, 20 Jun 2026 23:09:48 +0800 Subject: [PATCH] feat: add git pull as first deploy step, remove embedded MySQL wait logic --- deploy.sh | 31 ++++++++++++------------------- 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/deploy.sh b/deploy.sh index ca63888..6c2c7e4 100755 --- a/deploy.sh +++ b/deploy.sh @@ -18,7 +18,15 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" cd "$SCRIPT_DIR" # ---------------------------------------------------------- -# 1. 检查 Docker 环境 +# 1. 拉取最新代码 +# ---------------------------------------------------------- +pull_latest() { + info "拉取最新代码..." + git pull --rebase || warn "git pull 失败,将使用本地代码继续构建" +} + +# ---------------------------------------------------------- +# 2. 检查 Docker 环境 # ---------------------------------------------------------- check_docker() { if ! command -v docker &>/dev/null; then @@ -31,7 +39,7 @@ check_docker() { } # ---------------------------------------------------------- -# 2. 配置 Docker 国内镜像加速 +# 3. 配置 Docker 国内镜像加速 # ---------------------------------------------------------- setup_docker_mirror() { local daemon_json="/etc/docker/daemon.json" @@ -60,7 +68,7 @@ setup_docker_mirror() { } # ---------------------------------------------------------- -# 3. 读取 .env 配置文件 +# 4. 读取 .env 配置文件 # ---------------------------------------------------------- load_env() { if [ ! -f ".env" ]; then @@ -90,22 +98,6 @@ build_and_start() { info "启动服务..." docker compose up -d - info "等待 MySQL 就绪..." - local retries=30 - while [ $retries -gt 0 ]; do - if docker compose exec -T mysql mysqladmin ping -h localhost --silent 2>/dev/null; then - info "MySQL 就绪" - break - fi - retries=$((retries - 1)) - sleep 2 - done - - if [ $retries -eq 0 ]; then - warn "MySQL 启动超时,继续等待应用自行重连..." - sleep 10 - fi - info "等待应用启动..." sleep 3 @@ -132,6 +124,7 @@ build_and_start() { main() { info "开始部署 PR-Helper..." + pull_latest check_docker setup_docker_mirror load_env