无法触发构建:无法读取提交

问题描述 投票:0回答:7

我使用云构建并与 bitbucket 连接。触发器已经在一些版本中使用过。 但突然间,我收到了屏幕截图中所示的错误。我不知道。 是什么意思?

google-cloud-platform bitbucket google-cloud-build google-cloud-source-repos
7个回答
1
投票

我也遇到同样的错误:

Failed to trigger build: Couldn't read commit

当我创建触发器配置 .yaml 文件时,我在触发器模板中放置了不同的项目 ID。如果有人偶然发现这个问题,请确保您放置的项目 ID 与存储库的项目 ID 相同。请参阅以下内容:

triggerTemplate:
  branchName: ^BRANCH_NAME$
  projectId: PROJECT_ID_OF_THE_SOURCE_REPO_BRANCH
  repoName: SOURCE_REPO_NAME

请参阅此处的文档:


1
投票

对我来说,分支名称中包含正则表达式。所以当我使用

^feature/cloudbuild$
而不是
feature/cloudbuild
时,错误并没有出现。


1
投票

我的存储库 URI 错误(

https://source.developers.google.com/$(PROJECT)/$(REPO)
而不是
https://source.developers.google.com/p/$(PROJECT)/r/$(REPO)

我通过手动重新创建触发器并比较导出发现了问题

gcloud alpha builds triggers export $(TRIGGERNAME) --destination=trigger.yaml

0
投票

Cloud Build 连接到 bitbucket 存储库存在限制问题。它只允许来自 Cloud Build 的每个存储库有一个连接。请检查您是否有更多与该存储库的连接?请删除重复项,然后重试


0
投票

尝试在 GCP 中启用云构建 api(服务:cloudbuild.googleapis.com)(如果不这样做,则会出现此错误) 这是云构建 API: https://cloud.google.com/build/docs/api/reference/rest

以下是如何启用 api https://cloud.google.com/apis/docs/getting-started#enabling_apis


0
投票

我也观察到同样的错误(

Couldn't read commit
)。解决方案是更新云构建服务帐户权限。

首先,我们必须通过导航到“云构建”->“设置”来识别云构建中使用的服务帐户。 然后,我们可以将所需的权限添加到 IAM 部分中的 SA。就我而言,SA 帐户中缺少 Cloud build

editor
角色。

请注意,这是云构建服务帐户,而不是触发器中使用的 SA。


0
投票

我遇到了同样的错误,在我的例子中,将 Bitbucket 与云存储库同步时出现错误。

因此,我建议您检查 GCP 内的云存储库,因为我们从外部 Git(例如 Bitbucket)在那里创建了一个镜像,它可能会同步失败。

就我而言,我删除了存储库并再次添加它,它起作用了。

© www.soinside.com 2019 - 2024. All rights reserved.