99热综合福利导航,久久66日韩,91一二区少妇,久久产国视频,日韩久久久五月精品八区,丰满狐狸精在线电影,一区婷婷久久,日韩欧美另类在线,欧美中文字幕区

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

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

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


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


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

1、代碼拉取

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


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

2、鏡像構(gòu)建

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


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

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


3、應(yīng)用部署

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


部署的 Pipeline Groovy 語句如下:


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


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


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


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


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


遷移總結(jié)

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

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

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

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

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

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

相關(guān)推薦

留言與評(píng)論(共有 0 條評(píng)論)
   
驗(yàn)證碼:
镇江市| 无为县| 加查县| 崇明县| 赤水市| 舞钢市| 台安县| 南溪县| 乐平市| 项城市| 香河县| 巴南区| 五华县| 三都| 咸阳市| 通山县| 洛浦县| 普定县| 栾城县| 青州市| 紫阳县| 新密市| 醴陵市| 安乡县| 松江区| 万全县| 邹平县| 彰化县| 胶南市| 左权县| 天峨县| 阳泉市| 宁海县| 崇仁县| 千阳县| 普宁市| 郯城县| 泰州市| 阳泉市| 营口市| 宜州市|