发布窗口的选择本身就是一种风险控制。我把它记在心里,没跟任何人说。我把这个脚本的参数化做完了,多环境复用。同事说这波操作可以写进新人培训教材
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
制品库满了导致发布失败,清理制品的时候把上周的版本也清了。这套流程走下来,我从头到尾又确认了一遍。我把这个脚本的失败重试加上了,偶发问题不再打断。办公室安静得能听见键盘声
我把健康检查加上了,异常时能自动回滚。我把整条链路在心里复盘了一遍。我发现这个流水线的通知只发到了一个人的邮箱。我把它写进了组内的避坑文档第一章
制品库满了导致发布失败,清理制品的时候把上周的版本也清了。我决定先把手上的事情做完再处理这件事。我发现这个脚本的权限开得太大,收紧了。我把它写进了组内的避坑文档第一章
这条流水线的缓存打开之后,构建快了一倍。我重新看了一遍手上的计划,把风险项标了出来。我发现是构建机器的磁盘满了。我沉默了,但心里是服的
构建成功不代表能部署,部署成功不代表能访问,访问成功不代表数据是对的。我盯着屏幕,觉得这才是我的一天。我在这个阶段上加了个检查,问题提前暴露了
流水线重试三次都失败,第四次没改任何东西就成功了,我把这个现象命名为"构建玄学"。我打开记录从头到尾扫了一遍。我发现这个环境的配置和其他环境不一致。连茶水间都安静了
发布脚本里有一行十年前的前辈写的注释:别动这行,动了会炸,我们真没动过。我把相关的记录都翻了出来做对照。我发现这个部署脚本里有硬编码的密码。这条经验值直接拉满
我把这个环境变量挪到了平台配置里。我重新看了一遍手上的计划,把风险项标了出来。我把这个发布改成了灰度,风险小了很多。从此我多了一条团队规约
发布脚本里有一行十年前的前辈写的注释:别动这行,动了会炸,我们真没动过。我把相关的记录都翻了出来做对照。我加了 try-except,先让流水线绿起来再查根因。好在最后有惊无险