jenkins 构建 iOS 项目错误关于 'no certificat matching .....'

jenkins build iOS project error about 'no certificat matching .....'

我的 jenkins 通过 xcode-plugin 构建 iOS 项目。

jenkins 和 xcode7 构建项目没问题,但是 xcode8 错误:

我的项目配置:

我曾尝试使用此配置在 xcode 上存档项目(调试),一切正常。

但是 jenkind 构建失败了!!

接下来我将此配置更改为:Automatically manage signing

jenkins 构建错误:

有人遇到过这样的问题吗? 我该如何解决?

Keychain 和 Provisioning Profile 必须可以在构建节点上访问。 This Jenkins plugin 帮助您将钥匙串和配置文件复制到构建节点。它还会创建变量,以便稍后在您的 Jenkins 作业中访问它们。


我们观察到此插件在 运行 Windows 和 OS 的 (Jenkins) 服务器上存在问题。 IE。它将路径中的斜线和反斜线弄错,导致路径无法找到。

在这种情况下,您必须将包含您的证书的钥匙串复制到您的构建节点,并在您的构建命令中指定它。在使用钥匙串之前,先解锁它:

security unlock-keychain -p "keychain_password" "/path/to/MyKeychain.keychain"

还有配置文件。将您的个人资料签入到 git 可能会有所帮助。这样你就可以将你的(全局)keyChain 存储在节点上,并且可以在你的 repo 中访问你的(项目特定的)Provisioning Profile,你的任何解决方案(例如 xcodebuild 脚本)通常适用于所有作业,只要配置文件路径被通用化对于所有项目(例如:provisioning_profiles/Release/profile.mobileprovisioning)。

在这种情况下,我更喜欢 xcodebuild 而不是 Xcode Jenkins 插件。

我正在研究

因为jenkins没有权限得到identity,jenkins日志:

security find-identity -p codesigning -v
0 valid identities found

我在 tomcat 中的 Jenkins 配置,以及 LaunchAgents 的 tomcat 自动 运行, 但是我的 auto config plist/Library/LaunchAgents 和 运行 tomcat 系统中,没有获得 identity

的权限

所以让auto config plist~/Library/LaunchAgents,和运行tomcat由用户,詹金斯得到所有identity