iOS 自動化打包-Jenkins

一、資源下載地址及相關(guān)安裝、配置方法
JDK下載地址

JDK下載.png

檢查當(dāng)前已安裝jdk版本及其安裝目錄:

$ /usr/libexec/java_home -V

jdk相關(guān)信息.png

Jenkins下載地址

Jenkins下載.png

將下載好的 .war 包放入一個文件夾(桌面-jenkins文件夾)琐鲁,通過終端進(jìn)入該文件夾中柳爽,通過以下命令啟動:

$ java -jar jenkins.war

啟動.png

說明:關(guān)閉方法在終端通過 ctrl + c 即可

看到如下圖,即可通過瀏覽器訪問 localhost

啟動成功.png

通過瀏覽器訪問 https://localhost:8080 進(jìn)入 Jenkins 管理界面僻族,首次進(jìn)入如下:

  1. 輸入管理員密碼(密碼在紅色提示的地址中)


    1.png
  2. 安裝推薦的插件


    2-1.png
2-2.png
  1. 創(chuàng)建賬號


    3.jpeg

至此葛账,JDK + Jenkins相關(guān)安裝及配置基本完成柠衅!

二、相關(guān)插件安裝
通過下圖搜索并安裝相關(guān)插件:

  1. Git Parameter Plug-In
  2. Keychain and Provisioning Profiles Management
  3. Xcode integration
1.png
2.png
3.png

三籍琳、開發(fā)證書及描述文件管理配置

  1. login.keychain文件

    login.keychain.png

    將上圖 login.keychain-db 文件(/Users/用戶名/Library/Keychains)復(fù)制到存放 jenkins.war包文件夾中菲宴,并將名字改為 login.keychain

  2. .mobileprovision文件
    登錄開發(fā)者賬號贷祈,下載 Provisioning Profiles 文件,并一樣放進(jìn)存放 jenkins.war包文件夾中喝峦,如下圖:

    文件結(jié)構(gòu).png

  3. 在 Jenkins 管理頁面中配置
    系統(tǒng)管理 ---> Keychain and Provisioning Profiles Management ---> 選取文件 ---> Upload
    依次將你的 login.keychain.mobileprovision文件上傳势誊,并填寫開機密碼和描述,如下圖:

    相關(guān)配置.png

說明login.keychain.mobileprovision文件被上傳到 /Users/用戶名/.jenkins/kpp_upload 文件中谣蠢,如下圖:

說明.png

點擊 Save 即可粟耻。至此,證書及描述文件在 Jenkins 中的配置就完成了眉踱。

四挤忙、在Jenkins中創(chuàng)建任務(wù)及相關(guān)配置

  1. 新建一個自由風(fēng)格的任務(wù),如下圖:
新建任務(wù).png
  1. General 配置
    此項根據(jù)自己需求配置谈喳,也可以不做任何配置

    General配置.png

  2. 源碼管理配置

    源碼管理配置.png

賬號添加.png
私鑰添加.png
  1. 構(gòu)建觸發(fā)器 配置
    此項根據(jù)自己實際需求配置即可

  2. 構(gòu)建環(huán)境 配置
    依據(jù)下圖勾選册烈,并對證書及描述文件進(jìn)行核對

    構(gòu)建環(huán)境配置.png

  3. 構(gòu)建 配置
    在這里,我們先選擇 Xcode 婿禽,關(guān)于 shell 茄厘,后面會講到

    1.png

添加好 Xcode 后,我們先點擊如下圖:

Settings.png

6-1.png
6-2.png
6-3.png
6-4.png
6-5.png

至此谈宛,Jenkins + Xcode的打包功能相關(guān)配置完成次哈,我們在Jenkins管理頁面選擇我們配置好的任務(wù):


任務(wù).png

點擊 Build with Parameters

Build.png

開始構(gòu)建


開始構(gòu)建.png
進(jìn)行中.png

查看控制臺相關(guān)信息

控制臺.png

經(jīng)典錯誤信息:


error-1.png

我們先來看看我們輸出路徑里面有沒有東西,打開 build 文件吆录,如下圖:

build文件.png

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)建,如下圖:


shell命令.png

特別說明:

  1. 由于Jenkins會把我們綁定的項目Git倉庫拉到它的 workspace 文件夾下(/Users/用戶名/.jenkins/workspace),并且我的項目用了 cocoapods攻人,只將 PodfilePodfile.lock 兩個文件托管到Git倉庫取试,所以我要先進(jìn)入到 Podfile 文件路徑下進(jìn)行 pod install
  2. 由于我的 shell腳本 是放在 buildTool 文件夾下的怀吻,所以還要執(zhí)行“cd buildTool”瞬浓。
  3. 對于 fastlane 也是一樣的,只是上圖中的區(qū)域?qū)?fastlane 對應(yīng)的命令即可烙博。

最后,把結(jié)果呈現(xiàn)一下吧:


Success-1.png
Success-2.png

由于我的 shell腳本 寫的是上傳 firim 平臺

Success-3.png

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末烟逊,一起剝皮案震驚了整個濱河市渣窜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌宪躯,老刑警劉巖乔宿,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異访雪,居然都是意外死亡详瑞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進(jìn)店門臣缀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來坝橡,“玉大人,你說我怎么就攤上這事精置〖瓶埽” “怎么了?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵脂倦,是天一觀的道長番宁。 經(jīng)常有香客問我,道長赖阻,這世上最難降的妖魔是什么蝶押? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮火欧,結(jié)果婚禮上棋电,老公的妹妹穿的比我還像新娘。我一直安慰自己苇侵,他們只是感情好离陶,可當(dāng)我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著衅檀,像睡著了一般招刨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哀军,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天沉眶,我揣著相機與錄音打却,去河邊找鬼。 笑死谎倔,一個胖子當(dāng)著我的面吹牛柳击,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播片习,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼捌肴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了藕咏?” 一聲冷哼從身側(cè)響起状知,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎孽查,沒想到半個月后饥悴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡盲再,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年西设,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片答朋。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡贷揽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出梦碗,到底是詐尸還是另有隱情擒滑,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布叉弦,位于F島的核電站丐一,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏淹冰。R本人自食惡果不足惜库车,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望樱拴。 院中可真熱鬧柠衍,春花似錦、人聲如沸晶乔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽正罢。三九已至阵漏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背履怯。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工回还, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人叹洲。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓柠硕,卻偏偏與公主長得像,于是被迫代替她去往敵國和親运提。 傳聞我的和親對象是個殘疾皇子蝗柔,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,601評論 2 353

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