一、資源下載地址及相關(guān)安裝、配置方法
JDK下載地址
檢查當(dāng)前已安裝jdk版本及其安裝目錄:
$ /usr/libexec/java_home -V
將下載好的 .war
包放入一個文件夾(桌面-jenkins文件夾)琐鲁,通過終端進(jìn)入該文件夾中柳爽,通過以下命令啟動:
$ java -jar jenkins.war
說明
:關(guān)閉方法在終端通過 ctrl + c
即可
看到如下圖,即可通過瀏覽器訪問 localhost
:
通過瀏覽器訪問 https://localhost:8080 進(jìn)入 Jenkins
管理界面僻族,首次進(jìn)入如下:
-
輸入管理員密碼(密碼在紅色提示的地址中)
-
安裝推薦的插件
-
創(chuàng)建賬號
至此葛账,JDK + Jenkins相關(guān)安裝及配置基本完成柠衅!
二、相關(guān)插件安裝
通過下圖搜索并安裝相關(guān)插件:
Git Parameter Plug-In
Keychain and Provisioning Profiles Management
Xcode integration
三籍琳、開發(fā)證書及描述文件管理配置
-
login.keychain
文件
將上圖login.keychain-db
文件(/Users/用戶名/Library/Keychains
)復(fù)制到存放jenkins.war
包文件夾中菲宴,并將名字改為login.keychain
-
.mobileprovision
文件
登錄開發(fā)者賬號贷祈,下載Provisioning Profiles
文件,并一樣放進(jìn)存放jenkins.war
包文件夾中喝峦,如下圖:
-
在 Jenkins 管理頁面中配置
系統(tǒng)管理
--->Keychain and Provisioning Profiles Management
--->選取文件
--->Upload
依次將你的login.keychain
和.mobileprovision
文件上傳势誊,并填寫開機密碼和描述,如下圖:
說明
:login.keychain
和 .mobileprovision
文件被上傳到 /Users/用戶名/.jenkins/kpp_upload
文件中谣蠢,如下圖:
點擊 Save
即可粟耻。至此,證書及描述文件在 Jenkins
中的配置就完成了眉踱。
四挤忙、在Jenkins中創(chuàng)建任務(wù)及相關(guān)配置
- 新建一個自由風(fēng)格的任務(wù),如下圖:
-
General
配置
此項根據(jù)自己需求配置谈喳,也可以不做任何配置
-
源碼管理
配置
構(gòu)建觸發(fā)器
配置
此項根據(jù)自己實際需求配置即可-
構(gòu)建環(huán)境
配置
依據(jù)下圖勾選册烈,并對證書及描述文件進(jìn)行核對
-
構(gòu)建
配置
在這里,我們先選擇Xcode
婿禽,關(guān)于shell
茄厘,后面會講到
添加好 Xcode
后,我們先點擊如下圖:
至此谈宛,Jenkins + Xcode的打包功能相關(guān)配置完成次哈,我們在Jenkins管理頁面選擇我們配置好的任務(wù):
點擊 Build with Parameters
開始構(gòu)建
查看控制臺相關(guān)信息
經(jīng)典錯誤信息:
我們先來看看我們輸出路徑里面有沒有東西,打開 build
文件吆录,如下圖:
xcarchive
文件已經(jīng)出來了窑滞,ipa
包沒出來,好吧恢筝,至少已經(jīng)成功一大半了哀卫。
錯誤原因:因為 Xcode 9 默認(rèn)不允許訪問鑰匙串的內(nèi)容,必須要設(shè)置 allowProvisioningUpdates 才會允許撬槽,Jenkins的Xcode插件目前無法支持此項完成打包流程此改。
到這里有沒有覺得 Jenkins + Xcode 的方式很尷尬(除非你的項目不需要推送功能),好吧侄柔,至少這種方法我們已經(jīng)會了共啃,接下來,我們通過 Jenkins + shell 腳本打包暂题。
打開相關(guān)任務(wù)的“配置”移剪,直接滑動頁面到“構(gòu)建”,如果之前添加了 “Xcode”薪者,請刪掉纵苛。增加“shell”構(gòu)建,如下圖:
特別說明:
- 由于Jenkins會把我們綁定的項目Git倉庫拉到它的
workspace
文件夾下(/Users/用戶名/.jenkins/workspace),并且我的項目用了cocoapods
攻人,只將Podfile
和Podfile.lock
兩個文件托管到Git倉庫取试,所以我要先進(jìn)入到Podfile
文件路徑下進(jìn)行pod install
。 - 由于我的
shell腳本
是放在buildTool
文件夾下的怀吻,所以還要執(zhí)行“cd buildTool”瞬浓。 - 對于
fastlane
也是一樣的,只是上圖中的區(qū)域?qū)?fastlane
對應(yīng)的命令即可烙博。
最后,把結(jié)果呈現(xiàn)一下吧:
由于我的 shell腳本
寫的是上傳 firim
平臺