【发布时间】:2018-04-10 08:45:37
【问题描述】:
我正在使用 Visual Studio 2017 (15.6.5) 并拥有一个基于 .NET 标准的 xamarin 解决方案,其中包含一个 android 和 iOS 项目。
我正在使用 Visual Studio Online CI 来(尝试)构建 iOS 应用程序。在开发中一切正常。我很满意我正确设置了证书、应用程序、设备和配置文件。
我无法在线使用 Visual Studio 进行构建。当我们得到 p12 证书导入到临时钥匙串的部分时,我得到了错误
安全性:SecKeychainItemImport:导入中的未知格式。
我正在使用 VSTS 提供的预览版 mac 代理。我在用 MSBuild 作为构建代理选项。我将 p12 证书存储为 blob 并使用 curl 下载。
运行命令时
/usr/bin/security create-keychain -p _xamariniostask_TmpKeychain_Pwd#1 /Users/vsts/agent/2.131.0/work/1/s/_xamariniostasktmp.keychain
/usr/bin/security set-keychain-settings -lut 7200 /Users/vsts/agent/2.131.0/work/1/s/_xamariniostasktmp.keychain
/usr/bin/security unlock-keychain -p _xamariniostask_TmpKeychain_Pwd#1 /Users/vsts/agent/2.131.0/work/1/s/_xamariniostasktmp.keychain
/usr/bin/security import /Users/vsts/agent/2.131.0/work/1/s/FILENAME.p12 -P PASSWORD -A -t cert -f pkcs12 -k /Users/vsts/agent/2.131.0/work/1/s/_xamariniostasktmp.keychain
在我的 mac 构建机器上,一切都很好。我难住了。
我猜
- 我没有正确导出证书,但它可以在构建机器上运行
- 通过 Internet 从 blob 存储或从 mac 上传和下载到 Windows(以便将其放入 blob 存储)会导致一些损坏?
- 与不在同一台机器上有关
有人可以帮忙吗?我不确定我使用哪种技术失败了?
我通过在“我的证书”中导出分发证书在 mac 上使用钥匙串访问创建 P12 证书,并尝试在苹果开发者门户上创建开发和分发证书。我已经导出了“父”证书和私钥。结果都一样。
【问题讨论】:
标签: ios xamarin azure-devops p12