Jenkins iOS提交应用程序Crashlytics失败(使用Xcode Integration插件)

时间:2016-06-02 06:48:38

标签: ios xcode plugins jenkins crashlytics

Jenkins从git中获取我的源码并编译并生成一个构建工作正常。但是当我在Execute Shell中运行Crashlytics命令将构建提交给Crashlytics Beta时,它失败了。

我收到错误:

2016-06-02 13:52:05.232 submit Crashlytics: Crashlytics.framework/submit  
1.3.5 (17)

2016-06-02 13:52:07.405 submit Crashlytics: Unable to package source due to 
error: Error Domain=CLSIPABuilderErrorDomain Code=-6 "(null)" UserInfo= 
{UnderlyingError=Error Domain=CLSCodeSignerErrorDomain Code=-2 "(null)" 
UserInfo={arguments=(
"--sign",
B0DC1AA9228E7CB89E7ACE1576AEF3B1EC166012,
"--all-architectures",
"--force",
"--entitlements",

"/var/folders/k5/656qxxbs6854_mdjb53j2gp80000gn/T/com.crashlytics.ipas/991D8904-72CA-4B9C-A9D7-377F9D8420FF/Payload/entitlements.xml",
"/var/folders/k5/656qxxbs6854_mdjb53j2gp80000gn/T/com.crashlytics.ipas/991D8904-72CA-4B9C-A9D7-377F9D8420FF/Payload/elevenstreet.app"
), environment={
"CODESIGN_ALLOCATE" = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate";
}, status=1, stderr=B0DC1AA9228E7CB89E7ACE1576AEF3B1EC166012: no identity found
, command=/usr/bin/codesign, stdout=}, SourcePath=/var/folders/k5/656qxxbs6854_mdjb53j2gp80000gn/T/com.crashlytics.ipas/991D8904-72CA-4B9C-A9D7-377F9D8420FF}
2016-06-02 13:52:07.452 submit Crashlytics: Failed to prepare the binary for release

Build step 'Execute shell' marked build as failure
Archiving artifacts
Finished: FAILURE

Shell代码来自doc

不确定哪里出错了。请帮忙。

1 个答案:

答案 0 :(得分:1)

不更改钥匙串和分发证书上的任何内容,以及Jenkins和Xcode Integration插件上的设置,删除现有的Jenkins项目并创建一个新项目并重新分配所有设置,一切正常。 < / p>

需要注意的事项:

  • 确保拥有最新版本的Crashlytics和Fabrics框架。

  • 确保您的钥匙串中有分发证书。

  • 在Jenkins的Xcode Integration插件中,代码签名&amp; OS X钥匙串选项,确保您的代码签名标识是您的证书名称(确切地说是您的分发证书的名称),并且您可以将嵌入式配置文件留空它指向默认位置。

  • 勾选解锁钥匙串选项,它将展开其面板。确保钥匙串的路径正确。默认为/Users/jenkins/Library/Keychains/.keychain和密码。默认密码是您用于登录计算机的密码。

  • 最后,Crashlytics命令:

    ${WORKSPACE}/Pods/Crashlytics/Crashlytics.framework/submit <API Key> <Build Secret Key> -ipaPath ${WORKSPACE}/ipa-dir/<project_name>-${BUILD_ID}.ipa -emails <your_email>  -notifications YES