当我使用“xcodebuild”命令从终端构建项目时我成功了,但是当我尝试从 cron 任务运行相同的脚本时我收到错误 “代码签名错误:身份 '****' 与默认钥匙串(keychain)中的任何有效证书/私钥对都不匹配”
我认为问题出在 crontab 实用程序的设置和权限上,似乎 crontab 没有看到我的钥匙串(keychain)
谁能给我提供终端命令如何让我的钥匙串(keychain)对 crontab 可见
最佳答案
我在尝试通过 cron 每晚构建时遇到了类似的问题。我找到的唯一解决方案是在/Library/LaunchDaemons/中创建一个 plist 并通过 launchctl 加载它。关键是“SessionCreate”,否则您将很快遇到与尝试使用 cron 时遇到的问题类似的问题——即您的用户 login.keychain 对进程不可用。 “SessionCreate”类似于“su -l”,因为(据我所知)它模拟登录,因此您期望的默认钥匙串(keychain)将可用;否则,尽管任务以您的用户身份运行,您仍然只能使用系统钥匙串(keychain)。
我在这里找到的答案(虽然不是目前的最佳答案)对解决这个问题很有用:Missing certificates and keys in the keychain while using Jenkins/Hudson as Continuous Integration for iOS and Mac development
关于从 cron 任务构建项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8634221/