P5y*_*cH0 10 xcode keychain xcodebuild
我正在尝试打开某个钥匙串,并关闭另一个钥匙串.我需要这个,因为我们的企业和appstore身份被称为相同.
现在,我做一个"安全解锁钥匙串",然后是"安全默认钥匙串",打开正确的钥匙串,并在我不想使用的钥匙串上做一个"安全锁钥匙扣".
但xcodebuild仍然看到两个钥匙串中的条目并放弃.
iPhone Distribution: Company name.: ambiguous (matches "iPhone Distribution: Company name." in /Users/user/Library/Keychains/login.keychain and "iPhone Distribution: Company name" in /Users/user/Library/Keychains/enterprise.keychain)
Run Code Online (Sandbox Code Playgroud)
如何阻止系统查找我锁定的钥匙串中的条目?
您可以告诉Xcode使用哪个钥匙串:
xcodebuild "OTHER_CODE_SIGN_FLAGS=--keychain '$PATH_TO_KEYCHAIN'"
Run Code Online (Sandbox Code Playgroud)
或者,如果您codesign直接致电:
codesign --keychain "$PATH_TO_KEYCHAIN"
Run Code Online (Sandbox Code Playgroud)
如果您使用PackageApplication,则无法设置此项.但是,PackageApplication是一个非常简单的脚本,必要时可以重新实现(如果要与更大的系统/脚本集成,则非常有用).
解决方案:我已将所有与应用程序商店相关的内容放入登录钥匙串中,并将企业内容放入单独的钥匙串文件中。
在构建脚本中,我按如下方式在它们之间切换:
# 1. Only activate the System and either the Appstore(=login) or Enterprise keychain.
security list-keychains -s $KEYCHAIN_NAME $SYSTEM_KEYCHAIN
# 2. Loop through App Schema's
for APP_SCHEME in ${APP_SCHEMES[@]}; do
echo "--= Processing $APP_SCHEME =--"
xcodebuild -scheme "${APP_SCHEME}" archive
done ### Looping through App Schema's
# 3. Restore login & system keychains
security list-keychains -s $APPSTORE_KEYCHAIN $ENTERPRISE_KEYCHAIN $SYSTEM_KEYCHAIN
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4717 次 |
| 最近记录: |