在 Jenkins 中运行 XCodeBuild 时出现代码签名错误

2024-01-10

[不重复类似的问题,如下文进一步解释]

从 Jenkins 中运行 XCodeBuild 时出现代码签名错误,但它可以从命令行或 Xcode 中构建正常。

过去有几个人遇到过这个问题,他们的共同主题是 Jenkins 在启动时作为守护程序用户运行,从而尝试访问系统钥匙串。 人们应用的解决方案是将凭据复制到系统钥匙串或运行命令来设置要使用的钥匙串。

然而,就我而言,如果我在活动管理器中查看 launchd,该用户将显示为我登录到计算机的用户,因此 Jenkins 应该作为该用户运行,而不是作为守护程序用户运行。

我尝试在运行 XCodeBuild 之前将此命令添加到 Jenkins 脚本中来设置要使用的钥匙串

security list-keychains -s /Users/[user]/Library/Keychains/login.keychain

但这并没有解决问题。

我收到的错误是:

Code Sign error: The identity 'iPhone Developer: NNNNN (9TYX5WAM63)' doesn't match any valid, non-expired certificate/private key pair in your keychains"

因此,我尝试将凭据移至系统钥匙串,但现在在 Jenkins 中出现此错误,但从命令行仍然可以正常运行:

Code Sign error: Provisioning profile 'F152C66E-B99A-47F6-B262-376CE4403D71' can't be found

此外,当我将凭据移至系统钥匙串时,我无法再从 XCOde 内进行构建 - 我收到与上面的顶部错误消息相同的错误。

我还尝试编辑 org.jenkins-ci.plist 文件以将用户设置为我登录计算机的用户,根据此,但这也没有效果。

使用 Jenkins/Hudson 作为 iOS 和 Mac 开发的持续集成时,钥匙串中缺少证书和密钥 https://stackoverflow.com/questions/6827874/missing-certificates-and-keys-in-the-keychain-while-using-jenkins-hudson-as-cont/9482707#9482707

有什么想法我接下来可以尝试吗?


我对你有同感,因为上次我们搞砸了这个问题,这是一个很大的挑战。当我们为项目设置 CI 服务器时,我们这样做了。如果我没记错的话(大致)我们遵循了以下步骤:

1) 将 Jenkins 设置为 Apple Dev 帐户的开发人员

2)专门为 Jenkins 创建了证书和开发配置文件

3) 在 CI 服务器上设置 Jenkins 用户,并从 xcode 中删除该用户之前的任何证书/prov 配置文件

4) 将 Jenkins 证书添加到 AD-Hoc Dist 配置文件中(如果您尝试将 .ipa 分发到 HockeyApp,则需要将此文件用于存档构建。)

5) 进入 xcode 项目文件并删除对 Provisioning Profiles 的任何现有引用

6) 下载并安装该用户的证书以及适当的 Prov 配置文件。

7) 在构建之前解锁 Jenkins 用户钥匙串。仅当 Jenkins 用户不是运行 xcode 构建的用户时才执行此操作。

以 Jenkins 用户身份登录时,验证 Xcode 是否在管理器中显示 Prov 配置文件有效。

我知道我的答案有些模糊,我的目的是提供帮助。此类错误通常是由以下三种情况之一引起的。 Xcode 无法找到配置文件,Xcode 无法找到证书,或者 Xcode 找到多个配置文件(应该会产生不同的错误,但并不总是如此)并且存在某种不匹配。通常重做 Prov 配置文件是最不痛苦的解决方案。

祝你好运。你会解决它的,这只是一个巨大的头痛!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Jenkins 中运行 XCodeBuild 时出现代码签名错误 的相关文章

