1. 程式人生 > >Jenkins使用Publish Over SSH外掛實現遠端檔案拷貝

Jenkins使用Publish Over SSH外掛實現遠端檔案拷貝

安裝

官網介紹:https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin

安裝外掛

        點選-系統管理-系統外掛-可選外掛中 直接搜 publish over ssh 點選安裝,安裝完之後,重啟jenkins

配置

        點選- 系統管理-系統設定-拉到最下面就有這個視窗了

公共配置:

Passphrase:密碼(key的密碼,如果你設定了)

Path to key:key檔案(私鑰)的路徑

Key:將私鑰複製到這個框中

Disable exec:禁止執行命令

私有配置:

SSH Server Name:標識的名字(隨便你取什麼)

Hostname:需要連線ssh的主機名或ip地址(建議ip)

Username:使用者名稱

Remote Directory:遠端目錄

Use password authentication, or use a different key:可以替換公共配置(選中展開的就是公共配置的東西,這樣做擴充套件性很好)

私有配置的高階:

Port:埠(預設22)

Timeout (ms):超時時間(毫秒)預設即可

Disable exec:禁止執行命令

Test Configuration:測試連線 

專案配置

啟用步驟:

構建後操作→Add post-build action→Send build artifacts over SSH

SSH  Server Name:選個一個你在系統設定裡配置的配置的名字

Transfer Set Source files:需要上傳的檔案(注意:相對於工作區的路徑。看後面的配置可以填寫多個,預設用,分隔)

Remove prefix:移除目錄(只能指定Transfer Set Source files中的目錄)

Remote directory:遠端目錄(根據你的需求填寫吧,因為我這兒是測試,所以偷懶沒有填寫。預設會繼承系統配置)

Exec command:把你要執行的命令寫在裡面

(新版本的要求Transfer Set Source files和Exec command都要填寫,可以不了他。老版本的允許只填寫一個)

高階:

Exclude files:排除的檔案(在你傳輸目錄的時候很有用,使用萬用字元,例如:**/*.log,**/*.tmp,.git/)

Pattern separator:分隔符(配置Transfer Set Source files的分隔符。如果你這兒更改了,上面的內容也需要更改)

No default excludes:禁止預設的排除規則(具體的自己看幫助)

Make empty dirs:此選項會更改外掛的預設行為。預設行為是匹配該檔案是否存在,如果存在則建立目錄存放。選中此選項會直接建立一個目錄存放檔案,即使是空目錄。(個人理解)

Flatten files:只上傳檔案,不建立目錄(除了遠端目錄)

Remote directory is a date format:遠端目錄建立帶日期的資料夾(需要在Remote directory中配置日期格式),具體格式參考下表:

Remote directory Directories created
'qa-approved/'yyyyMMddHHmmss qa-approved/20101107154555
'builds/'yyyy/MM/dd/'build-${BUILD_NUMBER}' builds/2010/11/07/build-456 (if the build was number 456)
yyyy_MM/'build'-EEE-d-HHmmss 2010_11/build-Sun-7-154555
yyyy-MM-dd_HH-mm-ss 2010-11-07_15-45-55
 

Exec timeout (ms):執行腳步的超時時間(毫秒)

Exec in pty:模擬一個終端執行腳步

Add Transfer Set:增加一個配置

配置完就可以重新執行構建任務。