From 907894e9ced7f0cecaafa57c0fa5a1f360efb56b Mon Sep 17 00:00:00 2001 From: claude_dev Date: Thu, 30 Jul 2026 22:36:17 +0800 Subject: [PATCH] =?UTF-8?q?docs(claude):=20=E9=83=A8=E7=BD=B2=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E6=94=B9CI/CD=E8=87=AA=E5=8A=A8=E4=B8=BA=E4=B8=BB(pus?= =?UTF-8?q?h=E8=A7=A6=E5=8F=91test=E2=86=92nas-smoke=E2=86=92vps)+?= =?UTF-8?q?=E6=89=8B=E5=8A=A8promote=E5=A4=87=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .claude/CLAUDE.md | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index d03b98f..cb498bc 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -136,13 +136,27 @@ NAS 上用于本项目部署的目录有两个(容器挂载源): - A 股数据:`/volume1/stock/A股数据/`、`/volume1/stock/minute_kline/` - 回测结果库:`/volume1/stock/sanguo_vnpy/data/backtest_results.db`(Phase 2,config/backtest.yaml 配置) -### 部署流程(开发 → 安装 → 运行) -1. 本机改代码(`~/.openclaw/sanguo_projects/sanguo_vnpy_v2` = `/Users/chufeng/.openclaw/...`) -2. rsync 到 NAS 安装目录: - ``` - rsync -avz -e ssh --exclude='.git' --exclude='vnpy_v4.4.0' --exclude='__pycache__' --exclude='.superpowers' --exclude='docs' --exclude='tests/data' ./ sanguo-nas:/volume1/homes/admin/.sanguo_projects/sanguo_vnpy_v2/ - ``` -3. 容器 `sanguo_vnpy_v2` 挂载安装目录为 `/app`(bind-mount),代码改完即生效;若需重载进程 `docker restart sanguo_vnpy_v2` +### 部署流程(CI/CD 自动为主,所有开发 session 必读) + +**默认走 CI/CD 自动部署**:改完代码 `git push origin master` → Gitea Actions 自动跑: +``` +test(pytest 数据层) → nas-smoke(NAS 副本 dbbardata) → vps(promote 到 NAS+VPS + verify_unified_e2e 真数据验证) +``` +全绿 = 代码已自动上 NAS test + VPS prod,**无需手动 rsync/scp**。 + +- **看 CI 结果**:Gitea → `sanguo/sanguo_vnpy_v2` → Actions(`http://192.168.2.154:3000/sanguo/sanguo_vnpy_v2/actions`),🟢已部署 / 🔴点 run 看 log 修完重 push +- **workflow**:`.gitea/workflows/ci-cd.yml`;**详细流程 + 各角色速查**:`docs/session-environment-guide.md` +- **限制**:pytest 只覆盖 `tests/data_platform`(数据层冒烟,api/live 缺 fastapi 靠各 session 自测);runner 是 Mac(睡眠时 CI 不跑);vps 全自动无 gate(push 即上 prod) + +**手动 promote(CI 没跑/Mac 睡眠/应急/只改配置想立即推时用)**: +```bash +bash scripts/nas_sync/promote.sh # 全量推 NAS+VPS +bash scripts/nas_sync/promote.sh --module sanguo_portfolio # 单模块 +``` +手动晋升/rollback/数据铁律 runbook:`docs/three-env-code-promote.md` + +**reload**:VPS 无常驻 web,代码下次 schtask/回测启动自动生效;立即让采集生效: +`ssh 49.232.102.198 'schtasks /end sanguo-bs-eod && schtasks /run sanguo-bs-eod'` ### NAS SSH / Docker 访问 - SSH:`ssh sanguo-nas`(key 免密,`~/.ssh/config` 配置;不用密码 sshpass)