[發明專利]Gitlab-ci自動識別Maven變更子模塊并推送docker鏡像的方法有效
| 申請號: | 202011441874.2 | 申請日: | 2020-12-11 |
| 公開(公告)號: | CN112506613B | 公開(公告)日: | 2022-03-01 |
| 發明(設計)人: | 徐崖洲 | 申請(專利權)人: | 四川長虹電器股份有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 四川省成都市天策商標專利事務所(有限合伙) 51213 | 代理人: | 趙以鵬 |
| 地址: | 621000 四*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | gitlab ci 自動識別 maven 變更 模塊 推送 docker 方法 | ||
本發明公開了一種Gitlab?ci自動識別Maven變更子模塊并推送docker鏡像的方法,包括以下步驟:S1:進行常規的GitLab?CI配置,包括管理頁面中GitLab Runner、用戶賬號配置;S2:在項目的配置文件.gitlab?ci.yml中進行自動識別變更需要的變量定義;S3:在.gitlab?ci.yml腳本中的Job定義部分,在執行項目整體編譯完成后,執行項目整體編譯,產生正確的編譯后結果;判斷預定義變量CI_COMMIT_MESSAGE是否以執行全部推送標記開頭,如是則項目.gitlab?ci.yml腳本中的Job部分:將所有子模塊編譯后結果推送到docker鏡像倉庫;如不是項目.gitlab?ci.yml腳本中的Job部分:執行git show命令,使用預定義變量CI_COMMIT_SHA,匯總出本次提交受影響的子模塊列表,按列表依次將受影響子模塊編譯后結果推送到docker鏡像倉庫。
技術領域
本發明涉及GitLab-CI進行docker鏡像自動化構建領域,更具體的說是涉及Gitlab-ci自動識別Maven變更子模塊并推送docker鏡像的方法。
背景技術
Docker容器作為實踐DevOps的一個重要工具越來越受開發者的喜愛,Gitlab提供了免費的代碼管理服務,同時GitLab-CI還提供了強大的自動化CI/CD(ContinuousIntegration、DeliveryDeployment,持續集成/持續交付)流程功能,現在大多數開發者會選擇采用GitLab-CI在代碼提交到發布庫時觸發自動構建及推送docker鏡像的方法進行容器應用自動化構建。
對于基于Maven多模塊搭建項目,通常情況下,我們在GitLab-CI構建階段將各子模塊編譯后結果依次推送到docker鏡像倉庫中,雖然該次代碼提交可能只涉及到1個或者少量幾個子模塊的變更,也需要將所有子模塊編譯結果推送到docker倉庫中,由于實際工作中我們的項目規模大,子模塊較多,且打包后文件比較大,將它們全部推送到docker鏡像倉庫時會占用相當長的時間,影響后續工作的執行,也會產生不必要的資源占用及空間浪費。
發明內容
本發明的目的在于提供Gitlab-ci自動識別Maven變更子模塊并推送docker鏡像的方法,以期解決背景技術中的問題。
為了實現上述目的,本發明采用以下技術方案:
Gitlab-ci自動識別Maven變更子模塊并推送docker鏡像的方法,包括以下步驟:
S1:進行常規的GitLab-CI配置,包括管理頁面中GitLab Runner、用戶賬號配置;
S2:在項目的配置文件.gitlab-ci.yml中進行自動識別變更需要的變量定義;
S3:在.gitlab-ci.yml腳本中的Job定義部分,在執行項目整體編譯完成后,執行項目整體編譯,產生正確的編譯后結果;判斷預定義變量CI_COMMIT_MESSAGE是否以執行全部推送標記開頭,如是則項目.gitlab-ci.yml腳本中的Job部分:將所有子模塊編譯后結果推送到docker鏡像倉庫;如不是項目.gitlab-ci.yml腳本中的Job部分:執行git show命令,使用預定義變量CI_COMMIT_SHA,匯總出本次提交受影響的子模塊列表,按列表依次將受影響子模塊編譯后結果推送到docker鏡像倉庫。
所述S2包括以下步驟:
S2-1:在.gitlab-ci.yml腳本中的variables變量定義部分:根據模塊結構定義各子模塊對應代碼倉庫相對路徑的變量;
S2-2:定義依賴公共模塊變量的相關變量。
所述S2-1包括:
S2-1-1:對于普通子模塊定義變量規則為:前面是變量,后面是其對應代碼倉庫相對路徑;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于四川長虹電器股份有限公司,未經四川長虹電器股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011441874.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種掛車剎車系統智能冷卻降溫裝置
- 下一篇:前端緩存優化方法及裝置





