日韩av电影在线观看-在线视频91-麻豆国产91在线播放-欧美人性生活-六月丁香激情-天堂资源中文在线-国产人人看-黄色资源网站-色综合视频在线-成人av片在线观看-不卡的毛片-精品久久久视频-日韩av三区-欧美人妻精品一区二区三区-黑人性高潮

星空人工智能技術(shù)網(wǎng)

GitLab中文版|如何使用極狐GitLab CI/CD實(shí)現(xiàn)Jenkins的遷移?

在解鎖極狐GitLab和Jenkins集成的N種方式中的示例可以看出,極狐GitLab大部分時(shí)間僅僅被當(dāng)作源代碼托管服務(wù),而代碼構(gòu)建、測(cè)試、部署等都在Jenkins上面完成,也就是說(shuō)“Most In Jenkins”。


Jenkins 的構(gòu)建結(jié)果如下


整個(gè)構(gòu)建的Groovy Pipeline代碼大體分為三部分,分別為代碼拉取、鏡像構(gòu)建、應(yīng)用部署。下面就從這三方面入手來(lái)用極狐GitLab CI/CD 逐一實(shí)現(xiàn)。

1、代碼拉取

對(duì)于Jenkins來(lái)講,拉取變更代碼的語(yǔ)法一般是:


需要配置拉取代碼的 ssh key 以及倉(cāng)庫(kù)地址。而這一點(diǎn)在極狐GitLab 是極其簡(jiǎn)單的,不需要做任何改變,默認(rèn)會(huì)把代碼拉取存放到極狐GitLab Runner 構(gòu)建器內(nèi),默認(rèn)路徑是/builds/username/project-name。

2、鏡像構(gòu)建

對(duì)于 Jenkins 來(lái)講,鏡像構(gòu)建的代碼如下:


需要額外加一個(gè)withCredentials的語(yǔ)法,來(lái)把鏡像倉(cāng)庫(kù)的用戶(hù)名和密碼傳遞過(guò)來(lái)。這需要借助Jenkins的Credentials插件,并且需要提前創(chuàng)建好對(duì)應(yīng)的credentials。

而對(duì)于極狐GitLab來(lái)講,能更簡(jiǎn)單一點(diǎn),直接用login、build、push 三部曲就可以了。


3、應(yīng)用部署

選擇 Kubernetes作為應(yīng)用部署的基座。對(duì)于Jenkins而言,需要在Jenkins上安裝一個(gè)kubernetes的插件,然后做一些配置。


部署的 Pipeline Groovy 語(yǔ)句如下:


當(dāng)然,極狐GitLab同樣需要和Kubernetes做一些集成,當(dāng)中會(huì)涉及到一些極狐GitLab CI/CD 中與 Kubernetes 相關(guān)的預(yù)定義變量的使用,由于篇幅過(guò)大,這里不多做贅述。將Kubernetes集群相關(guān)的 KUBE_URL、KUBE_CA_PEM 等信息寫(xiě)入極狐GitLab CI/CD 變量中,使用下面幾行代碼,即可完成應(yīng)用的部署。


所以對(duì)于極狐GitLab 來(lái)講,僅僅用下面二十幾行代碼就能夠完成和上述Jenkins Job 一樣的功能。


構(gòu)建結(jié)果如下:


最后可以在 Kubernetes 上面查看pod的狀態(tài):


至此,最終實(shí)現(xiàn)了“All In JiHu GitLab”。


遷移總結(jié)

Jenkins 借助于豐富的插件來(lái)實(shí)現(xiàn)功能多樣的 CI/CD,但是插件的安裝、維護(hù)是一個(gè)不小的工作量,而且 Jenkins 本身也需要安裝和維護(hù)。一般公司都是有專(zhuān)門(mén)的人員或者團(tuán)隊(duì)來(lái)進(jìn)行整體的維護(hù)工作。

另外,現(xiàn)在流行的 Pipeline 的開(kāi)發(fā)需要用到 Groovy 語(yǔ)法,在開(kāi)發(fā)有新 Pipeline 上線(xiàn)的時(shí)候,一般是和 Jenkins 維護(hù)團(tuán)隊(duì)進(jìn)行溝通協(xié)作,來(lái)完成新功能的 Pipeline 開(kāi)發(fā),無(wú)形之中增加了溝通成本,當(dāng)團(tuán)隊(duì)增加的時(shí)候,還涉及到排期的問(wèn)題。

而極狐GitLab 借助極狐GitLab  Runner來(lái)實(shí)現(xiàn)極狐GitLab CI/CD,Runner是一個(gè)用go語(yǔ)言開(kāi)發(fā)且開(kāi)源的組件。其安裝方式和使用方式都是非常靈活的,支持多操作系統(tǒng)(后續(xù)為大家陸續(xù)揭秘),再配合豐富的極狐GitLab CI/CD 變量魔法,可以能很方便的構(gòu)建起完整的 CI/CD 系統(tǒng)。開(kāi)發(fā)人員可以通過(guò)查看相應(yīng)的文檔就能比較快的上手Pipeline的構(gòu)建語(yǔ)法,從而可以自己來(lái)書(shū)寫(xiě)Pipeline進(jìn)行新功能的調(diào)試、部署、測(cè)試等。當(dāng)然,最重要的一點(diǎn)就是,沒(méi)有額外的組件(除了Runner,如果不打算自己host Runner,那就連這點(diǎn)工作量也沒(méi)了)需要安裝,能夠極大的減少工作量。

這也就是極狐GitLab 開(kāi)箱即用一體化DevOps平臺(tái)的好處之一,把繁雜、復(fù)雜的事情留給平臺(tái),開(kāi)發(fā)人員可以直接使用平臺(tái)的能力來(lái)完成業(yè)務(wù)的開(kāi)發(fā),這樣能夠極大的提升研發(fā)效能。

星空人工智能技術(shù)網(wǎng) 倡導(dǎo)尊重與保護(hù)知識(shí)產(chǎn)權(quán)。如發(fā)現(xiàn)本站文章存在版權(quán)等問(wèn)題,煩請(qǐng)30天內(nèi)提供版權(quán)疑問(wèn)、身份證明、版權(quán)證明、聯(lián)系方式等發(fā)郵件至1851688011@qq.com我們將及時(shí)溝通與處理。!:首頁(yè) > 星空人工智能產(chǎn)業(yè) > 智能物聯(lián) » GitLab中文版|如何使用極狐GitLab CI/CD實(shí)現(xiàn)Jenkins的遷移?

感覺(jué)不錯(cuò),很贊哦! ()
分享到:

相關(guān)推薦

留言與評(píng)論(共有 0 條評(píng)論)
   
驗(yàn)證碼: