feat: deploy Codeg multi-agent workspace, Gitea hot/cold storage hub, and grill-me skill

Browse Source
This commit is contained in:
Yin Kou committed 2026-11-07 01:41:54 +08:00
1 parent c4f54203a4
commit 01a4681f98
18 files changed
+1238 -252

No files matched your search

+36
View File
@@ -0,0 +1,36 @@
#!/usr/bin/env bash
# ==============================================================================
# sync-git-to-nas.sh — 将 Mac mini 上的 Gitea 热层数据与大文件同步归档至极空间 Z4 20TB NAS
# ==============================================================================
set -euo pipefail
HOT_DIR="/Users/ixvii0iv/homelab/stacks/git/data"
COLD_DIR="/Users/ixvii0iv/nas/个人空间/Git_Cold_Storage"
if [ ! -d "/Users/ixvii0iv/nas/个人空间" ]; then
echo "[$(date '+%Y-%m-%d %H:%M:%S')] WARN: 极空间 NAS 未挂载,跳过冷存储同步"
exit 0
fi
mkdir -p "$COLD_DIR/lfs" "$COLD_DIR/attachments" "$COLD_DIR/packages" "$COLD_DIR/repo-archive" "$COLD_DIR/bundles" "$COLD_DIR/db"
# 1. 增量同步 LFS 大文件、Release 附件、制品包与归档
rsync -a "$HOT_DIR/lfs/" "$COLD_DIR/lfs/"
rsync -a "$HOT_DIR/attachments/" "$COLD_DIR/attachments/"
rsync -a "$HOT_DIR/packages/" "$COLD_DIR/packages/"
rsync -a "$HOT_DIR/repo-archive/" "$COLD_DIR/repo-archive/"
# 2. 将所有 Git 裸仓库打包为独立自包含的 .bundle 冷备文件(任何时候可直接 git clone 恢复)
if [ -d "$HOT_DIR/repositories" ]; then
find "$HOT_DIR/repositories" -maxdepth 2 -type d -name "*.git" | while read -r repo; do
rel_name=$(echo "${repo#$HOT_DIR/repositories/}" | tr '/' '_')
/usr/bin/git -C "$repo" bundle create "$COLD_DIR/bundles/${rel_name%.git}.bundle" --all >/dev/null 2>&1 || true
done
fi
# 3. 备份 Gitea SQLite 元数据快照
if [ -f "$HOT_DIR/gitea.db" ]; then
/usr/bin/sqlite3 "$HOT_DIR/gitea.db" ".backup '$COLD_DIR/db/gitea-latest.db'" 2>/dev/null || cp "$HOT_DIR/gitea.db" "$COLD_DIR/db/gitea-latest.db"
fi
echo "[$(date '+%Y-%m-%d %H:%M:%S')] OK: Git 热层仓库与 LFS 大文件已同步归档至极空间 ($COLD_DIR)"