跳转至

部署检查清单

每次发布复制一份,填好并存档到 docs/05-release/<env>-<date>.md。 生产发布必须有人签字。


基本信息

项目 值
版本 / Tag <...>
Commit <...>
环境 dev / staging / prod
发布日期 <...>
发布负责人 <...>
回滚版本 <...>
变更单 / PR <...>

1. 发布前检查

1.1 质量门禁

  • G6 验收通过,人工已签字
  • CI 全绿
  • 单元测试通过
  • 集成测试通过
  • E2E 通过,Word 报告已生成
  • 无 P0/P1 未修复缺陷
  • 代码审查无 P0/P1

1.2 构建产物

  • 镜像/构建产物已生成
  • Tag 可追溯(commit SHA / 版本号)
  • 镜像已推送到 ECR/Registry
  • 前端产物已构建
  • 依赖锁文件已提交
  • SBOM/漏洞扫描通过(如适用)

1.3 配置与密钥

  • 环境变量齐全
  • Secrets Manager / SSM 配置正确
  • 没有把密钥写进镜像/代码
  • CORS/域名/证书配置正确
  • 第三方 API key 有效

1.4 数据库

  • 迁移文件已评审
  • 迁移顺序正确
  • 迁移前已备份/快照
  • 迁移兼容旧代码(expand)
  • 回滚脚本已准备
  • 大表变更使用 CONCURRENTLY/分批
  • 迁移演练通过(如可能)

1.5 运维

  • 监控/告警正常
  • 日志采集正常
  • 健康检查端点正常
  • 回滚方案已确认
  • 发布窗口已确认
  • 通知渠道已确认
  • 值班人已知晓

1.6 生产测试

  • 生产测试账号可用
  • 测试租户/数据前缀已准备
  • 清理计划已确认
  • 只读/写操作范围已确认
  • 不触碰真实用户数据

1.7 人工审批

  • 审批人:<...>
  • 审批时间:<...>
  • 审批结论:通过 / 拒绝
  • 备注:<...>

2. 发布执行

2.1 顺序

1. 备份/快照
2. 数据库迁移
3. 后端部署
4. 健康检查
5. 前端部署
6. CDN 失效
7. 冒烟测试
8. 线上 E2E

2.2 执行记录

步骤 命令/操作 开始 结束 结果 备注
备份 <...>
迁移 <...>
后端 <...>
前端 <...>
冒烟 <...>

2.3 冒烟测试

  • /healthz 返回 200
  • /readyz 返回 200
  • 首页返回 200
  • 登录页可打开
  • 关键 API 可用
  • 无 5xx
  • 静态资源加载正常
  • SPA 路由刷新不 404

3. 发布后观察(至少 30 分钟)

  • 错误率正常
  • P95 延迟正常
  • CPU/内存正常
  • 数据库连接池正常
  • 日志无新异常
  • 无用户集中反馈
  • 关键业务指标正常

3.1 指标记录

指标 发布前 发布后 结论
错误率
P95 延迟
QPS
CPU
内存

4. 回滚

4.1 回滚条件

  • 错误率显著上升
  • P0/P1 功能不可用
  • 数据写入错误
  • 性能严重下降
  • 安全事件

4.2 回滚命令

# 后端(ECS 示例)
aws ecs update-service \
  --cluster <cluster> \
  --service <service> \
  --task-definition <previous-task-def> \
  --region <region>

aws ecs wait services-stable \
  --cluster <cluster> \
  --services <service> \
  --region <region>

# 前端(S3 示例)
aws s3 sync <previous-dist>/ s3://<bucket>/ --delete
aws cloudfront create-invalidation \
  --distribution-id <id> \
  --paths "/*"

4.3 回滚后

  • 健康检查通过
  • 冒烟通过
  • 数据一致性确认
  • 通知相关人
  • 记录回滚原因和时间

5. 发布记录

  • 发布记录写入 docs/05-release/<env>-<date>.md
  • CSV 的部署状态已更新
  • 发布通知已发送
  • 线上验证已安排
  • 复盘已安排(如需要)

5.1 签字

发布负责人:________________
审批人:____________________
日期:______________________
结论:成功 / 部分成功 / 已回滚