【问题标题】:Bitrise & SPM - How to build private SPM dependencies with Bitrise?Bitrise & SPM - 如何使用 Bitrise 构建私有 SPM 依赖项?
【发布时间】:2021-03-15 10:50:56
【问题描述】:
我们有
- xcode 项目几乎没有 swift-package-manager 依赖项,但其中一个依赖项托管在 Gitlab 私有仓库上
- 用于构建和交付我们的应用的快速通道
- bitrise 即 CI 服务
在本地机器上一切正常 - Xcode 只要求填写 Gitlab 的身份验证信息(登录/访问令牌),然后依赖关系图解析,我们可以构建我们的项目。
但 Bitrise 在体育馆舞台上失败,错误如下 =(
xcodebuild:错误:无法解析包依赖项:
身份验证失败,因为没有提供凭据。
如何验证 Gitlab 帐户以便 Bitrise 处理健身房阶段?
【问题讨论】:
标签:
xcode
gitlab
fastlane
swift-package-manager
bitrise
【解决方案1】:
过去一天我尝试了以下方法:
- 尝试将 Package.swift 中的依赖声明更改为 ssh 样式,例如
git@gitlab.com:CompanyName/PackageName.git(我以为xcodebuild可以建立ssh连接来获取私有依赖)
- 通过 ssh -T git@gitlab.com 检查 gitlab ssh 连接(连接正常)
- 尝试按照 Apple 的建议将 gitlab 主机添加到 ~/.ssh/known_hosts here
- 通过 ssh 连接到运行 Bitrise 构建以在运行时手动设置 ssh 设置
- 以不同的顺序调整这些方法
没有任何帮助。直到我尝试关注一个
工作流编辑器中有一个特殊的构建步骤,您可以在其中设置 gitlab 访问数据。在 SPM 解决阶段触发和有关丢失凭据的烦人错误消失之前设置此步骤。