日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ios 自动打包命令_【实践】iOS使用Jenkins实现自动化打包并上传蒲公英

發布時間:2024/10/8 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ios 自动打包命令_【实践】iOS使用Jenkins实现自动化打包并上传蒲公英 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者:怪獸monster
鏈接:https://www.jianshu.com/p/f4a0093d3bed

一、安裝本地Jenkins

1、通過Home brew安裝本地Jenkins

brew install Jenkins

沒安裝Home Brew的可使用命令自行安裝

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

2、啟動Jenkins

終端輸入命令啟動Jenkins

jenkins

待Jenkins啟動后,瀏覽器打開:http://localhost:8080/

3、解鎖Jenkins

按照提示到文件所在目錄并拷貝初始密碼,解鎖Jenkins。

4、安裝插件

安裝插件.png

可以選擇推薦的插件,也可自行選擇插件安裝。

5、設置登錄賬號密碼

設置登錄賬號密碼.png

二、配置Jenkins

1、安裝插件

到系統管理-->插件管理-->可選插件中,搜索安裝以下插件:Keychains and Provisioning Profiles Management(用來管理本地keychain和iOS證書)Xcode integration (用于xcode構建)

插件安裝.png

搜索安裝插件.png

2、配置證書

插件安裝完成后,在系統管理中找到剛安裝的Keychains and Provisioning Profiles Management插件:

Keychains and Provisioning Profiles Management.png

3、配置login.keychain和描述文件

1、login.keychain文件路徑:

~/Library/Keychains

如果該路徑下只有login.keychain-db,可以復制出來刪除-db。

2、Provisioning Profiles路徑一般為:

/User/{用戶名}/Library/MobileDevice/Provisioning Profiles

配置證書.png

配置完成后點擊Save保存。

三、新建任務

1、創建一個自由風格的任務:

新建任務.png

2、項目配置:

1、丟棄舊的構建(按需填寫)

丟棄舊的構建.png

2、源碼管理:

源碼管理.png

3、構建環境:

構建環境.png

4、增加構建步驟:
可選Xcode編譯,也可以選擇Shell腳本使用Xcodebuild命令編譯,這里只介紹shell腳本的方式:增加構建步驟-->Execute shell

echo "=================1.創建環境及文件路徑================="# $HOME表示 Jenkins 的主目錄# 項目輸出路徑OUTPUT_PATH="/Users/guaishou/autopackaging"echo $OUTPUT_PATHif [ ! -d $OUTPUT_PATH ]; thenmkdir $OUTPUT_PATHfi# 創建當前任務下的 項目文件 環境# ${JOB_NAME} 當前任務名稱JOB_NAME_PATH="$OUTPUT_PATH/${JOB_NAME}"echo $JOB_NAME_PATHif [ ! -d $JOB_NAME_PATH ]; thenmkdir $JOB_NAME_PATHfi# 項目工程名APP_NAME="sudi"#項目scheme名稱,一般跟都是跟APP_NAME是一致的SCHEME_NAME="jixain" # 項目中 Info.plist 的絕對路徑PLIST_PATH="$HOME/jenkins/workspace/${JOB_NAME}/${APP_NAME}/${APP_NAME}/Info.plist"# 獲取項目的版本號、App名稱BUNDLE_SHORT_VERSION=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "${PLIST_PATH}")DISPLAY_NAME=$(/usr/libexec/PlistBuddy -c "Print CFBundleDisplayName" "${PLIST_PATH}")# ipa存放的路徑IPA_PATH="${JOB_NAME_PATH}/build"# 創建 ipa 路徑文件夾if [ ! -d $IPA_PATH ];thenecho '文件夾不存在,創建文件夾'mkdir $IPA_PATHelseecho '文件夾已存在,刪除文件夾內所有文件'rm -rf $IPA_PATH/*fi# archive 文件路徑ARCHIVE_PATH="${IPA_PATH}/${APP_NAME}_${BUILD_ID}.xcarchive"echo "=================2.進入工程目錄================="cd $HOME/jenkins/workspace/${JOB_NAME}/${APP_NAME}echo "=================3.清理工程================="xcodebuild clean -target "${APP_NAME}" -configuration 'Release'echo "=================4.解鎖鑰匙串================="# 這里讀取了 Jenkins 下的 Library 中的 Keychains#如果構建環境配置看keychain,此步驟可省略
security unlock-keychain -p "電腦登錄密碼" "${HOME}/Library/Keychains/login.keychain-db"echo "=================5.打包生成 xcarchive 文件================="# 這里采用了自動簽名的方式,可自行配置 CODE_SIGN_IDENTITY 和 PROVISIONING_PROFILE# 如果是使用了cocopods的workspace,可將 -project 替換為 -workspace , .xcodeproj 替換為 .xcworkspacexcodebuild archive -workspace "${APP_NAME}.xcworkspace" -scheme "${SCHEME_NAME}" -configuration "Debug" -archivePath "${ARCHIVE_PATH}"echo "=================6.導出 ipa ================="# ExportOptions.plist主要是描述了導出的 ipa 使用的相關證書和配置文件# 不知道怎么填寫的自行百度xcodebuild -exportArchive -archivePath $ARCHIVE_PATH -exportPath "${IPA_PATH}" -exportOptionsPlist "${JOB_NAME_PATH}/ExportOptions.plist"echo "=================7.上傳到蒲公英發布平臺 ================="PASSWORD=555555GIT_MESSAGE=`git log -1 | sed -n '5,$p'`
curl -F "file=@${IPA_PATH}/${SCHEME_NAME}.ipa" \-F "uKey=你的User Key" \-F "_api_key=你的Api Key" \-F "buildInstallType=2" \-F "buildUpdateDescription=commitId:${GIT_COMMIT}-message:${GIT_MESSAGE}" \-F "buildPassword=${PASSWORD}" \
https://www.pgyer.com/apiv2/app/upload
echo "=================8.通知企業微信 ================="CURL_PSOT_DATA=" ? {
? ? ? ?\"msgtype\": \"text\",
? ? ? ?\"text\": {
? ? ? ? ? ?\"content\" : \"${DISPLAY_NAME}_iOS_${BUNDLE_SHORT_VERSION}構建成功!\n環境:Debug\n下載:蒲公英對應下載地址\n密碼:${PASSWORD}\n更新:${GIT_MESSAGE}\" ? ? ? ?}
? }"
curl '企業微信機器人地址' \ ? -H 'Content-Type: application/json' \ ? -d "$CURL_PSOT_DATA"

關于蒲公英部分和企業微信部分,可以去蒲公英官網和企業微信中查看對應的API。

三、立即構建

立即構建.png

點擊立即構建,就可以完成iOS項目的自動構建了。

四、多分支多環境打包配置

1、參數化構建:

參數化構建.png

按照上圖方式配置完后,需要在shell腳本中對以下進行修改:

xcodebuild clean -target "${APP_NAME}" -configuration '${bulidEnvironment}'

xcodebuild archive -workspace "${APP_NAME}.xcworkspace" -scheme "${SCHEME_NAME}" -configuration "${bulidEnvironment}" -arch arm64 -archivePath "${ARCHIVE_PATH}"

源碼管理里的分支應該填對用的git參數名稱:

源碼管理.png

配置完成后,立即構建按鈕就會變成這樣:

構建.png

點進去選擇對用的分支和參數進行構建:

多參數構建.png

總結

以上是生活随笔為你收集整理的ios 自动打包命令_【实践】iOS使用Jenkins实现自动化打包并上传蒲公英的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。