一文秒懂CI, CD AND CD

當(dāng)我們在談?wù)摤F(xiàn)代的軟件編譯和發(fā)布流程的時(shí)候你虹,經(jīng)常會聽到CI和CD這樣的縮寫短語。這里我們將給大家介紹它們之間的區(qū)別和聯(lián)系喂击。

CI, CD AND CD

CI很容易理解像云,就是持續(xù)集成锌雀。但是CD既可以指代碼持續(xù)交付,也可理解為代碼持續(xù)部署迅诬。CI和CD之間有很多相似的部分腋逆,但是也有很大的區(qū)別。

持續(xù)集成(CONTINUOUS INTEGRATION)

在持續(xù)集成環(huán)境中侈贷,開發(fā)人員將會頻繁的提交代碼到主干惩歉。這些新提交在最終合并到主線之前,都需要通過編譯和自動化測試流進(jìn)行驗(yàn)證。這樣做是基于之前持續(xù)集成過程中很重視自動化測試驗(yàn)證結(jié)果撑蚌,以保障所有的提交在合并主線之后的質(zhì)量問題上遥,對可能出現(xiàn)的一些問題進(jìn)行預(yù)警。

持續(xù)交付(CONTINUOUS DELIVERY)

持續(xù)交付就是講我們的應(yīng)用發(fā)布出去的過程争涌。這個(gè)過程可以確保我們盡可能快的實(shí)現(xiàn)交付粉楚。這就意味著除了自動化測試,我們還需要有自動化的發(fā)布流亮垫,以及通過一個(gè)按鍵就可以隨時(shí)隨地實(shí)現(xiàn)應(yīng)用的部署上線模软。

通過持續(xù)交付,您可以決定每天饮潦,每周燃异,每兩周發(fā)布一次,這完全可以根據(jù)自己的業(yè)務(wù)進(jìn)行設(shè)置继蜡。

但是特铝,如果您真的希望體驗(yàn)持續(xù)交付的優(yōu)勢,就需要先進(jìn)行小批量發(fā)布壹瘟,盡快部署到生產(chǎn)線,以便在出現(xiàn)問題時(shí)方便進(jìn)行故障排除鳄逾。

持續(xù)部署(CONTINUOUS DEPLOYMENT)

如果我們想更加深入一步的話稻轨,就是持續(xù)部署了。通過這個(gè)方式雕凹,任何修改通過了所有已有的工作流就會直接和客戶見面殴俱。沒有人為干預(yù)(沒有一鍵部署按鈕),只有當(dāng)一個(gè)修改在工作流中構(gòu)建失敗才能阻止它部署到產(chǎn)品線枚抵。

持續(xù)部署是一個(gè)很優(yōu)秀的方式线欲,可以加速與客戶的反饋循環(huán),但是會給團(tuán)隊(duì)帶來壓力汽摹,因?yàn)椴辉儆小鞍l(fā)布日”了李丰。開發(fā)人員可以專注于構(gòu)建軟件,他們看到他們的修改在他們完成工作后幾分鐘就上線了逼泣∨棵冢基本上,當(dāng)開發(fā)人員在主分支中合并一個(gè)提交時(shí)拉庶,這個(gè)分支將被構(gòu)建嗜憔、測試,如果一切順利氏仗,則部署到生產(chǎn)環(huán)境中吉捶。

合并CI CD and CD?

當(dāng)然,正如我所說呐舔,他們每部分都更加接近生產(chǎn)環(huán)境币励。你可以構(gòu)建自己的持續(xù)集成環(huán)境,然后滋早,一旦團(tuán)隊(duì)適應(yīng)榄审,你可以添加持續(xù)交付流,最后杆麸,可以添加持續(xù)部署流到整個(gè)工作流中搁进。


舉例CI, CD and CD 流水線

到底值不值這樣做呢?

持續(xù)集成:

你需要具備哪些條件:

你的團(tuán)隊(duì)需要為每個(gè)新功能,代碼改進(jìn)昔头,或者問題修復(fù)創(chuàng)建自動化測試用例饼问。

你需要一個(gè)持續(xù)集成服務(wù)器,它可以監(jiān)控代碼提交情況揭斧,對每個(gè)新的提交進(jìn)行自動化測試莱革。

研發(fā)團(tuán)隊(duì)需要盡可能快的提交代碼,至少每天一次提交讹开。

你能獲得什么呢盅视?

通過自動化測試可以提早拿到回歸測試的結(jié)果,避免將一些問題提交到交付生產(chǎn)中

發(fā)布編譯將會更加容易旦万,因?yàn)楹喜⒅跻呀?jīng)將所有問題都規(guī)避了

