iOS+Jenkins+git+蒲公英 (iOS自動(dòng)打包)

1、Jenkins的安裝與啟動(dòng)

open /Applications/Jenkins/jenkins.war
  • 方式二:使用homebrew

    1. 安裝 homebrew(如果已經(jīng)安裝,跳過(guò)此步)
    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
    1. 安裝 Jenkins
    brew install jenkins     
    

    3.啟動(dòng) Jenkins

    jenkins
    

2、訪問(wèn)Jenkins

  • 當(dāng)Jenkins啟動(dòng)后,瀏覽器中輸入 http://localhost:8080/

  • 使用安裝包安裝會(huì)自動(dòng)彈出了瀏覽器打開(kāi)

  • 如果端口沖突那么請(qǐng)修改端口

defaults write /Library/Preferences/org.jenkins-ci httpPort xxxx
  • 請(qǐng)前往圖中紅字所示地址


    受保護(hù)-請(qǐng)修改文件訪問(wèn)權(quán)限
  • 修改文件訪問(wèn)權(quán)限后,進(jìn)入該文件夾中,將initialAdminPassword中的密碼拷貝到輸入框,點(diǎn)擊continue

  • 下載插件


    選擇左邊-安裝建議的插件
  • 插件安裝中。。。


    插件安裝中
  • 插件安裝完畢,創(chuàng)建賬戶->Save and Finish

    創(chuàng)建管理員賬戶

  • 賬戶創(chuàng)建成功

3、Jenkins插件安裝

  • 依次安裝以下Jenkins插件
GitLab
Xcode integration
Keychains and Provisioning Profiles Management
  • 插件安裝步驟


    進(jìn)入插件管理頁(yè)面

    搜索并安裝插件

4、創(chuàng)建Jenkins任務(wù)

  • 回到Jenkins首頁(yè),點(diǎn)擊新建
    創(chuàng)建Jenkins任務(wù)

5、配置剛剛創(chuàng)建好的Jenkins任務(wù)

5.1、設(shè)置源碼管理(這里我們使用的是git)

配置Git遠(yuǎn)程倉(cāng)庫(kù)
  • 設(shè)置Gredentials


    進(jìn)入Gredentials頁(yè)面

    創(chuàng)建

    配置
  • 如果不清楚上如中的Key, 應(yīng)該填什么,請(qǐng)看下面
    1、前往文件夾

 ~/.ssh/id_rsa

2、用文本編輯器打開(kāi)id_rsa, 拷貝里面的內(nèi)容到上圖中Key的輸入框,如下圖

~/.ssh/id_rsa

  • 配置好Credential, 點(diǎn)擊ok,再次回到項(xiàng)目的源碼管理,選擇Gredentials為我們剛剛創(chuàng)建的,如圖
    選擇Gredentials

5.2、設(shè)置構(gòu)建觸發(fā)器(可以觸發(fā)構(gòu)建操作的配置)

非必填,不配置的話需要手動(dòng)點(diǎn)擊構(gòu)建

5.3、設(shè)置構(gòu)建環(huán)境,這里我們選擇Keychains and Code Signing Identities

  • 勾選Keychains and Code Signing Identities

  • 配置KeychainProvisioning Profiles

    • 保存后進(jìn)入Keychains and Provisioning Profiles Management頁(yè)面,如果沒(méi)有該選項(xiàng),請(qǐng)參考上述第三步:Jenkins插件安裝來(lái)安裝Keychains and Provisioning Profiles Management插件
      進(jìn)入`Keychains and Provisioning Profiles Management`頁(yè)面
配置`Keychain`和` Provisioning Profiles`

