Shell腳本自動打包ipa上傳測試

公司就我一個iOS開發(fā),感覺平時打包上傳都挺浪費(fèi)時間,也沒資源專門搞個CI。
so自己寫了個Shell腳本一鍵上傳測試包

#!/usr/bin/bash
# 工程名
PROJECT_NAME="工程名"
# scheme Name
SCHEME_NAME="scheme名稱"
# 證書
CODE_SIGN_DISTRIBUTION="iPhone Distribution: xxxx"
# info.plist路徑
INFO_PLIST_PATH="./${PROJECT_NAME}/Supporting Files/info.plist"
# 輸出ipa目錄
OUTPUT_IPA_DIR=~/Desktop/"${PROJECT_NAME}_IPA"
# 上傳ipa名稱
UPLOAD_IPA_NAME="${PROJECT_NAME}.ipa"

#創(chuàng)建輸出ipa文件夾
if [ ! -d "${OUTPUT_IPA_DIR}" ]; then
    mkdir "${OUTPUT_IPA_DIR}"
fi

#取版本號
echo "${INFO_PLIST_PATH}"
bundleShortVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleShortVersionString" "${INFO_PLIST_PATH}")

#取build值
bundleVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleVersion" "${INFO_PLIST_PATH}")

DATE="$(date +%Y%m%d)"
IPANAME="${PROJECT_NAME}_V${bundleShortVersion}_${DATE}.ipa"

# # //下面2行是沒有Cocopods的用法
# echo "=================clean================="
# xcodebuild -target "${PROJECT_NAME}"  -configuration 'Release' clean

# echo "+++++++++++++++++build+++++++++++++++++"
# xcodebuild -target "${PROJECT_NAME}" -sdk iphoneos -configuration 'Release' CODE_SIGN_IDENTITY="${CODE_SIGN_DISTRIBUTION}" SYMROOT='$(PWD)'

# //下面2行是集成有Cocopods的用法
echo "=================clean================="
xcodebuild -workspace "${PROJECT_NAME}.xcworkspace" -scheme "${PROJECT_NAME}"  -configuration 'Release' clean

echo "+++++++++++++++++build+++++++++++++++++"
xcodebuild -workspace "${PROJECT_NAME}.xcworkspace" -scheme "${SCHEME_NAME}" -sdk iphoneos -configuration 'Release' CODE_SIGN_IDENTITY="${CODE_SIGN_DISTRIBUTION}" SYMROOT='$(PWD)'

xcrun -sdk iphoneos PackageApplication "./Release-iphoneos/${SCHEME_NAME}.app" -o "${OUTPUT_IPA_DIR}/${IPANAME}"

#上傳測試
#服務(wù)器密碼
SER_PASSWORD="123456"

重命名
cp "${output_ipa_dir}/${IPANAME}" "${output_ipa_dir}/${UPLOAD_IPA_NAME}"

#上傳到自己服務(wù)器
expect -c "
spawn scp -P 18888 "${output_ipa_dir}/${UPLOAD_IPA_NAME}" ouer@10.8.11.11:/ouer/nginx/html/ad/packages/
expect {
\"*assword\" {set timeout 300; send \"${SER_PASSWORD}\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
expect eof"

#上傳到蒲公英
#蒲公英aipKey
APIKEY="15adaxxxxxxxxxxxxxxxxxxxxxxxxxx"
#蒲公英uKey
UKEY="745cxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

echo "--------蒲公英${output_ipa_dir}/${UPLOAD_IPA_NAME}---------"

curl -F "file=@${output_ipa_dir}/${UPLOAD_IPA_NAME}" \
-F "uKey=${UKEY}" \
-F "_api_key=${APIKEY}" \
https://www.pgyer.com/apiv1/app/upload

echo "\n\n"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,353評論 25 708
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,245評論 4 61
  • 以前聽朋友說過這本書,但也僅僅是簡單的看了幾頁,在這段時間里自己也抽空多看了一些,從而使自己對這本書的理解更...
    江上釣鱉客閱讀 227評論 0 1
  • 我不知從什么時候開始,我……愛上了他。雖然是那樣的平凡,但我卻不知為何喜歡他?他在班上很是受女生歡迎,所以他跟女性...
    迷茫初戀閱讀 142評論 1 1
  • 每個人來到世上,都想不枉此生吧? 可究竟怎么活,才能達(dá)到你要的狀態(tài),是值得商榷的。 在微課中,見識到一位浴火重生的...
    雨果的天空閱讀 172評論 0 2