我有一个构建和script适用于MacOS的应用程序中捆绑codesign
。当我从用户的配置文件运行时,应用程序正确进行了签名,我可以在其他计算机上安装它。
所使用的命令是codesign -s <identity> -v <path>
,其中同一性是通过security find-identity -v -p codesigning
发现
但是,当我从cronjob
运行相同的脚本,我得到了一个错误
error: The specified item could not be found in the keychain.
它是如何可能签署从的cronjob应用?
一个解决方案可以是创建与代码签名证书的单独的钥匙串并通过钥匙串路径作为参数传递给协同设计为:
codesign -s < identity> --keychain < keychain path> -v < path>
从cronjob
改为launchd
和codesign -s < identity> --keychain < keychain path> -v < path>
是OK
从登录钥匙串到系统钥匙串移动签名证书。