jenkins多環境多nexus倉庫,多maven版本


使用優化,jenkins多環境多nexus倉庫,多maven版本

1、多settings.xml設置構建

背景:jenkins本地安裝一個maven版本,默認只有一個settings.xml文件指定本地和遠端nexus倉庫,因為一個新建相同項目復制到不同環境的jenkins項目避免推送deploy覆蓋原本的依賴,所以需要將新的環境項目的依賴推送至指定的新的本地倉庫和nexus。

 參考:https://www.cnblogs.com/dannylinux/p/12622237.html

1.1 復制新的settings.xml

 

復制新的配置文件並更改nexus倉庫和本地倉庫路徑登錄信息

/usr/local/apache-maven-3.6.3/conf   ##進行maven配置目錄
cp settings.xml settings_dev.xml ##復制新的配置文件,這里面指定了配置文件,如需參考請看https://www.cnblogs.com/Crazy-Liu/p/14752129.html這個鏈接中的settings.xml內容。

cat settings_dev.xml 如下

<localRepository>/data/jenkins/repo222</localRepository>   ##repo222就是我新指定的本地的路徑


以下是nexus的地址,確認好地址目錄啊,要和研發的一致。賬號密碼就不需要我說了把。

    <id>nexus-releases</id>
    <mirrorOf>*</mirrorOf>
    <url>http://192.168.223.234:8081/repository/maven-public/</url>
  </mirror>
  <mirror>
    <id>nexus-snapshots</id>
    <mirrorOf>*</mirrorOf>
    <url>http://192.168.223.234:8081/repository/maven-snapshots/</url>


 

1.2 在項目中應用指定的settings.xml文件

 

比如我新復制的是settings_dev.xml文件,

如果你的項目是maven項目,那就在項目里面指定,如圖:

 

image-20210601181017533

 

高級設置拉下來這里有設置路徑的地方:

image-20210601181058414

 

再次構建此項目就是用的指定的settings.xml文件了。

 

 

就有人會問了,那我是流水線呢或者自由風格的項目呢,也可以的,直接在mvn 構建命令里面指定settings.xml文件。

 

如我的是自由風格項目,通過shell腳本構建mvn。

    mvn clean deploy --settings /usr/local/apache-maven-3.6.3/conf/settings_dev.xml -Dmaven.test.skip=true -P $env  更改后的
#   mvn clean install -Dmaven.test.skip=true -P $env 原本的

image-20210601181307797

 

 

這時構建也是指定的配置文件了,引用的也是特定的nexus倉庫和本地倉庫。

本地倉庫也有了repo222文件夾,repo是默認settings.xml的本地倉庫

[root@saas-cdt-jenkinis:/data/jenkins/shell/czt-saas-dev]#ll /data/jenkins/
total 16
drwxr-xr-x 7 jenkins jenkins 103 Jun 1 16:42 ./
drwxr-xr-x 6 root   root     118 Jun 1 17:21 ../
-rw-r--r-- 1 root   root     27 May 13 14:29 package-lock.json
drwxr-xr-x 24 jenkins jenkins 4096 Apr 23 09:55 repo/
drwxr-xr-x 23 jenkins jenkins 4096 Jun 1 17:23 repo222/
drwxr-xr-x 6 jenkins jenkins 116 May 27 17:46 shell/
drwxr-xr-x 6 jenkins jenkins   96 Jun 1 10:45 webapps/
drwxr-xr-x 48 jenkins jenkins 4096 Jun 1 17:30 workspace/
[root@saas-cdt-jenkinis:/data/jenkins/shell/czt-saas-dev]#

 

至此就完美了,就不需要再本地安裝多個maven版本了。完美解決我的問題哈。

 

因為我是在同一個jenkins上部署了develop和release 2個環境。所以不同項目需要不同倉庫的依賴。

原創哈,如果對你有幫助可以還請點贊推薦,謝謝!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM