2.2 KiB
2.2 KiB
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)
chunyu: 后端manage.py test+ 前端npm run buildenglish-drill:pytest(后端)+ E2Erun_e2e.py(ASGI 模式)dealerhub:pytest -q+ 前端npm test/npm run builddsp:pytest(后端)- 触发:push / PR;失败必须真实失败(不 continue-on-error)
- 缓存依赖;单 job 超时限制
B. 备份方案 + 演练
7. 备份脚本:PostgreSQL pg_dump(各项目库)+ 关键 data/ 目录 + 配置(脱敏)→ 归档 + 校验和 + 保留策略(如 7 日轮转)
8. 恢复脚本 + 演练文档:至少完成一次真实恢复演练(空库恢复 → 启动验证),记录耗时与坑
三、验收标准
- 四个仓库各有一个可用的 Gitea Actions workflow(附一次真实运行的日志/截图说明)
- CI 对失败用例真实报红(用一个故意失败的临时 commit 验证后还原,或单元自证)
- 备份脚本产出带校验和的归档;保留策略生效
- 恢复演练完成:从备份恢复到可运行状态,全流程记录(时间、命令、结果)
- 文档:
infra/README.md(CI 说明 + 备份/恢复手册)
四、验收命令(参考)
bash infra/backup.sh # 产出归档 + .sha256
bash infra/restore.sh <archive> # 恢复演练
五、边界(不许做)
- 备份产物不含明文密钥(脱敏或排除)
- 不在 CI 里跑需要私有凭据的部署
- 不改各项目业务代码(只加 CI/基建文件)
六、交接
写 PROGRESS_I-02.md(含 CI 运行证据、恢复演练记录、归档示例校验和)。