CDCD(持續集成,持續交付/部署)) 介紹

1.CICD背景;ide

持續集成(Continuous Integration)是一種軟件開發實踐,對於提升軟件開發效率並保障軟件開發質量提供了理論基礎。Jenkins 是一個開源軟件項目,旨在提供一個開放易用的軟件平臺,使持續集成變成可能。本文正是從持續集成的基本概念入手,經過具體實例,介紹瞭如何基於 Jenkins 快速搭建持續集成環境。

持續集成意義

1) 持續集成中的任何一個環節都是自動完成的,無需太多的人工干預,有利於減小重複過程以節省時間、費用和工做量;測試

2) 持續集成保障了每一個時間點上團隊成員提交的代碼是能成功集成的。換言之,任什麼時候間點都能第一時間發現軟件的集成問題,使任意時間發佈可部署的軟件成爲了可能;編碼

3) 持續集成還能利於軟件自己的發展趨勢,這點在需求不明確或是頻繁性變動的情景中尤爲重要,持續集成的質量能幫助團隊進行有效決策,同時創建團隊對開發產品的信心。spa


一套標準流程,能夠將開發工做流程分爲如下幾個階段:orm

   編碼 → 構建 → 集成 → 測試 → 交付 → 部署blog

   image.png


image.png


2.持續集成(Continuous integration,簡稱CI);生命週期

頻繁地(一天屢次或者N次)將代碼集成到主幹。將軟件我的研發的部分向軟件總體部分交付,頻繁進行集成以便更快地發現其中的錯誤。開發

3.持續交付(Continuous delivery)部署

指的是,頻繁地將軟件的新版本,交付給質量團隊或者用戶,以供評審。若是評審經過,代碼就進入生產階段。開源軟件

持續交付在持續集成的基礎上,將集成後的代碼部署到更貼近真實運行環境的「類生產環境」(production-like environments)中。持續交付優先於整個產品生命週期的軟件部署,創建在高水平自動化持續集成之上。

4.持續部署(continuous deployment,簡稱CD)

是持續交付的下一步,指的是代碼經過評審之後,自動部署到生產環境。持續部署的目標是,代碼在任什麼時候刻都是可部署的,能夠進入生產階段。持續部署的前提是能自動化完成測試、構建、部署等步驟。


5.CICD總結

持續集成、持續交付、持續部署提供了一個優秀的 DevOps 環境。對於整個開發團隊來講,能很大地提高開發效率,好處與挑戰並行。不管如何,頻繁部署、快速交付以及開發測試流程自動化都將成爲將來軟件工程的重要組成部分。


6.CICD主流方案;

image.png

相關文章
相關標籤/搜索