減少工作問題切換闹击,研發(fā)可以很快獲得構(gòu)建失敗的消息,在開始下一個(gè)任務(wù)之前就可以很快解決成艘。

測試成本大幅降低-你的CI服務(wù)器可以在幾秒鐘之內(nèi)運(yùn)行上百條測試赏半。

你的QA團(tuán)隊(duì)花費(fèi)在測試上面的時(shí)間會大幅縮短,將會更加側(cè)重于質(zhì)量文化的提升上面淆两。

持續(xù)交付

需要具備什么條件断箫?

你需要有強(qiáng)大的持續(xù)集成組件和足夠多的測試項(xiàng)可以滿足你代碼的需求

部署需要自動化。觸發(fā)是手動的秋冰,但是部署一旦開始仲义,就不能人為干預(yù)。

你的團(tuán)隊(duì)可能需要接受特性開關(guān)剑勾,沒有完成的功能模塊不會影響到線上產(chǎn)品光坝。

你能收獲什么?

繁瑣的部署工作沒有了甥材。你的團(tuán)隊(duì)不在需要花費(fèi)幾天的時(shí)間去準(zhǔn)備一個(gè)發(fā)布盯另。

你可以更快的進(jìn)行交付,這樣就加快了與客戶之間的反饋環(huán)洲赵。

輕松應(yīng)對小變更鸳惯,加速迭代

持續(xù)部署

需要具備的條件:

研發(fā)團(tuán)隊(duì)測試?yán)砟畋容^完善商蕴。測試單元的健壯性直接決定你的交付質(zhì)量。

你的文檔和部署頻率要保持一致芝发。

特征標(biāo)志成為發(fā)布重大變化過程的固有部分绪商,以確保您可以與其他部門(支持,市場營銷辅鲸,公關(guān)…)協(xié)調(diào)格郁。

可以獲得什么?

發(fā)布頻率更快独悴,因?yàn)槟悴恍枰O聛淼却l(fā)布例书。每一處提交都會自動觸發(fā)發(fā)布流。

在小批量發(fā)布的時(shí)候刻炒,風(fēng)險(xiǎn)降低了决采,發(fā)現(xiàn)問題也可以很輕松的修復(fù)。

客戶每天都可以看到我們的持續(xù)改進(jìn)和提升坟奥,而不是每個(gè)月或者每季度树瞭,或者每年。

如前所述爱谁,您可以采用持續(xù)集成晒喷,持續(xù)交付和持續(xù)部署。你怎么做取決于你的需求和你的業(yè)務(wù)情況访敌。如果你剛剛開始一個(gè)項(xiàng)目凉敲,并且還沒有客戶,那么你就可以去創(chuàng)建這些工作流捐顷,最好是將這三個(gè)方面都實(shí)現(xiàn),并且在你的項(xiàng)目迭代和需求增長中同時(shí)迭代它們雨效。如果您已經(jīng)有一個(gè)生產(chǎn)項(xiàng)目迅涮,那么您可以一步一步地分階段去實(shí)現(xiàn)他們。

譯者:張鵬飛

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末徽龟,一起剝皮案震驚了整個(gè)濱河市叮姑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌据悔,老刑警劉巖传透,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異极颓,居然都是意外死亡朱盐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進(jìn)店門菠隆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兵琳,“玉大人狂秘,你說我怎么就攤上這事∏。” “怎么了者春?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長清女。 經(jīng)常有香客問我钱烟,道長,這世上最難降的妖魔是什么嫡丙? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任拴袭,我火速辦了婚禮,結(jié)果婚禮上迄沫,老公的妹妹穿的比我還像新娘稻扬。我一直安慰自己,他們只是感情好羊瘩,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布泰佳。 她就那樣靜靜地躺著,像睡著了一般尘吗。 火紅的嫁衣襯著肌膚如雪逝她。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天睬捶,我揣著相機(jī)與錄音黔宛,去河邊找鬼。 笑死擒贸,一個(gè)胖子當(dāng)著我的面吹牛臀晃,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播介劫,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼徽惋,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了座韵?” 一聲冷哼從身側(cè)響起险绘,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎誉碴,沒想到半個(gè)月后宦棺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡黔帕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年代咸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片成黄。...
    茶點(diǎn)故事閱讀 39,991評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡侣背,死狀恐怖白华,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情贩耐,我是刑警寧澤弧腥,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站潮太,受9級特大地震影響管搪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜铡买,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一更鲁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧奇钞,春花似錦澡为、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至谷徙,卻和暖如春拒啰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背完慧。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工谋旦, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人屈尼。 一個(gè)月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓册着,卻偏偏與公主長得像,于是被迫代替她去往敵國和親脾歧。 傳聞我的和親對象是個(gè)殘疾皇子甲捏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容