pandaAnthony:jenkins+git+maven持續(xù)集成(三)

這個系列有四篇文章,自動部署分成了2篇:

  1. jenkins+git+maven持續(xù)集成(一):主要介紹Centos7下jenkins的安裝
  2. jenkins+git+maven持續(xù)集成(二):主要介紹下jenkins怎么集成git+maven進(jìn)行自動構(gòu)建
  3. jenkins+git+maven持續(xù)集成(三):主要介紹下jenkins怎么集成進(jìn)行自動部署(發(fā)布到maven私有庫)
  4. jenkins+git+maven持續(xù)集成(四):主要介紹下jenkins怎么集成進(jìn)行自動部署(通過SSH部署到服務(wù)器)

上篇介紹了怎么用maven+git進(jìn)行自動構(gòu)建,既然都能自動構(gòu)建了,那么自動部署肯定是少不了的。

構(gòu)建后操作

回到前面的jenkinsDemo任務(wù)編輯頁面,在構(gòu)建的下面能看到“構(gòu)建后操作”:


image.png

我們點(diǎn)開“增加構(gòu)建后操作步驟”:


image.png

1. 發(fā)布包到maven私有庫

其中有一個項(xiàng)目中用到比較多的“Deploy artifacts to Maven repository”;這個就是部署到maven倉庫,在實(shí)際項(xiàng)目開發(fā)中,大部分時候我們只需要關(guān)注自己的業(yè)務(wù)或者調(diào)用其他項(xiàng)目的接口,至于怎么實(shí)現(xiàn)的我們不用太去關(guān)注,而且可能都沒有權(quán)限去看相關(guān)代碼,但是我們還是需要用到相關(guān)的jar。那么怎么辦呢,其實(shí)就和我們使用maven一樣,只是需要公司搭建自己的私有庫,然后將自己開發(fā)的接口或公共的jar提交上去,這時在構(gòu)建完添加“Deploy artifacts to Maven repository”就很有用了,這個操作會幫助我們直接將構(gòu)建好的pom或者jar包發(fā)布到Maven私有庫去。

1.1 手動發(fā)布包到maven私有庫

這里簡單地說下maven的setting.xml的配置:
在<servers>中添加release和snapshot對應(yīng)的server信息:


image.png

然后在<mirrors>中添加私服的鏡像(這里的賬號密碼需要在私服中創(chuàng)建并設(shè)置有deploy的權(quán)限):


image.png

最后在<profiles>中添加release和snapshot對應(yīng)的地址信息:


image.png

有多個profile的時候需要指定一個使用的:


image.png

關(guān)于私服的搭建就不在這里描述了,可以參考我以前寫的Window下搭建Nexus3私服;linux下的操作也大同小異,不過是tar包,解壓后運(yùn)行對應(yīng)的shell就可以了。

maven的設(shè)置到這里就結(jié)束了,不過對應(yīng)的工程也需要做相關(guān)的修改。還是拿我們做集成的spring-cloud工程為例,在根目錄下pom中添加<distributionManagement>:


image.png

注意這里的repository id要和maven setting.xml中設(shè)置的對應(yīng);然后一般java項(xiàng)目中會有個頂級的pom配置工程,所有其他的java maven工程都集成頂級的pom,所以一般只要在頂級的pom配置工程中添加一次就可以了。

這里簡單地做下測試是否能正常發(fā)布,先看下私有庫對應(yīng)的包(這里我發(fā)布過一次了):


image.png

我們在根目錄運(yùn)行:

mvn deploy

可以看到發(fā)布成功了,而且還有相關(guān)的報信息(這里就只截取最后一段信息):


image.png

我們回到私有庫查看是否有剛才發(fā)布的包:


image.png

可以看到確實(shí)是剛才通過運(yùn)行命令發(fā)布的包,其他的包信息也能對上,這里就不一一比對了。到這里說明具備了發(fā)布包到私有庫的能力,接下看下Jenkins中怎么自動發(fā)布。

1.2 Jenkins自動發(fā)布包到maven私有庫

回到“增加構(gòu)建后操作”,選擇“Deploy artifacts to Maven repository”,然后點(diǎn)開“高級”;這里我們是snapshot版本的,添加對應(yīng)的信息:


image.png

保存后,回到任務(wù)頁面點(diǎn)擊“立即構(gòu)建”,進(jìn)入控制臺查看:


image.png

可以看到自動構(gòu)建完成后,進(jìn)行了deploy相關(guān)的操作。我們再回到maven私有庫檢查是否上傳成功了:


image.png

包名是對應(yīng)的,到這里說明自動發(fā)布到maven私有庫成功了。

下一篇會介紹通過SSH自動部署到服務(wù)器上。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容