原理:
在jenkins搭建編譯打包環(huán)境,將打包好的文件直接遠程發(fā)送到相關(guān)測試服務(wù)器目錄下
插件安裝
1. 安裝Publish Over SSH插件用于SSH連接遠程的服務(wù)器
登錄 jenkins 管理系統(tǒng)首頁毅访,打開“系統(tǒng)管理”--“管理插件” 搜索 Publish Over SSH 然后勾選安裝(用于遠程發(fā)送打好的包)
2. 安裝 NodeJs插件 用于vue項目打包構(gòu)建
打開“系統(tǒng)管理”--“管理插件” 搜索 nodejs 然后勾選安裝,重啟jenkins
image.png
打開“系統(tǒng)管理”--"全局工具管理",選擇版本,點擊保存
image.png
發(fā)布配置
首先新建一個自由風(fēng)格的項目
image.png
然后配置構(gòu)建保留天數(shù)和參數(shù)化構(gòu)建
image.png
添加git地址
image.png
添加node版本
image.png
添加構(gòu)建,執(zhí)行shell命令打包
image.png
添加構(gòu)建后操作,遠程發(fā)送打包好的包
image.png
點擊保存開啟構(gòu)建,即可
創(chuàng)建過程中問題描述:
1.安裝不了:
image.png
解決方法:
升級jenkins即可
2.缺少package.json文件
解決方法:
直接在項目中打包,項目會自帶該文件,jenkins才能直接使用該文件,以及里面相關(guān)文件默認路徑,正確打包
image.png
3.打包不成功
解決方法:
原因可能是prerender-spa-plugin預(yù)渲染過程中出錯了听隐。在開發(fā)環(huán)境(Windows)中打包重試,還是沒有問題薛闪。那么問題就還是出在phantomjs上了迁霎,因為prerender-spa-plugin是依賴phantomjs的吱抚。
嘗試查看phantomjs --version版本,根本無法看到
image.png
所以問題可能出現(xiàn)在npm直接安裝的phantomjs缺少依賴,需要在jenkins服務(wù)器環(huán)境中手動安裝依賴(centos系統(tǒng)):
yum install fontconfig
yum install freetype