我们有一个macOS Xcode项目,它是由Bamboo CI触发的脚本构建的。最近,我们的构建最近开始失败了这条消息:
没有证书匹配'证书名称'对于团队'团队ID':选择一个 CODE_SIGN_IDENTITY的不同签名证书,一个团队 匹配您选择的证书,或切换到自动 供应
我们的项目使用手动代码签名,我们的构建命令如下:
xcodebuild -project ProjectName -target TargetName -configuration Release
CODE_SIGN_IDENTITY="Certificate Name" APP_VERSION="major.minor"
REVISION_NUMBER="build" CONFIGURATION_BUILD_DIR="output directory"
DEVELOPMENT_TEAM=${developmentTeam}
在构建脚本中运行此指令后,构建将在Check Dependencies步骤中失败并显示上述错误消息。
在本地运行构建脚本,并且构建成功完成。这表示Bamboo无法查看签名证书。我应该怎么做才能使相关证书对Bamboo可见?
我确认了以下内容:
注意:从昨天(9月11日)开始构建成功,但这些来自不同的Bamboo计划分支。我现在正在建立的分支和之前成功的分支之间有几个代码更改,但没有涉及我正在构建的项目。
答案 0 :(得分:2)
原来这是我的错误。
竹子代理是从ssh提示符启动的,导致它由于某种原因无法看到证书,即使我是以本地用户身份登录(类似于this问题)。停止Bamboo代理,然后从构建服务器上的本地终端重新启动它,导致bamboo代理再次查看证书,并构建成功完成。
如果其他人遇到此问题并发现此解决方案有用,我将其留在这里。