dev.to | 📄 原文链接 | 2026-09-02 收录

那条对我们撒谎的 CI/CD 流水线:一次部署排查的六层嵌套故事

来源:dev.to — 2026-09-01

📋 概述

作者有个叫「Deploy to DigitalOcean」的 GitHub Actions 工作流,配置看起来完整——SSH action、密钥引用齐全——但每次发后端变更还是得手动 SSH 进服务器跑 git pull。他一直没有追问为什么,直到真的去查才发现:流水线不是某个地方明显坏掉,而是六处互不相关的小问题叠在一起,每一处都藏着下一处。第一幕是触发链:deploy 工作流被 workflow_run 门控为只在 CI 成功时运行,而 CI 在 main 分支上从来没绿过,于是每次部署都被正确跳过——失败和缺失的部署躺在 Actions UI 的两个不同标签页里,让他没把这两点连起来。第二幕是两处毫不相干的失败:linter 找不到被 .gitignore 忽略的 .python-version,前端测试的 vitest forks worker 又因类型错误起不来。

🔑 核心要点

💡 金句

流水线不是坏在某一处明显的地方——它是六处互不相关的小问题叠在一起,每一处都藏着下一处。
← 返回 dev.to 首页