随机推荐

  • 配置服务时如何通过依赖注入在 Azure Function V3 中注入或使用 IConfiguration

    通常在 NET Core 项目中 我会创建一个 引导 类来配置我的服务以及 DI 注册命令 这通常是一个扩展方法IServiceCollection我可以在哪里调用类似的方法 AddCosmosDbService并且所有必要的东西都是包含该
  • System.Web.Razor API 文档 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 此类型 成员支持 NET Framework 基础结构 并且不适合直接在代码中使用 谁能说出以下事实 System Web Razor http
  • 使用 Python 打开 Outlook

    我正在尝试使用 Python 打开 Outlook 但我得到了这个 import win32com client ol win32com client Dispatch outlook Application 它会打开 Outlook 但我
  • NgModule 中的声明、提供者和导入之间有什么区别?

    我试图理解 Angular 有时称为 Angular2 然后我遇到了 Module Imports 声明 供应商 下列的角度快速入门 https angular io guide quickstart 角度概念 imports使其他模块的导
  • PHP:从 javascript 重新加载验证码图像

    我有一个 PHP 中的用户注册表单 我将验证码图像检查放在页面中 我像这样使用它 img src captcha php alt Enter this text in the adjacent text box 在我的 javascript
  • 在 SQLite LIKE 中转义通配符 (%, _) 而不牺牲索引使用?

    我在 SQLite 查询方面遇到了一些问题 实际上我开始认为 SQLite 不是为超过 10 行的表设计的 真的 SQLite 是一场噩梦 以下查询 SELECT FROM Table WHERE Name LIKE Text 效果很好 E
  • 在微服务架构中扩展数据库

    假设我们有 5 个微服务 S 每个微服务都需要一个包含一些表的数据库 这些服务中的每一个都需要能够扩展 包括数据库查询 为此 据我所知 我们有几个选择 1 1 S 1 个实例 1 个数据库实例 不要水平缩放 只垂直缩放 2 1 S N 个实
  • 我可以为 Travis YAML 配置命令创建 ALIAS 吗? ...“travis 加密 GITHUB_TOKEN=****** --add”?

    我有一个个人访问令牌来自我在许多项目中使用的 Github 由于令牌对我的所有存储库都具有读 写能力 因此我使用Travis 命令行工具 https github com travis ci travis rb readme来加密GITHU
  • Django:检查是否设置了外键属性

    我有以下模型 class A models Model name models CharField max length 50 content type models ForeignKey ContentType 该模型应该是某些继承树中的
  • XML 命名空间和 XPath

    我有一个应用程序 必须根据 XPath 加载 XML 文档和输出节点 假设我从这样的文档开始
  • 空间索引减慢查询速度

    背景 我有一个包含代表客户区域的 POLYGONS MULTIPOLYGONS 的表 该表包含大约 8 000 行 大约 90 的多边形是圆形 其余的多边形代表一个或多个州 省或其他地理区域 这些形状的原始多边形数据是从美国人口普查数据 h
  • 实例化后模板的特化?

    我的完整代码太长 但这里有一个片段可以反映我的问题的本质 class BPCFGParser public class Edge class ActiveEquivClass class PassiveEquivClass struct E
  • 查看 RadioButtonList 是否具有选定值的最佳方法是什么?

    我在用 if RadioButtonList VolunteerType SelectedItem null 或者怎么样 if RadioButtonList VolunteerType Index gt 0 或者怎么样 根据安德鲁 黑尔的
  • tomcat请求的资源()不可用[重复]

    这个问题在这里已经有答案了 我知道这是一个非常常见的问题 因为我在几个论坛中发现了许多与此相关的问题 包括SO 但我还没有找到解决办法 我的 web xml 位于 WEB INF 中
  • 使用下拉列表过滤表(dataTables)

    我正在使用 dataTables jQuery 插件 非常棒 但我无法根据选择框的更改来过滤我的表 功能 document ready function msds table dataTable sPaginationType full n
  • 即使启用了 SSL,Request.URL 也始终返回 http

    我准备了一个 ASP NET Web 应用程序 ASP NET V2 0 并在我的 IIS V7 5 中配置了它 我在我的应用程序中使用了Request Url AbsoluteUri 它在我的服务器中运行良好 我在客户端的服务器计算机 2
  • 找到重叠圆圈的新位置

    我正在尝试编写一个代码 对于给定的圆列表 list1 它能够找到新圆 list2 的位置 list1 和 list2 具有相同的长度 因为对于 list1 中的每个圆 都必须有一个来自 list2 的圆 每对圆 假设 list1 中的 Ci
  • 从插件添加自定义页面模板

    我正在努力构建我的第一个 WordPress 插件 并且需要它为登录屏幕动态添加自定义页面等 我能找到的唯一接近我需要的东西就在这里 WP 使用插件目录中的文件作为自定义页面模板 https stackoverflow com questi
  • 单线程 JavaScript 下的动画

    JavaScript 是一种单线程语言 因此它一次执行一个命令 异步编程是通过以下方式实现的Web APIs 用于事件处理的 DOM 用于 AJAX 调用的 XMLHttpRequest 用于 setTimeout 的 WindowTime
  • 在 Jenkins 中运行 XCodeBuild 时出现代码签名错误

    不重复类似的问题 如下文进一步解释 从 Jenkins 中运行 XCodeBuild 时出现代码签名错误 但它可以从命令行或 Xcode 中构建正常 过去有几个人遇到过这个问题 他们的共同主题是 Jenkins 在启动时作为守护程序用户运行