Jenkins iOS 提交应用程序 Crashlytics 失败(使用 Xcode 集成插件)
Jenkins iOS Submit app Crashlytics failed (with Xcode Integration plug-in)
Jenkins 从 git 获取我的源代码并编译并生成一个运行良好的构建。但是当我 运行 执行 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.
不确定哪里出错了。请帮忙。
在不更改钥匙串和分发证书以及 Jenkins 和 Xcode 集成插件上的任何设置的情况下,删除现有的 Jenkins 项目并创建一个新项目并重新分配所有设置和一切正常。
注意事项:
确保拥有最新版本的 Crashlytics 和 Fabrics 框架。
确保分发证书在您的钥匙串中。
在 Jenkins 中,在 Xcode 集成插件中,在 代码签名和 OS X 钥匙串选项 下,确保您的 Code Signing Identity 是您的证书名称(正是您的分发证书的名称),您可以将 Embedded Profile 留空以指向默认位置.
勾选解锁钥匙串选项,它会展开它的面板。确保钥匙串的路径是正确的。默认为 /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
Jenkins 从 git 获取我的源代码并编译并生成一个运行良好的构建。但是当我 运行 执行 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.
不确定哪里出错了。请帮忙。
在不更改钥匙串和分发证书以及 Jenkins 和 Xcode 集成插件上的任何设置的情况下,删除现有的 Jenkins 项目并创建一个新项目并重新分配所有设置和一切正常。
注意事项:
确保拥有最新版本的 Crashlytics 和 Fabrics 框架。
确保分发证书在您的钥匙串中。
在 Jenkins 中,在 Xcode 集成插件中,在 代码签名和 OS X 钥匙串选项 下,确保您的 Code Signing Identity 是您的证书名称(正是您的分发证书的名称),您可以将 Embedded Profile 留空以指向默认位置.
勾选解锁钥匙串选项,它会展开它的面板。确保钥匙串的路径是正确的。默认为 /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