DevOps 與持續交付#
從程式碼到生產的完整交付流水線,整合自《持續交付 36 講》專欄的核心內容。
持續交付流水線#
程式碼提交
│
▼
┌─────────────────────────────────────────────────────┐
│ 持續集成 (CI) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │程式碼檢查 │ → │ 建置 │ → │單元測試 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ 持續交付 (CD) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │集成測試 │ → │預發布驗證│ → │ 待發布 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ 持續部署 (CD) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │灰度發布 │ → │全量發布 │ → │ 監控 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────┘持續交付的終極目標是讓「發布」變成一件無聊的事。當你可以在任何時候、以極低的風險將程式碼部署到生產環境時,就達到了持續交付的理想狀態。