一腺怯、Jenkins安裝
1.進入Jenkins的官網(wǎng)https://jenkins.io/index.html,然后下載并Jenkins war包
2.cd到j(luò)enkins.war的目錄嘉赎,終端運行命令?java -jar jenkins.war --httpPort=8080
3.然后可以按照http://www.cocoachina.com/ios/20170811/20218.html配置jenkins
4然后構(gòu)建的時候會報如下錯誤
error:exportArchive:"APPNAME.app"requires a provisioning profile with the Push Notifications feature.
Error Domain=IDEProvisioningErrorDomain Code=9""APPNAME.app" requires a provisioning profile with the Push Notifications feature."UserInfo={NSLocalizedDescription="APPNAME.app"requires a provisioning profile with the Push Notifications feature., NSLocalizedRecoverySuggestion=Add a profile to the"provisioningProfiles"dictionaryinyour Export Options property list.}
** EXPORT FAILED **
Failed to build /Users/Tolecen/.jenkins/workspace/APPNAME/build/APPNAME_release.ipa
Build step'Xcode'marked build as failure
Finished: FAILURE
因為 Xcode 9 默認不允許訪問鑰匙串的內(nèi)容,必須要設(shè)置 allowProvisioningUpdates 才會允許乓梨,但是由于 Xcode integration 插件封閉,并不能對其進行修改加上這個屬性,所以決定使用 Shell 腳本代替插件
xcodebuild -archivePath "$WORKSPACE/build/appName.xcarchive" -workspace $WORKSPACE/appName.xcworkspace -sdk iphoneos -scheme "appName" -configuration "Debug" archive
xcodebuild -exportArchive -archivePath "/Users/usename/.jenkins/workspace/mmfinance/build/Debug-iphoneos/appName.xcarchive" -exportPath "/Users/jorgon/.jenkins/workspace/appName/build/mmFinance_debug" -exportOptionsPlist '/Users/jorgon/.jenkins/workspace/mmfinance/build/ExportOptions.plist' -allowProvisioningUpdates
注意archivePath宝泵,workspace的地址要與自己項目的路徑匹配厨疙,可以打開jenkins的workspace目錄查看/Users/username/.jenkins/workspace
下面附上我的完成shell
#bin/bsah - l
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
cd $WORKSPACE/appname
/usr/local/bin/pod update --verbose --no-repo-update
# 設(shè)置版本號
/usr/libexec/PlistBuddy -c 'Set :CFBundleVersion '${VERSION_CODE} ${WORKSPACE}/appname/info.plist
/usr/libexec/PlistBuddy -c 'Set :CFBundleShortVersionString '${VERSION_NAME} ${WORKSPACE}/appname/info.plist
# clean
echo "================= Clean一下 ================="
xcodebuild clean? -workspace? $WORKSPACE/appname.xcworkspace \
-configuration "Debug" \
-scheme "appname" \
#-alltargets
echo "================= Clean一下 Over ================="
xcodebuild -archivePath "$WORKSPACE/build/Debug-iphoneos/appname.xcarchive" -workspace $WORKSPACE/appname.xcworkspace -sdk iphoneos -scheme "appname" -configuration "Debug" archive
xcodebuild -exportArchive -archivePath "/Users/username/.jenkins/workspace/appname/build/Debug-iphoneos/appname.xcarchive" -exportPath "/Users/jorgon/.jenkins/workspace/appname/build/mmFinance_debug" -exportOptionsPlist '/Users/jorgon/.jenkins/workspace/appname/build/ExportOptions.plist' -allowProvisioningUpdates
#蒲公英上的User Key
uKey="f4557f8d1d7dcaa885d3d0f865d7209"
#蒲公英上的API Key
apiKey="ddddb5c605442a472ae61728d4f643"
#要上傳的ipa文件路徑
IPA_PATH="${WORKSPACE}/build/mmFinance_debug/appname.ipa"
#密碼
PASSWORD=123456
MSG=`git log -1 --pretty=%B`
#執(zhí)行上傳至蒲公英的命令
echo "++++++++++++++upload+++++++++++++"
curl -F "file=@${IPA_PATH}" -F "uKey=${uKey}" -F "_api_key=${apiKey}" -F "updateDescription=${MSG}" -F "password=${PASSWORD}" http://www.pgyer.com/apiv1/app/upload
構(gòu)建后發(fā)送郵件配置
構(gòu)建后提示郵件發(fā)送成功可是沒收到郵件
不要勾選這兩項洲守,勾選了反而不能發(fā)送郵件了
參考鏈接:
http://www.cocoachina.com/ios/20170811/20218.html
http://blog.csdn.net/hou_manager/article/details/78201221?locationNum=10&fps=1
https://testerhome.com/topics/10154