簡體   English   中英

GitLab CI:Spring 啟動對另一個項目的依賴

[英]GitLab CI: Spring boot dependecy on another project

我有一個集群應用程序架構,其中我的 3 個主要服務使用一個依賴項(我們稱之為公共),其中包含其他 3 個服務使用的模式文件和其他實用程序。

目前,我已經通過 Gitlab CI 通過 artifactory 將所有 3 個 spring boot 應用程序部署在 k8s 上進行圖像管理。

現在,每次我對我的公共服務進行更改時,我都必須更改 pom.xml 中公共的版本(這樣它才不會與之前的工件圖像沖突),並且還要更改我的其他 3 個服務的 pom 版本依賴於這個新版本並推送所有 4 個(首先推送公共資源,以便新的構建映像在 artifactory 中可用,然后是其他 3 個)服務。

有沒有更好的方法來管理這個。 如果我的 3 個服務能夠獲取最新的通用版本並將其添加到我的 pom 版本中,我會更喜歡

Reliza Hub 目前支持此功能(免責聲明:我正在開發該項目)。

此處記錄了獲取最新版本的工作流程(請參閱工作流程 2.獲取項目或產品的最新版本)。

想法如下:

  1. 您為共享庫定義項目並從 GitLab CI 進行配置,以在每次使用Reliza Client構建時自動將構建元數據流式傳輸到 Reliza Hub。
  2. 也可以通過 Reliza Hub 維護自動版本控制(意味着 Hub 會根據您選擇的版本控制架構在每次構建時為您增加版本) -為此您需要使用 Reliza Client 的getversion命令。
  3. 然后,您可以使用此自動版本增量在構建時更新 pom.xml 中的版本。 所以這個過程將完全自動化。
  4. 完成后,在 3 個相關服務中的每一個的 CI 管道中,您都可以使用 Reliza Client 的getlatestrelease命令為您的共享庫調用 Reliza Hub。 此調用將返回共享庫最新版本的所有元數據,包括其版本。
  5. 然后,您可以將此版本插入到依賴服務的 pom 文件中。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM