首页/开发/CI/CD 与发布速查/构建失败处理策略
流水线设计54 条

构建失败处理策略

约定失败后的响应:谁修、多久内修、能否继续合并;配合「停止线」机制避免问题顺流到发布环节。

CI/CD 与发布速查开发更新于 2026-10-13

构建失败策略是什么

构建失败处理策略是团队对「主干构建红灯」的响应约定:谁负责修、多长时间内修、红灯期间能否继续合并新代码。目标只有一个——不让问题顺流而下进入发布环节。Google SRE 与 DORA 的经验一致:修复中断的构建应优先于一切新工作,因为红灯会迅速传染给所有协作者,恢复成本随时间上升。

基本信息

适用平台任何以主干为集成中心的 Git/CI 流程
响应失败通知直达提交者与负责人,优先修复再开新工作
停止线主干连续失败或红灯超时即暂停合并,集中恢复
豁免紧急修复走显式例外流程:值班负责人批准并留记录

典型使用场景

  • 主干随时可发布:红灯清零前不再放开合并
  • 多人协作仓库:提交者与值班轮换制,明确第一责任人
  • 不稳定流水线治理:把「重跑一下就好」的隐性成本显性化
  • 新人上手规范:写清失败时的第一反应与求助路径

通知内容模板

通知内容模板
项目 / 分支 / 提交 / 失败作业 / 日志链接 / 首次失败时间 / 责任人
# 附「下一步动作」:重跑入口、日志直达页、快速回滚命令

红灯分级与响应

级别判定响应
单次失败主干单条流水线失败提交者限时响应,修不掉则先回滚
连锁失败后续提交在坏基线上连续失败暂停合并,责任人集中修复
超时红灯红灯时长超过约定上限值班升级通知,负责人介入
「按需重跑」不是修复:统计重跑成功率可识别真实的不稳定源(随机失败的用例、抖动的环境),把它们当缺陷治理而不是当噪声忽略。
失败分类(代码、用例、环境、基础设施)是归因的前提:四类混在一起统计,改进方向永远看不清。

易错点

  • 失败无归属:通知只进公共群,责任漂移,平均修复时间拉长
  • 把环境抖动混入代码失败统计:无法定位真正的改进点,应先分类再治理
  • 红灯期间继续合并:新提交叠在坏基线上,二分定位失效,修复成本倍增
  • 没有停止线机制:小故障拖成大面积红灯,恢复时间不可控

数据来源与参考

  • Google SRE Workbook(发布工程实践)
  • DORA《Accelerate》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