Warning: mkdir(): No space left on device in /www/wwwroot/X21X22X26Z2Z5.COM/func.php on line 127

Warning: file_put_contents(./cachefile_yuan/shengzhihan.com/cache/06/d6589/5d0e4.html): failed to open stream: No such file or directory in /www/wwwroot/X21X22X26Z2Z5.COM/func.php on line 115
GitLab中文版|如何使用極狐GitLab CI/CD實現Jenkins的遷移?--星空人工智能美女福利导航網

星空人工智能美女福利导航網

GitLab中文版|如何使用極狐GitLab CI/CD實現Jenkins的遷移?

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


Jenkins 的構建結果如下


整個構建的Groovy Pipeline代碼大體分為三部分,分別為代碼拉取、鏡像構建、應用部署。下麵就從這三方麵入手來用極狐GitLab CI/CD 逐一實現。

1、代碼拉取

對於Jenkins來講,拉取變更代碼的語法一般是:


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

2、鏡像構建

對於 Jenkins 來講,鏡像構建的代碼如下:


需要額外加一個withCredentials的語法,來把鏡像倉庫的用戶名和密碼傳遞過來。這需要借助Jenkins的Credentials插件,並且需要提前創建好對應的credentials。

而對於極狐GitLab來講,能更簡單一點,直接用login、build、push 三部曲就可以了。


3、應用部署

選擇 Kubernetes作為應用部署的基座。對於Jenkins而言,需要在Jenkins上安裝一個kubernetes的插件,然後做一些配置。


部署的 Pipeline Groovy 語句如下:


當然,極狐GitLab同樣需要和Kubernetes做一些集成,當中會涉及到一些極狐GitLab CI/CD 中與 Kubernetes 相關的預定義變量的使用,由於篇幅過大,這裏不多做贅述。將Kubernetes集群相關的 KUBE_URL、KUBE_CA_PEM 等信息寫入極狐GitLab CI/CD 變量中,使用下麵幾行代碼,即可完成應用的部署。


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


構建結果如下:


最後可以在 Kubernetes 上麵查看pod的狀態:


至此,最終實現了“All In JiHu GitLab”。


遷移總結

Jenkins 借助於豐富的插件來實現功能多樣的 CI/CD,但是插件的安裝、維護是一個不小的工作量,而且 Jenkins 本身也需要安裝和維護。一般公司都是有專門的人員或者團隊來進行整體的維護工作。

另外,現在流行的 Pipeline 的開發需要用到 Groovy 語法,在開發有新 Pipeline 上線的時候,一般是和 Jenkins 維護團隊進行溝通協作,來完成新功能的 Pipeline 開發,無形之中增加了溝通成本,當團隊增加的時候,還涉及到排期的問題。

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

這也就是極狐GitLab 開箱即用一體化DevOps平台的好處之一,把繁雜、複雜的事情留給平台,開發人員可以直接使用平台的能力來完成業務的開發,這樣能夠極大的提升研發效能。

星空人工智能美女福利导航網 倡導尊重與保護知識產權。如發現本站文章存在版權等問題,煩請30天內提供版權疑問、身份證明、版權證明、聯係方式等發郵件至1851688011@qq.com美女直播全婐APP免费下载將及時溝通與處理。!:首頁 > 星空人工智能產業 > 智能物聯 » GitLab中文版|如何使用極狐GitLab CI/CD實現Jenkins的遷移?

感覺不錯,很讚哦! ()
分享到:

相關推薦

留言與評論(共有 0 條評論)
   
驗證碼:
網站地圖