Jenkins配合FastLane完成打包

Jenkins配合FastLane完成打包

FastLane的使用

Jenkins的安裝

我們將兩者組合起來.

首先說一下,ios打包用的xcbuild命令,所以必須是macos環(huán)境,這個不用多解釋.

所以....Jenkins所在宿主機得是mac系統(tǒng)的(如果有大神知道別的方式,麻煩指點一下),因為沒有多余的mac機子,我就搭在了我自己的機子上.

接下來我們說說怎么搞

啟動Jenkins

首先,啟動終端,輸入

Jenkins

啟動Jenkins,打開地址(沒改過端口就是8080了)http://localhost:8080

新建任務

新建item


新建item

新建自由項目

啥也不用勾,寫個描述差不多了


image

源代碼管理需要寫一下


源代碼管理
觸發(fā)器什么的啥也不用寫

最后就是這個Execute shell了

Jenkins從git上拉完代碼,會執(zhí)行這里面的shell

shell腳本的編寫就需要各位去學習一下了

下圖是我的shell腳本,我給大家講解一下我每一行的作用

Execute shell
#Jenkins部署在我本機,我本機作為宿主機,拉下來的代碼也在我本機,所以我想看一下代碼拉下來以后的路徑,因此在這里打印一下
echo "獲取當前項目路徑"
echo $(pwd)
#------------react-native的三方庫操作 start--------------#
#做一次yarn操作,因為我的項目是react-native項目,且node_modules不上傳git,因此從git上拉下來的代碼是不包含node_modules的,我需要做一次yarn操作.
#同理,你的ios項目如果是使用pod管理,你可以做一次pod install,把需要的三方庫拉下來
echo "執(zhí)行yarn操作"
yarn
#替換需要修改的文件,這個install2是我在項目里寫的腳本,做我需要的一些事,可以忽略
npm run install2
#------------react-native的三方庫操作 end--------------#
#上述動作執(zhí)行完畢以后執(zhí)行下面的操作
echo "執(zhí)行完畢,cd到ios下做打包工作"
#cd到ios目錄下,當然,如果你本身就是ios純原生項目,你就不要cd了
cd ./ios
echo "開始打包"
#執(zhí)行你寫的FastLane的action,可以見文章開頭的FastLane的使用
fastlane test_ad
echo "打包完畢"
#------------打包完畢,下面是我自定義的一些操作--------------#
#因為我打完包需要給測試做內測分發(fā),自己搭建了一個內測分發(fā)的壓面,下面是我自定義的一些操作,這里就省略了
#....

點擊保存,就這樣,打包腳本的編寫就完成了


保存

測試一下

直接上圖把,看圖比較直觀

開始構建
查看正在構建的任務
查看控制臺輸出

所有的log信息都在這里看,報錯了也可以在這里看到底什么地方報錯了,針對性解決對應錯誤.如下圖

控制臺輸出

最后的結果如下圖

結果
產物

Jenkins拉下來的項目,成功打出ipa包和dsym文件.

同時,你有打出來的包文件的路徑,你是想上傳蒲公英或者別的平臺或公司內部有分發(fā),都是可以直接拿著產物為所欲為的.例如:我將它放到了我們自己的服務器上進行分發(fā).見下面這篇文章

ios內測分發(fā)(企業(yè)/非企業(yè)分發(fā))

Jenkins打完包以后公司內部服務器分發(fā)(還沒寫,挖坑待填)

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容