一些检测仍在等待运行
Docs Build / build-and-deploy (push) Waiting to run
- 移除 ConfigManager 配置管理器类 - 移除 GameManager 全局单例管理器类 - 移除 NetworkManager 网络连接管理器类 - 移除 CharacterData 和 ItemData 数据模型类 - 移除 BagScene、BattleScene、LobbyScene 等场景脚本 - 移除 EncounterBubble 和 EventFeedPanel UI组件脚本 - 更新代理邀请文档中的服务器连接方式 - 更新同步状态表格中的代理任务分配信息 - 添加 MiMo 任务完成总结和审查修复记录
54 行
1.4 KiB
Bash
可执行文件
54 行
1.4 KiB
Bash
可执行文件
#!/bin/bash
|
|
# 服务器侧同步文档站:拉取最新代码、构建 MkDocs、同步到站点目录
|
|
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
DEPLOY_ROOT="${DEPLOY_ROOT:-/var/www/docs.xuqinmin.com}"
|
|
SITE_DIR="$ROOT_DIR/site"
|
|
TARGET_DIR="$DEPLOY_ROOT/site"
|
|
VENV_DIR="${VENV_DIR:-$ROOT_DIR/.venv-docs}"
|
|
|
|
if ! command -v python3 >/dev/null 2>&1; then
|
|
echo "错误: 未检测到 python3"
|
|
exit 1
|
|
fi
|
|
|
|
if ! command -v rsync >/dev/null 2>&1; then
|
|
echo "错误: 未检测到 rsync"
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "$TARGET_DIR"
|
|
|
|
UPDATED=1
|
|
if [ -d "$ROOT_DIR/.git" ]; then
|
|
BEFORE_HEAD="$(git -C "$ROOT_DIR" rev-parse HEAD 2>/dev/null || true)"
|
|
git -C "$ROOT_DIR" pull --ff-only --quiet
|
|
AFTER_HEAD="$(git -C "$ROOT_DIR" rev-parse HEAD 2>/dev/null || true)"
|
|
if [ -n "$BEFORE_HEAD" ] && [ "$BEFORE_HEAD" = "$AFTER_HEAD" ]; then
|
|
UPDATED=0
|
|
fi
|
|
fi
|
|
|
|
if [ ! -d "$VENV_DIR" ]; then
|
|
python3 -m venv "$VENV_DIR"
|
|
fi
|
|
|
|
if [ ! -x "$VENV_DIR/bin/mkdocs" ]; then
|
|
"$VENV_DIR/bin/pip" install --upgrade pip >/dev/null
|
|
"$VENV_DIR/bin/pip" install mkdocs-material >/dev/null
|
|
fi
|
|
|
|
if [ "$UPDATED" -eq 0 ] && [ -d "$SITE_DIR" ]; then
|
|
echo "仓库无更新,跳过构建。"
|
|
exit 0
|
|
fi
|
|
|
|
echo "开始构建设计文档站..."
|
|
"$VENV_DIR/bin/mkdocs" build --clean --strict --site-dir "$SITE_DIR"
|
|
|
|
echo "同步到服务器目录..."
|
|
rsync -a --delete "$SITE_DIR"/ "$TARGET_DIR"/
|
|
echo "同步完成: $TARGET_DIR"
|