天天看點

CI/CD

CI/CD

傳統軟體開發過程中,在“合并日”将各分支代碼內建代碼時會引發的問題:內建地獄

內建地獄是指當傳遞團隊的成員內建其單個代碼時,生産點。在傳統的軟體開發環境中,這種內建過程很少是流暢和無縫的,而是導緻數小時或數天的修複代碼,以便它最終能夠內建。持續內建 (CI)旨在通過啟用和鼓勵團隊成員經常內建(例如每小時或至少每天內建)來完全避免這種情況。

CI/CD 是一種通過在應用開發階段引入自動化來頻繁向客戶傳遞應用的方法。通過運維和開發團隊互相合作,讓持續自動化和持續監控化貫穿整個項目生命周期(內建-->測試-->傳遞-->部署)。關聯事項通常被稱為CI/CD管道。

核心概念:

持續內建

持續傳遞

持續部署

CI/CD 中的“CI”始終指持續內建,它屬于開發人員的自動化流程。成功的 CI 意味着應用代碼的新更改會定期建構、測試并合并到共享存儲庫中。該解決方案可以解決在一次開發中有太多應用分支,進而導緻互相沖突的問題。

通過自動化測試(單元測試和內建測試)加強代碼內建的頻率,并測試新代碼是否與現有代碼發生沖突。并能快速輕松的修複它

CI/CD 中的“CD”指的是持續傳遞和/或持續部署,這些相關概念有時會交叉使用。兩者都事關管道後續階段的自動化,但它們有時也會單獨使用,用于說明自動化程度。

前置條件: CI建構并完成測試後

可持續将已驗證的代碼傳遞到倉庫,該代碼可随時部署到生産環境去。

是持續內建;傳遞的延申。自動将傳遞的應用部署到生産環境。能及時收到使用者回報,降低部署的風險。

自動化

高效率

低風險

實時性

前期投入成本高

繼續閱讀