问题:在macOS平台上通过Jenkins远程打包报错,提示errSecInternalComponent
原因
出现这个问题的主要原因:Jenkins以ssh方式到slave机上,默认是没有账户的,但是访问钥匙串要求必须有用户身份
通过Xcode打包的过程中,的确是要求输入登录密码,之后才打包成功的。
通过xcode打包成功之后,再使用shell脚本直接打包,也还需要输入登录密码才能打包成功
解决步骤
bash
# 由于login.keychain-db文件不能直接使用
# 复制一份钥匙串,并重命名为login.keychain
cd ~/Library/Keychains
cp login.keychain-db login.keychain
security unlock-keychain -p "钥匙串登录密码" ~/Library/Keychains/login.keychain