xcodebuild 8.2代码签名期间,Jenkins iOS在Mac Sierra上的构建失败(返回的SecKey API-25308)

xcodebuild 8.2代码签名期间,Jenkins iOS在Mac Sierra上的构建失败(返回的SecKey API-25308),jenkins,xcodebuild,codesign,Jenkins,Xcodebuild,Codesign,我在Mac Sierra上安装了Jenkins CI,使用Xcode 8.2和自动签名构建iOS应用程序。当使用Xcode作为开发人员构建时,所有这些都可以很好地工作。但是,Jenkins使用xcodebuild失败,原因如下: SecKey API returned: -25308, (null)/Users/Shared/Jenkins/Home/workspace/App/build/Build/Intermediates/ArchiveIntermediates/App/Installa

我在Mac Sierra上安装了Jenkins CI,使用Xcode 8.2和自动签名构建iOS应用程序。当使用Xcode作为开发人员构建时,所有这些都可以很好地工作。但是,Jenkins使用xcodebuild失败,原因如下:

SecKey API returned: -25308, (null)/Users/Shared/Jenkins/Home/workspace/App/build/Build/Intermediates/ArchiveIntermediates/App/InstallationBuildProductsLocation/Applications/App.app/Frameworks/GTMSessionFetcher.framework: unknown error -1=ffffffffffffffff
我听从了他的建议,但毫无结果

我曾尝试将私钥和证书放入系统密钥链中,但均无效

如果我以Jenkins用户的身份登录并手动运行codesign命令,我将“始终允许”访问钥匙链,并且它会反复工作。但是,由Jenkins CI调用的运行不会影响性能。(Jenkins master就是Mac,我正在使用同一台Mac来构建。)

错误是提到CocoaPod GTMSessionFetcher。这和椰子荚有关吗


任何想法都将不胜感激。

我遇到了完全相同的问题,我非常确定这与CoCoapod无关,这是一个代码设计问题。我做过的一些事情:

  • 检查我没有重复的钥匙链条目。这是有用的。结果我有一个条目被复制了

  • 检查所有应用程序是否允许使用私钥,如前所述

  • 请尝试(请注意,由于macOS Sierra登录,keychain已更改为登录.keychain db),这是您提到的建议中的第二个答案,但不起作用

  • 将私钥和证书都移动到系统密钥链(仅在登录密钥链上保留证书)。这最后一步是使事情顺利进行的一步

  • 如果这没有帮助,您可以尝试在Jenkins作业中手动解锁登录密钥链(这在我将密钥和证书移动到系统密钥链之前为我完成了这项工作):

    您可以使用以下方法检查钥匙链:

    $ security list-keychains
    

    我也遇到了同样的问题,我很确定这与CoCoapod无关,这是一个代码签名问题。我做过的一些事情:

  • 检查我没有重复的钥匙链条目。这是有用的。结果我有一个条目被复制了

  • 检查所有应用程序是否允许使用私钥,如前所述

  • 请尝试(请注意,由于macOS Sierra登录,keychain已更改为登录.keychain db),这是您提到的建议中的第二个答案,但不起作用

  • 将私钥和证书都移动到系统密钥链(仅在登录密钥链上保留证书)。这最后一步是使事情顺利进行的一步

  • 如果这没有帮助,您可以尝试在Jenkins作业中手动解锁登录密钥链(这在我将密钥和证书移动到系统密钥链之前为我完成了这项工作):

    您可以使用以下方法检查钥匙链:

    $ security list-keychains
    

    2.为我解决它=>协同设计-总是很有趣;-)最后,我得到了一个重复的证书。在删除所有证书并重新添加后,它再次工作!非常感谢所有这些提示…非常有用!2.为我解决它=>协同设计-总是很有趣;-)最后,我得到了一个重复的证书。在删除所有证书并重新添加后,它再次工作!非常感谢所有这些提示…非常有用!