AWS Codebuild——当执行buildspec.yml时,如何读取提交上的标记



正如标题所述,我想知道提交SHA上是否有触发AWS代码构建的标记。

我在buildspec.yml文件中使用printenv查看了所有Env变量,AWS代码构建从git中捕获的似乎只有提交哈希。我想知道是否有一种简单的方法可以获得标签。

我在一个命令中将提交和标记推送到git:

git push origin <releaseBranch> : <version>

我在看github的webhook。这是我从CodeBuild得到的回复: {"response":"Webhook received and build started: https://us-west-2.console.aws.amazon.com/codebuild/<projectSpecificStuff>/view/new","statusCode":200}

在webhook的POST中,最上面的部分是: { "ref": "refs/tags/0.0.2", "before": "0000000000000000000000000000000000000000", "after": "6258048d01ca4aa18e7c27dac2d7a51ec5640421", "created": true, "deleted": false, "forced": false, "base_ref": "refs/heads/release-script", ... }

在撰写本文时,简短的答案是否定的。创建标记时,AWS Codebuild不支持的webhook。

我最初的问题是为了创建一个附带语义版本的简单构建系统。我通过创建一个分支过滤器和一个bash脚本来解决标记问题。

1( 我让我的分支过滤器 build-[0-9]+.[0-9]+.[0-9]+.

2( 我写了一个bash脚本:

  • 增加语义版本,从而触发repo中的更改
  • 将更改提交到我的任意部署分支。(master(
  • 创建一个新分支,其名称与上面的regex匹配,其中还包含版本。例如,build-0.2.11、build-1.2.3等
  • 删除新创建的分支

仅创建远程分支就会触发github将push-webhook发送到AWS。webhook中有分支的名称,您可以在代码构建脚本中使用该名称。 "ref": "refs/heads/build-0.2.11"

最新更新