DevOps 與持續交付#

從程式碼到生產的完整交付流水線,整合自《持續交付 36 講》專欄的核心內容。

章節概覽#

章節主題核心內容
01持續交付理念CD 價值、CI/CD 關係、DevOps 文化
02程式碼管理與分支策略分支模型、依賴管理、回滾策略
03環境管理測試環境、環境自描述、IaC
04組態管理組態分類、組態時機、組態回滾
05構建與流水線構建最佳化、程式碼檢測、彈性伸縮
06發布系統發布策略、灰度發布、系統設計
07測試與質量保障靜態分析、自動化測試、Mock
08發布監控監控指標、異常檢測、快速回滾

持續交付流水線#

程式碼提交
    │
    ▼
┌─────────────────────────────────────────────────────┐
│                    持續集成 (CI)                     │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐           │
│  │程式碼檢查 │ → │  構建   │ → │單元測試 │           │
│  └─────────┘   └─────────┘   └─────────┘           │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│                    持續交付 (CD)                     │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐           │
│  │集成測試 │ → │預發布驗證│ → │ 待發布  │           │
│  └─────────┘   └─────────┘   └─────────┘           │
└─────────────────────────────────────────────────────┘
    │
    ▼
┌─────────────────────────────────────────────────────┐
│                    持續部署 (CD)                     │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐           │
│  │灰度發布 │ → │全量發布 │ → │  監控   │           │
│  └─────────┘   └─────────┘   └─────────┘           │
└─────────────────────────────────────────────────────┘

持續交付的終極目標是讓「發布」變成一件無聊的事。當你可以在任何時候、以極低的風險將程式碼部署到生產環境時,就達到了持續交付的理想狀態。