Mac下使用Jenkins持續(xù)集成iOS-APP

APP開發(fā)過程中需要打包諸多版本提供測試部門進(jìn)行測試,工作時(shí)編譯工程打包既影響工作進(jìn)度又會(huì)影響測試效率,每次都被測試部門催成狗。所以想實(shí)現(xiàn)研發(fā)人員只管提交代碼,測試人員直接自己操作打包的功能。自己折騰了三天,終于實(shí)現(xiàn)了從SVN拉下最新代碼、更新CocoaPods、正常打出ipa包,直接上傳蒲公英分發(fā)等功能?。?/p>

雖然網(wǎng)上有很多教程但是通常會(huì)因?yàn)楦鞣N原因存在很多坑,也有很多是在Jenkins中配置Xcode參數(shù),整體配置過程相當(dāng)麻煩,這里筆者是用Shell 腳本來進(jìn)行整體構(gòu)建工作,非常的easy。在這里記錄下環(huán)境搭建的過程,希望能幫他人減少一點(diǎn)麻煩。


1、 安裝Java SE Development Kit(JDK)

Jenkins是基于Java開發(fā)的一種持續(xù)集成工具。所以Mac上使用需要預(yù)先安裝Java SE Development Kit(JDK)。

JDK下載地址

JDK下載

安裝過程與正常軟件安裝相同(傻瓜式操作就好了,這里不做具體表述)


2、安裝Jenkins

Jenkins下載地址

Jenkins下載

安裝完成后打開瀏覽器輸入http://localhost:8080就可以進(jìn)入Jenkins管理界面啦,到這里不要糾結(jié)密碼是什么,注意下圖的紅色字體部分(/Users/Shared/Jenkins/Home...),果斷的打開它推薦大家用終端打開(因?yàn)闀?huì)涉及到權(quán)限問題,這樣省力一些)。打開文件后會(huì)出現(xiàn)一串字符,復(fù)制進(jìn)輸入框點(diǎn)擊Continue就行啦

Jenkins初始密碼

安裝推薦的插件

安裝推薦插件
安裝推薦插件

最后輸入用戶名,密碼,郵件等信息就完成了

出入管理員信息

簡不簡單、方不方便,不要太開心哦糟點(diǎn)都在后面!


3、安裝SVN、Xcode插件

筆者公司代碼管理使用的是SVN,所以這里需要繼續(xù)安裝SVN Publisher plugin插件,同時(shí)打包需要使用Xcode integration插件

搜索相應(yīng)插件名字安裝就行啦


4、安裝開發(fā)證書及mobileprovision描述文件

執(zhí)行完Jenkins安裝步驟后mac會(huì)自動(dòng)生成一個(gè)Jenkins用戶,余下步驟會(huì)涉及到諸多權(quán)限問題,所以最好注銷當(dāng)前用戶登錄Jenkins執(zhí)行以下操作

修改Jenkins用戶管理員權(quán)限

登錄進(jìn)入后直接安裝需要的證書、描述文件就可以啦(作為一個(gè)優(yōu)秀的程序猿這個(gè)一定難不倒你)

注意:因?yàn)橛脩粼L問鑰匙串中的證書需要權(quán)限,而用Jenkins構(gòu)建時(shí),不管是用Xcode插件配置還是shell 腳本,都不能輸入用戶密碼,所以必須設(shè)置證書的【訪問控制】為允許所有應(yīng)用程序訪問此項(xiàng)目。

修改證書訪問控制

5、配置構(gòu)建項(xiàng)目

5.1 創(chuàng)建自由風(fēng)格的項(xiàng)目

創(chuàng)建項(xiàng)目

5.2 配置源碼管理方式

配置SVN

5.3 配置構(gòu)建方式

配置腳本

配置過程正是結(jié)束了,因?yàn)椴捎玫膕h腳本的方式進(jìn)行代碼構(gòu)建,所以大大減少了其他的配置步驟


6、構(gòu)建用腳本?。?!

構(gòu)建用腳本

到這里使用Jenkins持續(xù)集成iOS源碼分發(fā)平臺(tái)就搭建完成了,有什么不足的地方大家多多指正

Jenkins的功能還有很多大家可以繼續(xù)探索,還可以實(shí)現(xiàn)自動(dòng)定時(shí)構(gòu)建等附加功能這里就不一一表述了

最后說一句這是筆者的第一篇技術(shù)分享文章((*^__^*) 嘻嘻……)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容