0
我使用命令行工具(xcodebuild
)导出App档案。本质上,这是我运行的是什么:codesign --keychain被忽略
xcodebuild -workspace "${WORKSPACE_PATH}" \
-scheme "${SCHEME_NAME}" \
-archivePath "${PROJECT_ARCHIVE}" \
-configuration "${CONFIGURATION}" \
-sdk "${TARGET_SDK}" \
DEVELOPMENT_TEAM="XXXXXXXX" \
OTHER_CODE_SIGN_FLAGS="--keychain /Users/user/Library/Keychains/jenkins.keychain" \
archive
这是结果:因为codesign
忽略--keychain参数
Check dependencies
No signing certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID "XXXXXXX" with a private key was found.
Code signing is required for product type 'Application' in SDK 'iOS 10.2'
** ARCHIVE FAILED **
The following build commands failed:
Check dependencies
(1 failure)
$ echo $?
65
代码签名失败。现在这里是有趣的部分。我想要使用的钥匙串是jenkins.keychain-db
(如上所述)。这当然不起作用。这是我的钥匙串搜索列表:
$ security list-keychains
"/Users/user/Library/Keychains/login.keychain-db"
"/Library/Keychains/System.keychain"
显然jenkins.keychain-db
不存在,因为它应该是。如果我在搜索列表中添加jenkins.keychain-db
,它开始工作。
不幸的是,这不是我的解决方案,因为我确实有多个keychains具有相同的私钥和证书。这导致xcodebuild拿起第一个权利证书,它可以找到哪个将失败,因为钥匙串可能未解锁。
仅为什么从塞拉利昂? –