Jenkins 編譯后使用SSH發(fā)布詳解
前言
想要實(shí)現(xiàn)自動(dòng)發(fā)布編譯好的apk,我們可以使用官方插件庫(kù)里的如下插件。

你可以使用FTP SSH等方式自動(dòng)化發(fā)布,當(dāng)然你也可以寫腳本實(shí)現(xiàn)復(fù)雜的發(fā)布操作。
我以Publish Over SSH為例簡(jiǎn)單講解下(主要是目前沒(méi)部署FTP服務(wù) TAT)
因?yàn)椴恢涝趺词褂眠@個(gè)插件,所以我查看了下官方文檔
https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin
看得懂E文的推薦去看看,比我講的詳細(xì)的多了。
這也算是能力的鍛煉吧。
不廢話,具體實(shí)現(xiàn)的最簡(jiǎn)單步驟如下
SSH連接設(shè)置
點(diǎn)主頁(yè)左側(cè)菜單的系統(tǒng)管理 選擇系統(tǒng)設(shè)置 在系統(tǒng)設(shè)置頁(yè)面找到找到SSH配置段

- Passphrase:表示登入密碼
- path to key:SSH-key文件存放路徑 文件路徑可以是絕對(duì)路徑 也可以是相對(duì)路徑(相對(duì)于jenkins的工作目錄)
- key:SSH-key具體的key文本 作用同上 設(shè)置其中一個(gè)即可
- disable exec: 表示是否運(yùn)行執(zhí)行命令 因?yàn)槟阍诎l(fā)布之后可能需要通過(guò)命令操作服務(wù)器,比如上傳編譯好的網(wǎng)站文件然后重啟服務(wù)器上的tomcat
- name: 一般寫成 用戶名@主機(jī)名 比如root@blog.cooderstory.cn 當(dāng)存在多個(gè)ssh配置文件的時(shí)候 我們使用name來(lái)區(qū)分
- hostanme:表示需要登入的遠(yuǎn)程主機(jī) 可以和我一樣寫個(gè)域名或者具體的ip
- username: 就是登入的用戶名
- remote directory: 表示遠(yuǎn)程路徑 登入到服務(wù)器后想打開(kāi)哪個(gè)目錄
這段SSH的配置主要是讓jenkins能通過(guò)shh連接到服務(wù)器,也就是ssh連接配置
這里的配置要看具體服務(wù)器的安全設(shè)置的,有的是通過(guò)賬戶密碼登入,有的是直接通過(guò)ssh-key登入的,或者三者都要。
我的服務(wù)器設(shè)置徐婭提供ssh-key和賬戶名就可以了。
配置項(xiàng)目的SSH設(shè)置
然后打開(kāi)項(xiàng)目的配置頁(yè)面

我們需要在 構(gòu)建后操作 添加一個(gè)步驟 send build artifacts over ssh
- name:選擇之前添加的ssh設(shè)置
- source files: 表示你要上傳的文件的路徑
- remove prefix: 目錄修正 只能是source files中的路徑 因?yàn)槲募罱K上傳的路徑是remote directory+source files 通過(guò)remove prefix削減source files中的一些目錄層次
- remote directory 遠(yuǎn)程目錄,指定上傳到遠(yuǎn)程服務(wù)器的哪個(gè)目錄
- exec command: 文本框表示你在文件上傳完畢后想要執(zhí)行的命令 不填也行 紅色的警告可以無(wú)視
執(zhí)行編譯
保存配置重新執(zhí)行編譯
在控制臺(tái)輸出你會(huì)發(fā)現(xiàn)在success后多了幾行信息

檢查上傳的文件
我們可以在服務(wù)器上找到我們剛才上傳的apk文件了
注意下文件的路徑的確是/var/www/html
夠簡(jiǎn)單吧,Just try it!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Jenkinsfile?中如何在?`sh`?步驟中執(zhí)行多行?Shell?命令(多行命令的方法)
- 如何解決jenkins 執(zhí)行shell腳本 sh: ... not found的問(wèn)題
- jenkins+shell自動(dòng)化部署的實(shí)現(xiàn)步驟
- Jenkins使用publish?html?report插件展示HTML報(bào)告的方法
- jenkins 實(shí)現(xiàn)shell腳本化定時(shí)執(zhí)行任務(wù)的方法
- jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明
- Jenkins中sh函數(shù)的用法示例小結(jié)
相關(guān)文章
利用Jackson實(shí)現(xiàn)數(shù)據(jù)脫敏的示例詳解
在我們的企業(yè)項(xiàng)目中,為了保護(hù)用戶隱私,數(shù)據(jù)脫敏成了必不可少的操作,那么我們?cè)趺磧?yōu)雅的利用Jackson實(shí)現(xiàn)數(shù)據(jù)脫敏呢,本文就來(lái)和大家詳細(xì)聊聊,希望對(duì)大家有所幫助2023-05-05
Java及nginx實(shí)現(xiàn)文件權(quán)限控制代碼實(shí)例
這篇文章主要介紹了Java及nginx實(shí)現(xiàn)文件權(quán)限控制代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
RestTemplate如何添加請(qǐng)求頭headers和請(qǐng)求體body
這篇文章主要介紹了RestTemplate如何添加請(qǐng)求頭headers和請(qǐng)求體body問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
如何基于Idea遠(yuǎn)程調(diào)試tomcat war包及jar包
這篇文章主要介紹了如何基于Idea遠(yuǎn)程調(diào)試tomcat war包及jar包,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Java NumberFormat 類的詳解及實(shí)例
這篇文章主要介紹了Java NumberFormat 類的詳解及實(shí)例的相關(guān)資料,數(shù)字格式化類按照本地風(fēng)格習(xí)慣進(jìn)行的數(shù)字顯示,需要的朋友可以參考下2017-08-08
Log4j關(guān)閉Spring和Hibernate日志打印方式
這篇文章主要介紹了Log4j關(guān)閉Spring和Hibernate日志打印方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
springboot項(xiàng)目如何部署到服務(wù)器
這篇文章主要介紹了springboot項(xiàng)目如何部署到服務(wù)器問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05