上圖中的的`Code Sining Identities`來(lái)源(鑰匙串中)
  • 注意:保存后,在/Users/Shared/Jenkins文件夾下如圖:

    需要出現(xiàn)`Keychains`和`MobileDevice`文件夾

    如果未出現(xiàn):
    1、直接將/Users/‘你的用戶名’/Library/Keychains文件夾拷貝到/Users/Shared/Jenkins文件夾下;
    2、直接將/Users/‘你的用戶名’/Library/MobileDevice文件夾拷貝到/Users/Shared/Jenkins文件夾下;

  • 注意:這里配置的證書(shū)是將來(lái)用來(lái)打包項(xiàng)目用的證書(shū),必須與你將要打包的Xcode項(xiàng)目中的配置一致?。?!

  • 注意:這里配置的證書(shū)是將來(lái)用來(lái)打包項(xiàng)目用的證書(shū),必須與你將要打包的Xcode項(xiàng)目中的配置一致?。。?/p>

  • 注意:這里配置的證書(shū)是將來(lái)用來(lái)打包項(xiàng)目用的證書(shū),必須與你將要打包的Xcode項(xiàng)目中的配置一致?。?!

  • 需要手動(dòng)配置Xcode項(xiàng)目的profile文件,不要使用Auto........,這里不再說(shuō)明如何手動(dòng)配置Xcode項(xiàng)目的profile文件
    至此,我們完成如下圖的構(gòu)建環(huán)境配置(如下圖)

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

5.4、設(shè)置構(gòu)建操作(這里我們選擇Xcode

  • 點(diǎn)擊增加構(gòu)建步驟, 選擇Xcode

  • 如果沒(méi)有Xcode選項(xiàng),請(qǐng)參考上述第三步:Jenkins插件安裝來(lái)安裝Xcode integration插件

    增加構(gòu)建步驟-Xcode

  • 配置Xcode構(gòu)建步驟

    • 配置General build settings

      General build settings

    • 配置Code signing & OS X keychain options

      Code signing & OS X keychain options

    • 配置Advanced Xcode build options

      Advanced Xcode build options

此時(shí)我們所有的打包操作已經(jīng)完畢,如果你僅僅是打包用,到此你可以點(diǎn)擊保存,點(diǎn)擊立即構(gòu)建,進(jìn)行構(gòu)建操作了

立即構(gòu)建

既然已經(jīng)做到這一步(自動(dòng)打包),我們還可以配置一些構(gòu)建操作,將打包后的IPA文件上傳到蒲公英,便于測(cè)試!配置如下:

  • 1、在蒲公英網(wǎng)站上創(chuàng)建用戶,獲取到userKeyapiKey
  • 2、在Jenkins上再次配置下我們之前配置好的項(xiàng)目,在之前添加的Xcode構(gòu)建步驟下,新增一個(gè)Execute shell構(gòu)建步驟,如圖:
    Execute shell
  • 3、在command中填寫如下命令:
#蒲公英上的User Key
uKey="xxxxxxxxxxxxxxxxxxxxxxxx"

#蒲公英上的API Key
apiKey="xxxxxxxxxxxxxxxxxxxxxxxx"

#要上傳的ipa文件路徑
IPA_PATH="我們打包后的IPA文件地址"

#執(zhí)行上傳至蒲公英的命令,這句不需要修改
curl -F "file=@${IPA_PATH}" -F "uKey=${uKey}" -F "_api_key=${apiKey}" https://www.pgyer.com/apiv1/app/upload
  • 配置完畢,點(diǎn)擊保存,我們?cè)俅螛?gòu)建我們的項(xiàng)目,如果不出意外,我們看到的是這樣的標(biāo)志


    構(gòu)建成功

    說(shuō)明我們的項(xiàng)目構(gòu)建成功,并成功發(fā)布到蒲公英,快去蒲公英上看看吧~~

6、常見(jiàn)報(bào)錯(cuò)及解決辦法

1、This project contains no schemes


This project contains no schemes
  • 解決辦法:


    勾選shared
  • 注意點(diǎn):

    • 這里我們不能去Jenkins項(xiàng)目目錄下修改Xcode項(xiàng)目的shared勾選,我們應(yīng)該在本地的開(kāi)發(fā)源碼上修改,然后提交到git遠(yuǎn)程倉(cāng)庫(kù),再次構(gòu)建?。。?/li>
    • 由于gitignor文件,我們有可能沒(méi)有注意的情況下,并沒(méi)有將shared勾選這個(gè)設(shè)置提交到遠(yuǎn)程倉(cāng)庫(kù),導(dǎo)致再次侯建依舊失敗!


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

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容