[發明專利]一種基于Jenkins和Gitlab的持續集成平臺構建方法在審
| 申請號: | 201811443662.0 | 申請日: | 2018-11-29 |
| 公開(公告)號: | CN109558147A | 公開(公告)日: | 2019-04-02 |
| 發明(設計)人: | 程永新;謝濤;王賢 | 申請(專利權)人: | 上海新炬網絡技術有限公司 |
| 主分類號: | G06F8/61 | 分類號: | G06F8/61;G06F11/36 |
| 代理公司: | 上??坡蓪@硎聞账?特殊普通合伙) 31290 | 代理人: | 袁亞軍;金碎平 |
| 地址: | 201707 上海市青浦區外青*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 集成平臺 配置文件 構建 讀取 指令 版本控制 磁盤容量 存儲備份 存儲代碼 環境配置 制作容器 自動讀取 空閑度 插件 倉庫 部署 | ||
本發明公開了一種基于Jenkins和Gitlab的持續集成平臺構建方法,包括如下步驟:定制Jenkins的界面,根據CPU利用率、內容空閑度以及磁盤容量自動推薦Agent;根據環境配置制作容器鏡像,定制后的插件讀取第一配置文件后,根據需求自動讀取第二配置文件以及第三配置文件;所述Gitlab用于存儲代碼,進行版本控制,所述Jenkins執行生成App的指令,并將所述執行生成App的指令推送到遠程倉庫。本發明提供的基于Jenkins和Gitlab的持續集成平臺構建方法,可以使用容器化的方式,使用本地存儲備份,實現一鍵部署。
技術領域
本發明涉及一種平臺構建方法,尤其涉及一種基于Jenkins和Gitlab的持續集成平臺構建方法。
背景技術
Gitlab是分布式代碼管理服務器,開發者將新版本App的代碼Push到Gitlab服務器,Gitlab保存代碼的同時會觸發Jenkins master進行一次Build。
Jenkins是一個持續集成工具,允許主從模式。Gitlab觸發Jenkins master后,Jenkins master節點會將Build任務分配給若干個注冊過的Agent節點,Agent節點會根據事先設置好的腳本進行Build,腳本可以編譯,測試,生成測試報告等。
Jenkins自身擁有十分豐富的插件,根據自身需求進行了定制化。首先是對于Jenkins界面,Jenkins本身的界面可以分配任務,但是缺少對Agent節點資源的搜集,與推薦問題。Jenkins插件雖多,但多為第三方開發,定制性差。
在現有技術中,App升級與bug修復都涉及到應用版本控制,程序文件,配置文件都是十分巨大數據量。如果這是簡單的在服務器上以文件夾的形式管理,對于管理員來說,是災難性的挑戰。Gitlab提供的分布式管理,能夠很好的解決這一問題。Web的UI界面能夠提供直觀化的管理,方便推送和拉取代碼或配置文件。Jenkins可以使用這些文件,生成相應的App,發布到平臺。但是還存在以下問題:1.Gitlab搭建復雜;2.Jenkins界面易用性差;3.Jenkins在build計劃中不能有需要更換agent,如果有需要只能通過不同的build計劃來實現。
因此,有必要提供一種平臺構建方法,能夠解決以上問題。
發明內容
本發明所要解決的技術問題是提供一種平臺構建方法,能夠使用容器化的方式,使用本地存儲備份,實現一鍵部署。
本發明為解決上述技術問題而采用的技術方案是提供一種基于Jenkins和Gitlab的持續集成平臺構建方法,包括如下步驟:定制Jenkins的界面,根據CPU利用率、內容空閑度以及磁盤容量自動推薦Agent;根據環境配置制作容器鏡像,定制后的插件讀取第一配置文件后,根據需求自動讀取第二配置文件以及第三配置文件;所述Gitlab用于存儲代碼,進行版本控制,所述Jenkins執行生成App的指令,并將所述執行生成App的指令推送到遠程倉庫。
優選地,所述Jenkins包括定制化Jenkins鏡像,所述Jenkins鏡像包括第三方插件和定制化插件。
優選地,所述Jenkins使用marathon的調度策略,通過Mesos的彈性資源分配來提高資源利用率。
優選地,所述遠程倉庫下載源碼,如果下載失敗,則發送通知消息到所述平臺。
優選地,所述遠程倉庫下載源碼,如果下載成功,則運行安全掃描所述App。
優選地,在運行安全掃描所述App之后開始Build,如果Build失敗,則發送通知消息到所述平臺,如果Build成功,則在BVT測試環境上安裝,如果在BVT測試環境上安裝失敗,則發送通知消息到所述平臺。
優選地,如果在BVT測試環境上安裝成功,則在部署環境上安裝并發送通知消息到所述平臺。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海新炬網絡技術有限公司,未經上海新炬網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811443662.0/2.html,轉載請聲明來源鉆瓜專利網。





