google-cloud-build - 谷歌云构建:在谷歌云存储库上克隆私有存储库失败
问题描述
我们正在使用 Google Cloud Build 测试 Google Cloud Repositories。
我们创建了一个基本的 cloudbuild.yaml 并开始构建本身(我们正在使用 Go)。
我们的 Go 程序有一些导入在同一个存储库中(托管在 Google Cloud Repositories 上),例如:
- 源/存储库
- main.go(已导入 source.developers.com/repository/subpackage)
- 分包/
在包本身中,我们有 source.developers.google.com 上的导入路径。当 Go 尝试克隆存储库时(运行 go get 时,由于缺少凭据而失败:
步骤#0:克隆到'/workspace/gopath/src/source.developers.google.com/ourrepository'...
步骤#0:致命:无法读取
' https://source.developers.google.com的用户名':终端提示已禁用
步骤#0:包source.developers.google.com/subpackage:退出状态128 [...]错误:构建步骤 0“gcr.io/cloud-builders/go”失败:退出状态 1
云构建帐户已经可以访问存储库,并且可以克隆它。
我们如何使用 Google Build 克隆存储库?
解决方案
我认为您需要创建一个包含 git 的 docker 容器(ubuntu 容器),并在该容器中使用 ssh 密钥克隆您的存储库,在您将容器与代码存储库链接后。然后你把那个 conyainer 推到你项目中的 gcr 上。接下来,在您的 cloudbuild.yaml 中,您使用您推送的那个容器,通过 ssh url 克隆 repo。
推荐阅读
- javascript - 主进程发生 JavaScript 错误 | 错误:读取 ECONNRESET
- javascript - Electron / module ws在本地构建中工作,在发布构建中找不到
- calendar - 作业计划程序作业分配/日历事件/日历事件分配未显示在资源日历上且在移动设备上不可见
- excel - 从 Lotus Notes 电子邮件中删除签名 - VBA
- spring-boot - 如何在 ADFS 的 spring-security 中设置 RequestedAuthenticationContext?
- javascript - Javascript 导入导出和范围问题
- reactjs - 在具有规范化商店的 React 应用程序中在哪里查询状态?
- perl - 在 Moose 中,如何为另一个 rw 属性创建 rw 代理属性
- selenium - Robot Framework 无法找到正确的链接地址
- powershell - 检索 Powershell 脚本的 REST API 响应标头值