source ~/.bash_profile
keychain-這里可能你進去看到只有l(wèi)ogin.keychain-db,復制一份然后去掉-db即可
security unlock-keychain -p 123456 ${HOME}/library/keychains/login.keychain
工程名-在xcode中查看PROJECT
APP_NAME="Runner"
target-在xcode中查看TARGETS
TARGET_NAME=“Runner”
證書
這里是鑰匙串中證書的顯示簡介-常用名稱
CODE_SIGN_DISTRIBUTION="Apple Development: *** (42K****6R7)"
這里是mobileprovision文件的UUID
provisoning_profile="e4***196-ff9f-4fcf-992c-5674*****678"
模式
CONFIGURATION="Release"
路徑 這個路徑要自己看/Users/你的電腦用戶名/.jenkins/workspace/下的荠割,你每建一個項目嗡官,構(gòu)建后都會在這下面創(chuàng)建對應的文件夾存放git clone下來的項目
WORKSPACE_PATH={APP_NAME}.xcworkspace
這個是導出ipa用的文件怎虫,用xcode導出一個對應模式的ipa就能獲取到献宫,把那個文件的路徑放這里
EXPORT_OPTIONS=/Users/ceshishiyong/Desktop/yc_supply_app/ExportOptions.plist
ArchivePath=/Users/cg/.jenkins/workspace/suIOS@tmp/
EXPORTIPA=/Users/cg/.jenkins/workspace/suIOS@tmp/
清空存放ipa的文件夾
cd ${EXPORTIPA}
rm -rf *
將指定文件的指定內(nèi)容替換掉pro/dev/test
這里是修改main_primary文件的指定內(nèi)容忽孽,切換環(huán)境
如下示例意思是硝皂,使用app5test.wit替換該文件的從app開始顷窒,到wit結(jié)束的指定字段
cd ${WORKSPACE}//lib/flavors
sed -i '' "s/app.*wit/app5test.wit/" main_primary.dart
flutter pub get
cd ${WORKSPACE}/
flutter pub get
build app蛙吏,里面的primary是前面的target
flutter build ipa --release
進入原生項目 archive和export
cd ${WORKSPACE}/ios/
pod install
導出achive,里面的primary是前面的target
xcodebuild archive -workspace {ArchivePath}runner.xcarchive
導出ipa
xcodebuild -exportArchive -archivePath {EXPORTIPA}runner -exportOptionsPlist ${EXPORT_OPTIONS}
echo "=================上傳到蒲公英分發(fā)平臺 ================="
curl -F "file=@{SCM_CHANGELOG}" https://www.pgyer.com/apiv2/app/upload
ipa重命名(這里重命名是因為上傳svn有統(tǒng)一的命名格式)
info.plist路徑
project_infoplist_path=${WORKSPACE}/ios/Runner/Info.plist
取版本號
bundleVersion={project_infoplist_path}")
取build值
bundleBuild={project_infoplist_path}")
獲取年月日時分
DATE="{EXPORTIPA}runner
拼接新名字
ipaReName={bundleBuild}-${DATE}.ipa
替換
mv zsh_supply.ipa ${ipaReName}
待提交文件
myFile=${ipaReName}
ipa文件地址
resource_dir={myFile}
echo "====================== ssh commit end ======================"