Gitlab CI/CD

CI?

持續(xù)集成(Continuous integration),簡(jiǎn)稱CI,是一種軟件開發(fā)實(shí)踐。開發(fā)人員提交代碼后,系統(tǒng)自動(dòng)進(jìn)行構(gòu)建、(單元)測(cè)試,通過自動(dòng)化測(cè)試保障所有的提交在合并主線之后不會(huì)出現(xiàn)質(zhì)量問題,對(duì)可能出現(xiàn)的一些問題進(jìn)行預(yù)警。


CD

持續(xù)交付(Continuous Delivery),簡(jiǎn)稱CD:是一種軟件工程的手法。持續(xù)交付在持續(xù)集成的基礎(chǔ)上,將集成后的代碼部署到更貼近真實(shí)運(yùn)行環(huán)境的「類生產(chǎn)環(huán)境」(production-like environments)中,也就是我們通常說的預(yù)發(fā)布環(huán)境。交付給質(zhì)量團(tuán)隊(duì)或者用戶,以供評(píng)審。如果評(píng)審?fù)ㄟ^,代碼就進(jìn)入生產(chǎn)階段。持續(xù)交付并不是指軟件每一個(gè)改動(dòng)都要盡快部署到產(chǎn)品環(huán)境中,它指的是任何的代碼修改都可以在任何時(shí)候?qū)嵤┎渴稹?/p>


CI/CD的關(guān)系

持續(xù)交付(CD)表示的是一種能力;而持續(xù)部署(CI)則是一種方式。


Gitlab CI/CD

1 是什么?

Gitlab CI/CD是Gitlab一個(gè)簡(jiǎn)潔好用的的持續(xù)集成/持續(xù)交付/持續(xù)部署的框架。為項(xiàng)目配置一個(gè)或者多個(gè) GitLab Runner,然后添加一個(gè)

.gitlab-ci.yml文件到項(xiàng)目根目錄,進(jìn)行提交或者推送代碼到Gitlab服務(wù)器,就可以很方便地持續(xù)集成/部署代碼。

.gitlab-ci.yml文件會(huì)告訴Gitlab Runner做什么。

2 原理

開發(fā)者推送、提交代碼到Gitlab,Gitlab通過項(xiàng)目的.gitlab-ci.yml文件配置,找到指定的項(xiàng)目gitlab runner,runner運(yùn)行相關(guān)的命令,進(jìn)行編譯、 集成、測(cè)試、交付、部署,一切順利地話會(huì)分發(fā)到各個(gè)服務(wù)器(測(cè)試服務(wù)器、預(yù)發(fā)布服務(wù)器、正式服務(wù)器等),此時(shí)一個(gè)迭代開發(fā)上線流程走完。流程圖如下。


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容