Commit Graph

2 Commits

Author SHA1 Message Date
lingying 3d4cb554b5 fix(ci): 修复数据库安全闸门误报,改为只对比main检查新增迁移
CI/CD Pipeline / Staging E2E Tests (push) Has been skipped
CI/CD Pipeline / Build Production Runtime Images (push) Has been skipped
CI/CD Pipeline / Deploy Production (push) Has been skipped
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Build & Push Staging (Watchtower auto-deploy) (push) Failing after 15h3m16s
CI/CD Pipeline / Frontend Lint (push) Failing after 15h5m54s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 15h5m54s
- check_migration_safety.py 新增 --diff-against 参数,支持通过 git diff 只检查新增迁移
- CI 中 prepare git 环境并 fetch origin/main,安全闸门对比 main 分支
- 避免历史已执行迁移的破坏性操作导致误报
2026-07-08 21:48:37 +08:00
灵应 f767cdb136 feat(quality): 第一阶段质量保障 - 数据库安全闸门 + 生产回滚脚本 + E2E修复
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 0s
CI/CD Pipeline / Build & Push Staging (Watchtower auto-deploy) (push) Has been cancelled
CI/CD Pipeline / Staging E2E Tests (push) Has been cancelled
CI/CD Pipeline / Build Production Runtime Images (push) Has been cancelled
CI/CD Pipeline / Deploy Production (push) Has been cancelled
CI/CD Pipeline / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / Frontend Lint (push) Failing after 0s
1. 数据库迁移安全检查 (scripts/check_migration_safety.py)
   - 检测 DROP TABLE / DROP COLUMN 等高风险破坏性变更
   - 检测列类型变更、NOT NULL新增、重命名等中风险操作
   - 只检查 upgrade 函数,忽略 downgrade 中的正常回滚操作
   - 已加入 CI validate 闸门(--allow-medium-risk 模式)

2. 生产一键回滚脚本 (scripts/rollback_production.sh)
   - 支持指定版本镜像回滚
   - 可选数据库版本回滚
   - 健康检查确认服务正常
   - 二次确认防误操作

3. E2E CI 修复
   - staging-e2e checkout 从 actions/checkout@v4 改为自定义脚本(修复Gitea兼容性)
   - 缩小E2E范围到核心冒烟用例:登录/上传/生成
   - 先保证稳定,再逐步扩大覆盖
2026-07-08 18:13:10 +08:00