程序员iOS开发技术分享

XcodeServer持续化集成进阶

2016-05-17  本文已影响823人  a2ebcc3676c1

上一篇文章中介绍介绍了Xcode Server的搭建过程,需要参考的同学请自行传送XcodeServer持续化集成。但是在实际工作当中,我们需要更加自动化的流程体验,让开发者从繁琐的测试、打包、发布平台中解放出来。Xcdoe Server提供的Triggers功能给我们带来了极大的便利,我们只需添加自定义的脚本,基本上可以实现一键一条龙服务。

1、流程

2、细节

echo "测试版,上传到蒲公英"
IPA_NAME=$(basename "${XCS_ARCHIVE%.}".ipa)
IPA_PATH="${XCS_OUTPUT_DIR}/ExportedProduct/Apps/${IPA_NAME}"
curl -F "file=@${IPA_PATH}" -F "uKey=userkey" -F "_api_key=apikey" http://www.pgyer.com/apiv1/app/upload
- 正式版:选择生产证书,直接上传到AppStore,如果需要发布到TestFlight,需要登录iTunesConnect设置。
if ["$APP" = "RELEASE"];then
echo "正式版,上传到TestFlight"
altoolPath='/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Versions/A/Support/altool'
IPA_ARCHIVE=$(basename "${XCS_ARCHIVE%.
}".ipa)
IPA_ARCHIVE_PATH="${XCS_OUTPUT_DIR}/ExportedProduct/${IPA_ARCHIVE}"
"$altoolPath" --upload-app -f ${IPA_ARCHIVE_PATH} -u "username" -p "password"
- 上传到AppStore需要用到Altool这个工具,路径如下
/Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/altool
如果使用上面路径出现问题,请参考`正式版`代码。 - 如果出现下面报错
altool[] *** Error: Exception while launching iTunesTransporter: Transporter not found at path: /usr/local/itms/bin/iTMSTransporter. You should reinstall the application.
在终端输入下面代码即可 (修改/usr权限`sudo chmod -Rf 777 usr/*`)
ln -s /Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/itms /usr/local/itms
```
- Altools详细用法请参考Altools使用说明

有关Xcode Server 的更多用法,期待大家的交流。

上一篇下一篇

猜你喜欢

热点阅读