寫在前面的話叫前言:雖然全是文字,但截圖也麻煩,互相將就下=完美
1+1=2
前期工作:再前期的工作不是我干的,大佬已經(jīng)把jenkins在服務器弄好了!
為了通過SSH連接和上傳服務器,我們需要先安裝Publish Over SSH?插件。
插件安裝(需要管理員身份):nodejs
插件安裝步驟:系統(tǒng)管理-插件管理-可選插件安裝
插件配置步驟:系統(tǒng)管理-全局工具配置-nodejs-nodejs安裝-添加別名、自動安裝、選擇版本(如果無版本可以考慮將 插件管理頁面的 【高級】拉到最底下升級站點地址改為http開頭,再不行只能手動上傳插件)
SSH server:(需要管理員身份)系統(tǒng)管理-系統(tǒng)配置-起別名、主機ip、登錄主機用戶名、存放文件的服務器文件路徑-test configuration用來測試連接服務器是否成功
token:點擊用戶名-設置-添加token
最終:
創(chuàng)建一個構建任務
新建任務-自由風格的任務-
源碼管理:-git-Repository URL是git的倉庫地址-Credentials憑證是登錄git賬號的用戶名密碼,自行添加-制定構建源碼的git分支master-
構建觸發(fā)器:觸發(fā)遠程構建,填寫token-(還不太懂干啥子的)
構建環(huán)境:選擇node并選擇配置的node其他默認-
構建:執(zhí)行shell腳本,寫命令
cd /var/jenkins_home/workspace/store_test? //workspace是每個任務創(chuàng)建后所在的文件夾
node -v
npm -v
npm install? //vue項目
npm run build
cd dist
rm -rf h5.tar.gz //刪除之前的文件
tar -zcvf h5.tar.gz *? //壓縮里面所有的文件
cd ../
構建后操作:主要是連接遠程服務器進行的操作
ssh server-選擇之前創(chuàng)建的服務器-
transfer:
Source files:文件源,就是在Jenkins機器上的/var/jenkins_home/workspace/項目名,這是根目錄(項目名就是你之前在Jenkins新建的任務),文件源是這個根目錄下的包。
如/var/jenkins_home/workspace/store_test任務打包后的文件是dist文件夾則包的全路徑是/var/jenkins_home/workspace/store_test/dist/h5.tar.gz
Source files:dist/h5.tar.gz
Remove prefix:去掉source files中的某個文件路徑,如填dist則只剩下h5.tar.gz會傳到服務器
Remote directory:這是war包傳輸?shù)竭h程服務器上的路徑,由于之前在配置SSH Server的時候已經(jīng)配置了一個Remote directory,則會基于這個路徑下查找或者生成,如寫"/"?
exec command:是傳輸后服務器執(zhí)行的腳本:
cd /usr/local/tomcat7/webapps/tf-manage-h5/test
pwd //查看所在目錄
tar -zxvf h5.tar.gz? //解壓
ls
rm -rf h5.tar.gz? //刪除壓縮包
保存
立即構建
可在構建歷史里查看控制臺輸出,構建成功會顯示
transfer 1 files //重點 :如果是0,則沒文件上傳到服務器
success
有不對的地方歡迎指出!比個心? 此處有一個小心心
燕子飛走了