下游job得到上游構建的war包

小白的傻瓜教程,有錯請指出~~轉載請註明出處,謝謝~~~服務器

 

之前使用Jenkins進行持續集成是把構建和部署放在同一個job了,但原則上是每一個job只作一個步驟,因此我在使用Jenkins的pipeline功能後,就分紅了構建和部署兩個job。ssh

之前直接在同一個job的工做目錄下就能夠得到war部署到服務器上,如今遇到的問題是怎樣從上游的工做目錄裏得到構建產物。ui

因而我用到了copy artifact plugin這個插件。spa

 

1、安裝插件插件

進入jenkins的【系統管理】--【插件管理】頁面,選擇【可選插件】而後搜索copy artifact plugin3d

2、上游job關聯下游job  選擇【增長構建後操做步驟】的build otherprojectblog

填寫下游job的名稱教程

3、下游job獲取上游構建產物ip

【增長構建步驟】選擇 copyartifacts from another projectrem

 

project name:指定從哪一個job中拷貝文件。

which build:選擇從哪一次構建得到產物。

Artifacts to copy:指定要拷貝的產物,若是是在workspace文件夾下,直接填文件名,若是是在某個目錄下,要填目錄+文件名。可填多個文件,用「,」隔開。

         eg:我要得到workspace下a目錄下target目錄下的a.war,這裏就填a/target/a.war.

Target directory:(可不填,不填的話文件目錄就按照Artifacts to copy創建)指定將產物拷貝到該job的workspace下哪一個地方,能夠加在文件名前加上目錄能夠是多層目錄,且將文件名換成別的,好比:www\b.war.

                       這個job會按照這裏設定的格式自動建立目錄,每次構建都會將原來獲得的war包替換成本次從上游獲得的war包。

4、部署至其餘服務

 使用了插件send build artifacts over  ssh

      首先在系統設置裏將服務器信息設置好。

      source files:源文件,在本次job的workspace目錄下的文件。從workspace這個目錄下的目錄開始。eg:a/target/a.war

      remove prefix:刪除前綴。填了a/target 後複製到本服務器上的就只有a.war

      Remote directory:放置那個文件夾下。

 

 

 

相關文章
相關標籤/搜索