CI 流水线绿了不代表没问题,只能代表测试没测出来。我想了想,觉得这话没法接。我在心里给这次的发布定了个负责人。连茶水间都安静了

这个脚本上次改是半年前,没人敢动。我抬起头看了看周围,大家都一样。我在心里给这次的流程定了个标准动作。我把这条经验写进了团队 wiki

这次的发布很顺利,反而让人有点不安。我把它记在心里,没跟任何人说。我在心里给这次的发布风险做了个评估。我把这条经验写进了团队 wiki

流水线绿了不代表功能对了。我发现自己居然没法反驳。我加了 try-except,先让流水线绿起来再查根因。果然现实比段子更精彩

我把发布拆成了灰度,风险小了很多。我深呼吸了一下,决定从最可疑的地方查起。我在心里给这次的发布准备了一份检查清单。我把它写进了组内的避坑文档第一章

制品库满了导致发布失败,清理制品的时候把上周的版本也清了。我默默打开了编辑器,准备一步步验证。我发现这个脚本的权限开得太大,收紧了。办公室安静得能听见键盘声

上线窗口期定在凌晨两点,不是那时候用户少,是那时候老板看不到。我把整条链路在心里复盘了一遍。我把制品版本一一对上,发现用的还是上次的包。幸好之前留了备份

dev、test、uat、prod 四套环境,配置文件八百个,总有一个会忘。我盯着屏幕沉默了十分钟。我在心里给这次的流程定了个标准动作

我把这次的发布记录留了下来,方便回溯。我拉了个小群,把相关同学都叫了进来。我把这个流水线的缓存打开了,构建时间少了四成。幸好之前留了备份

制品库满了导致发布失败,清理制品的时候把上周的版本也清了。我先确认了一遍前置条件,再动手。我加了健康检查,发布后自动验证,省得每次都人工点。我沉默了,但心里是服的