git - AWS Codebuild - 执行 buildspec.yml 时如何读取提交上的标签?

标签 git amazon-web-services aws-codebuild

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

我在 buildspec.yml 文件中使用 printenv 查看了所有 Env 变量,似乎 AWS codebuild 从 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 中的更改。
  • 无论我的部署分支是什么,都将更改提交给我。 (大师)
  • 创建一个名称与上述正则表达式匹配的新分支,该分支还包含其中的版本。例如,build-0.2.11、build-1.2.3 等
  • 删除新创建的分支

  • 只是远程分支的创建将触发 github 将推送 webhook 触发到 AWS。 webhooks 中包含分支的名称,您可以在代码构建脚本中使用它。 "ref": "refs/heads/build-0.2.11"

    关于git - AWS Codebuild - 执行 buildspec.yml 时如何读取提交上的标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51566747/

    相关文章:

    amazon-web-services - AWS SAM - 如何处理大量端点

    amazon-web-services - aws codebuild/使用本地 redis(ubuntu 镜像)

    git - Gerrit 尝试配置简单的 rebase

    git 克隆 : I get a strange authentication error

    git - 如何在 Pycharm 中使用 gitignore?

    amazon-web-services - ECS集群: Getting tasks in different services to run on different EC2 instances

    python-3.x - 获取 Boto3 中具有特定标签和值的 EC2 实例列表

    amazon-web-services - 如何修复 EACCES : permission denied, 打开

    amazon-web-services - CodePipeline (AWS) 的 CodeBuild (AWS) 不工作

    windows - git checkout 错误 : unable to create file