【iOS】Jenkins持續整合iOS包

來源:互聯網
上載者:User

標籤:空間   apple   string   type   deb   ima   idt   rto   lis   

  今天專案經理說讓APP端做一下用Jenkins做持續整合,因為之前沒有做過,所以就開始瞭解,終於在鍵哥的協助下,完成了持續整合的功能,感動的不行,在這裡感謝鍵哥。

  因為公司的Jenkins是搭建好的,接下來我就直接上配置過程了。

  由於公司的Jenkins的環境不是在Mac上的,所以要做自動整合打包的話,就只能把agent(節點)設定到我自己的電腦了,建立agent的過程。

  

其中遠程工作目錄就是你本地的Jenkins的安裝路徑。

接下來就是在Jenkins中建立項目了,點擊建立,然後選擇建立自由式饒舌項目

接下來進入項目配置:

首先要配置的在中繼資料中配置,指定要運行工程的節點為我們之前建立的節點

然後在源碼管理中設定源碼管理方式,git地址以及認證方式,同時指定要build的分支

接下來就是構建觸發器的設定,在這裡設定自動構建的時間

然後就到重點了,添加構建的shell指令碼

shell指令碼如下

#!/bin/sh### 配置定義PROJECT_NAME="項目名稱" ### ipa打包的路徑 $(WORKSPACE)表示工作空間路徑下ipaPath="${WORKSPACE}/ipa"### archive的路徑xcarchivePath="${WORKSPACE}/xcarchive"CONFIGURATION="Release"### develop 分支描述檔案#PROFILE_NAME="InHouse_loanCustomer"### master 分支描述檔案#PROFILE_NAME="FinupCredit-Development"PROFILE_NAME="FinupPlatform_Adhoc"### 指定ipa名稱IPAFILE_NAME="${PROJECT_NAME}_${BUILD_NUMBER}.ipa"# unlock login keygen#security unlock-keychain -p ${KEYCHAIN_PASSWORD} ${KEYCHAIN_PATH} || failed "unlock-keygen"# cleanecho "xcodebuild clean"xcodebuild clean -workspace ${WORKSPACE}/${PROJECT_NAME}/${PROJECT_NAME}.xcworkspace                   -scheme ${PROJECT_NAME}                  -configuration ${CONFIGURATION}                  || failed "xcodebuild clean"# archiveecho "xcodebuild archive"xcodebuild archive -workspace ${WORKSPACE}/${PROJECT_NAME}/${PROJECT_NAME}.xcworkspace                    -scheme ${PROJECT_NAME}                    -configuration ${CONFIGURATION}                    -destination generic/platform=iOS                    -archivePath ${xcarchivePath}/${IPAFILE_NAME}.xcarchive                    || failed "xcodebuild archive"# export ipaecho "xcodebuild exportArchive"xcodebuild -exportArchive -archivePath ${xcarchivePath}/${IPAFILE_NAME}.xcarchive                           -exportPath ${ipaPath}/${IPAFILE_NAME}                           -exportOptionsPlist ${WORKSPACE}/options.plist                           -verbose                           || failed "xcodebuild export archive"                                                    #-exportFormat ipa \                          #-exportProvisioningProfile ${PROFILE_NAME} \                          #-verbose \# run sonar#pushd ${WORKSPACE}/iphone/${PROJECT_NAME}#./run-sonar.sh#popd

設定好指令碼之後就可以構建了。

然而到這裡還是有問題,好像是在XCode9之後在命令列打包需要額外的options.plist檔案,這個檔案要放到與工程的同級目錄下

 

options.plist如下

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict><key>compileBitcode</key><true/><key>method</key><string>ad-hoc</string><!-- 描述檔案 --><key>provisioningProfiles</key><dict><key>*****</key><string>****</string></dict><key>signingCertificate</key><string>iPhone Distribution</string><key>signingStyle</key><string>manual</string><key>stripSwiftSymbols</key><true/><!-- 團隊id --><key>teamID</key><string>團隊id</string><key>thinning</key><string><none></string></dict></plist>

 至此就可以執行構建了

【iOS】Jenkins持續整合iOS包

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.