CI CD 基礎介紹 - daniel-qa/Azure-Kubernetes-Service GitHub Wiki

CI(Continuous integration),即是「持續整合」

流程:

  • 「程式建置」 開發人員在每一次的 Commit & Push 後,都能夠於統一的環境自動 Build 程式,透過此一步驟可以避免每個開發人員因本機的環境&套件版本不相同,造成 Service 異常。

    Green House 概念: 提供公開,可信賴的測試環境,可重覆驗證出相同的結果。

  • 「程式測試」 當程式編譯完成後,將會透過「單元測試」測試新寫的功能是否正確,或者確認是否有影響到現有功能,透過該步驟進行測試,可以避免掉開發人員遺忘於本機先行檢查,作為「雙重驗證」工用。

  • 目的:

將低人為疏失風險
減少人工手動的反覆步驟
進行版控管制
增加系統一致性與透明化
減少團隊 Loading

CD(Continuous Deployment),即是「持續佈署」

流程:

  • 「部署服務」 透過自動化方式,將寫好的程式碼更新到機器上並公開對外服務,另外需要確保套件版本&資料庫資料完整性,也會透過監控系統進行服務存活檢查,若服務異常時會即時發送通知告至開發人員。 目的:

保持每次更新程式都可順暢完成 確保服務存活