从Xcode Bot部署到Crashlytics Beta服务

时间:2015-02-05 16:17:56

标签: ios xcode continuous-integration crashlytics xcode-bots

我正在尝试使用命令行部署方法,使用Xcode服务器上的Xcode Bot在后存档步骤中将iOS测试版上传到Crashlytics(Crashlytics.framework / submit)。

问题是Crashlytics似乎无法正确签署ipa文件。

根据他们的支持我需要解锁钥匙串。我尝试了以下但错误仍然存​​在:

  • security unlock-keychain -p the-password /Library/Keychains/System.keychain
  • 通过服务器GUI(钥匙串访问)解锁钥匙串
  • 运行安全列表 - 密钥链仅列出/Library/Keychains/System.keychain,并导入证书和私钥并将其存在于该密钥链中。

错误:

2015-02-04 10:43:06.247 submit Crashlytics: Crashlytics.framework/submit 1.3.1 (11)
2015-02-04 10:43:06.981 submit Crashlytics: Unable to find a certificate with a private key: Error Domain=CLSProvisioningProfileErrorDomain Code=-1 "The operation couldn�t be completed. (CLSProvisioningProfileErrorDomain error -1.)" UserInfo=0x10020e250 {Details=iPhone Distribution: ****** (*****), SourcePath=/var/folders/rk/758w2bp12sq1lh5q5mrj598h000087/T/upload/Payload/our.bundle.id/embedded.mobileprovision}
2015-02-04 10:43:07.002 submit Crashlytics: Failed to prepare the binary for release
Error uploading to Crashlytics

也许这个问题与作为另一个名为_xsomething的用户运行的Xcode Bot有关?

1 个答案:

答案 0 :(得分:3)

我有同样的问题。你应该指向login.keychain。大多数情况下,您在login.keychain而非System.keychain中拥有凭据(证书和私钥)。请记住,钥匙串只是使用凭据加密的文件。你应该告诉post action action脚本(在Crashlytics/submit执行之后)哪个钥匙串应该使用。 您可以在此主题中找到更多信息: https://twittercommunity.com/t/problem-submitting-to-crashlytics-beta-from-xcode-server/31703

干杯!