??CI/CD 的核心概念是持續(xù)集成、持續(xù)交付和持續(xù)部署。
??持續(xù)集成,它屬于開發(fā)人員的自動化流程。成功的 CI 意味著應(yīng)用代碼的新更改會定期構(gòu)建、測試并合并到共享存儲庫中。該解決方案可以解決在一次開發(fā)中有太多應(yīng)用分支,從而導(dǎo)致相互沖突的問題。
??持續(xù)集成(CI)可以幫助開發(fā)人員更加頻繁地(有時甚至每天)將代碼更改合并到共享分支或“主干”中。一旦開發(fā)人員對應(yīng)用所做的更改被合并,系統(tǒng)就會通過自動構(gòu)建應(yīng)用并運行不同級別的自動化測試(通常是單元測試和集成測試)來驗證這些更改,確保這些更改沒有對應(yīng)用造成破壞。這意味著測試內(nèi)容涵蓋了從類和函數(shù)到構(gòu)成整個應(yīng)用的不同模塊。如果自動化測試發(fā)現(xiàn)新代碼和現(xiàn)有代碼之間存在沖突,CI 可以更加輕松地快速修復(fù)這些錯誤。
??CI/CD 中的“CD”指的是持續(xù)交付和/或持續(xù)部署,這些相關(guān)概念有時會交叉使用。兩者都事關(guān)管道后續(xù)階段的自動化,但它們有時也會單獨使用,用于說明自動化程度。
??持續(xù)交付:指的是在持續(xù)集成的環(huán)境基礎(chǔ)之上,將代碼部署到預(yù)生產(chǎn)環(huán)境,也就是在開發(fā)寫好代碼之后部署到生產(chǎn)環(huán)境中的過程。通常是開發(fā)人員對應(yīng)用的更改會自動進行錯誤測試并上傳到存儲庫,然后由運維團隊將其部署到實時生產(chǎn)環(huán)境中。旨在解決開發(fā)和運維團隊之間可見性及溝通較差的問題。因此,持續(xù)交付的目的就是確保盡可能減少部署新代碼時所需的工作量。
??持續(xù)交付流程:代碼開發(fā)–單元測試–合并代碼–測試–手動–部署到生產(chǎn)。
??持續(xù)部署:指的是自動將開發(fā)人員的更改從存儲庫發(fā)布到生產(chǎn)環(huán)境,以供客戶使用。它主要為了解決因手動流程降低應(yīng)用交付速度,從而使運維團隊超負(fù)荷的問題。持續(xù)部署以持續(xù)交付的優(yōu)勢為根基,實現(xiàn)了管道后續(xù)階段的自動化。
持續(xù)集成基礎(chǔ)
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 在軟件行業(yè)發(fā)展的初期,軟件項目中最棘手、最緊張的時刻就是集成。能單獨工作的一些模塊被組裝在一起,然而系統(tǒng)整體...
- 前言 本文基于node.js,但是 travis - ci 兼容大多主流語言,基本流程都差不多,詳細(xì)參考:http...
- Xcode Server是蘋果官方提供的持續(xù)集成方案,在Xcode9之前就已經(jīng)存在,不過需要從MAC App St...
- 云原生 (Cloud Native) 是伴隨的容器技術(shù)發(fā)展出現(xiàn)的的一個詞,最早出自 Pivotal 公司(即開發(fā)了...
- 5-4 持續(xù)集成與持續(xù)部署 課程介紹 那些大廠們,天天DevOps、持續(xù)集成的?到底在講些什么?這堂課來給你揭開持...