feat: PLANNING体系首版(00路线图/02任务总表/03执行协议/I-03/I-04/registry42口径)+M1止血交付
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
# I-02 · Gitea CI + 定时备份演练
|
||||
|
||||
| 字段 | 值 |
|
||||
|---|---|
|
||||
| 项目 | 基础设施 · Gitea(gitea.mymoyu.top)+ 四项目仓库 |
|
||||
| 优先级 | P1 · M4 |
|
||||
| 建议模型 | deepseek-v4-flash(主)/ glm-5.3-flash(复核) |
|
||||
| 依赖 | 无 |
|
||||
| 预估 | 2 天 |
|
||||
|
||||
## 一、背景(为什么做)
|
||||
|
||||
四个项目全部裸奔:**无 CI、无备份演练**。服务器只有自建 Gitea(gitea.mymoyu.top)。每次改动靠手工跑测试——这正是"多模型协作"最大的风险点:模型交付说全绿,但没人自动复核。
|
||||
|
||||
## 二、目标(交付物)
|
||||
|
||||
**A. Gitea Actions CI(每项目一个 workflow)**
|
||||
1. `chunyu`: 后端 `manage.py test` + 前端 `npm run build`
|
||||
2. `english-drill`: `pytest`(后端)+ E2E `run_e2e.py`(ASGI 模式)
|
||||
3. `dealerhub`: `pytest -q` + 前端 `npm test`/`npm run build`
|
||||
4. `dsp`: `pytest`(后端)
|
||||
5. 触发:push / PR;失败必须真实失败(不 continue-on-error)
|
||||
6. 缓存依赖;单 job 超时限制
|
||||
|
||||
**B. 备份方案 + 演练**
|
||||
7. 备份脚本:PostgreSQL `pg_dump`(各项目库)+ 关键 `data/` 目录 + 配置(脱敏)→ 归档 + 校验和 + 保留策略(如 7 日轮转)
|
||||
8. 恢复脚本 + 演练文档:**至少完成一次真实恢复演练**(空库恢复 → 启动验证),记录耗时与坑
|
||||
|
||||
## 三、验收标准
|
||||
|
||||
- [ ] 四个仓库各有一个可用的 Gitea Actions workflow(附一次真实运行的日志/截图说明)
|
||||
- [ ] CI 对失败用例真实报红(用一个故意失败的临时 commit 验证后还原,或单元自证)
|
||||
- [ ] 备份脚本产出带校验和的归档;保留策略生效
|
||||
- [ ] **恢复演练完成**:从备份恢复到可运行状态,全流程记录(时间、命令、结果)
|
||||
- [ ] 文档:`infra/README.md`(CI 说明 + 备份/恢复手册)
|
||||
|
||||
## 四、验收命令(参考)
|
||||
|
||||
```bash
|
||||
bash infra/backup.sh # 产出归档 + .sha256
|
||||
bash infra/restore.sh <archive> # 恢复演练
|
||||
```
|
||||
|
||||
## 五、边界(不许做)
|
||||
|
||||
- 备份产物不含明文密钥(脱敏或排除)
|
||||
- 不在 CI 里跑需要私有凭据的部署
|
||||
- 不改各项目业务代码(只加 CI/基建文件)
|
||||
|
||||
## 六、交接
|
||||
|
||||
写 `PROGRESS_I-02.md`(含 CI 运行证据、恢复演练记录、归档示例校验和)。
|
||||
Reference in New Issue
Block a user