问题:如何使用 Deliver 将 IPA 从在 Xcode 7 和 Server 4.1 上运行的 Bot 上传到 itunesconnect?
我已经能够使用 Xcode 6.4、使用机器人的 Server 4.1 和Deliver(通过 fastlane)建立一个持续集成解决方案。升级到 Xcode 7 beta-3 后,我的机器人停止工作。
以下是我为 Xcode 6.4 所做的简要概述:
- 在机器人设置中选择“执行存档操作”
- 从后触发器:echo
gem install --user-install deliver
#Run To Install Gem - 从后触发器:echo
export PATH=$PATH:/var/_xcsbuildd/.gem/ruby/2.0.0/bin
#Run 将宝石添加到路径 从后触发器:
echo `DELIVER_PASSWORD="Password" /var/_xcsbuildd/.gem/ruby/2.0.0/bin/deliver testflight "${IPA_PATH}" -a 101233338 -u example@gmail.com --beta`
一切都很好,每次集成后都会将构建上传到 itunesconnect。
当我升级到 Xcode 7 时,我不再能够使用 Deliver 上传到 itunesconnect。这是我的 Xcode 7 工作流程:
- 测试通过
- 存档成功
触发后 1:成功构建 IPA(使用此苹果开发人员帖子的推荐)
xcrun xcodebuild -exportArchive -archivePath $XCS_ARCHIVE -exportPath $XCS_ARCHIVE -exportOptionsPlist /Library/Developer/XcodeServer/ExportOptions.plist -IDEPostProgressNotifications=YES -DVTAllowServerCertificates=YES -DVTSigningCertificateSourceLogLevel=3 -DVTSigningCertificateManagerLogLevel=3 -DTDKProvisioningProfileExtraSearchPaths=/Library/Developer/XcodeServer/ProvisioningProfiles
尝试使用 Deliver 上传 IPA:
echo `DELIVER_PASSWORD="Password" /var/_xcsbuildd/.gem/ruby/2.0.0/bin/deliver testflight "${IPA_PATH}" -a 101233338 -u example@gmail.com --beta`
结果: 构建服务问题:终止 xcodebuild,因为它太长时间没有产生输出。 注意:我可以获取机器人生成的 IPA 并通过终端上传它们。
更新
Xcode 没有打印出所有日志,当我将输出重定向到一个文件时,看起来 Deliver 运行得很好
ESC[37m[12:03:08]: ESC[0mESC[32mReady to upload new build to TestFlight (CiTest - 1018099468)ESC[0m
ESC[37m[12:03:08]: ESC[0mUploading ipa file to iTunesConnect
ESC[37m[12:03:08]: ESC[0mGoing to upload updated app to iTunesConnect
ESC[37m[12:03:08]: ESC[0mESC[32mThis might take a few minutes, please don't interrupt the scriptESC[0m
ESC[37m[12:03:08]: ESC[0mESC[32mWaiting for iTunes Connect transporter to be finished.ESC[0m
ESC[37m[12:03:08]: ESC[0mESC[32miTunes Transporter progress... this might take a few minutes...ESC[0m
只是 xcode 服务器在交付完成之前转义了该过程。
追问:有没有其他人遇到过这个或类似的问题?