【问题标题】:How to trigger a Google Cloud Build job periodically from Google cloud scheduler如何从 Google 云调度程序定期触发 Google Cloud Build 作业
【发布时间】:2020-05-08 15:28:21
【问题描述】:

我在enter link description here之后配置了一个云计划作业

但是发现错误status: "INVALID_ARGUMENT"。不明白它是从哪里来的。任何解决此问题的建议,将不胜感激。

【问题讨论】:

  • 您可能想发布一些代码供我们查看。没有它,我们就无法诊断出问题所在。如果您使用 curl,请发布您正在运行的 curl 命令。如果它在脚本中,请发布脚本代码。
  • 没有代码。这是一个用于触发云构建作业的云调度器功能。
  • 嗯,我唯一能想到的就是项目 ID 是否不正确,或者 triggerId 是否拼写错误?仔细检查项目 ID 实际上是 ID 而不是项目名称? (我已经不止一次这样做了)
  • 嘿。如您所说,检查了项目ID。 -- https://cloudbuild.googleapis.com/v1/projects/xxxIDxxx/triggers/xxxxx-xxx-xxx-xxx-xxxx:run 问题依然存在。
  • 是的,这对我来说是正确的...让我戳一些队友,看看他们是否有想法。

标签: google-cloud-platform google-cloud-build google-cloud-scheduler


【解决方案1】:

您需要按照以下步骤触发:

1.- 创建一个新的Service Account 并向其中添加“Cloud Build Service Account”和“Cloud Scheduler Service Agent”角色。

2.- HTTP 方法应该是“post”。

3.- 您必须在正文字段中指定“repoName”和“branchName”。使用下面的例子。

{
  "repoName": "MyRepo",
  "branchName": "MyBranch"
}

4.- 选择“添加 OAuth 令牌”作为 Auth 标头。

5.-将创建的 SA 分配给要用于触发云构建作业的 Cloud Scheduler 作业。

6.-使用这个值“https://www.googleapis.com/auth/cloud-platform”作为Scope

完成这些更改后,您将能够执行触发器。

【讨论】:

  • 谢谢,现在可以使用了。我想我弄乱了 BODY 字段。
  • 谢谢,你知道正文 JSON 记录在哪里吗?
猜你喜欢
  • 2020-05-30
  • 2020-06-26
  • 2018-03-27
  • 1970-01-01
  • 2014-07-30
  • 1970-01-01
  • 2017-11-13
  • 2021-02-04
  • 2019-02-19
相关资源
最近更新 更多