feat: add git pull as first deploy step, remove embedded MySQL wait logic
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user