【问题标题】:Accessing GitHub pull request details within AWS CodeBuild在 AWS CodeBuild 中访问 GitHub 拉取请求详细信息
【发布时间】:2019-07-03 00:15:43
【问题描述】:

为了在 CodeBuild 作业期间添加来自外部工具(例如 SonarCloud)的拉取请求检查,我需要提供 PR 详细信息 - 例如数字 PR 键、基本分支和比较分支。

我知道这些存在于 GitHub PR 网络挂钩中,但我无法在 CodeBuild 中访问它。

但是 CodeBuild 能够发回自己的构建检查,即如果构建失败则阻止合并,所以我知道这些详细信息必须可用。

如何从 CodeBuild“构建上下文”中访问它们?

【问题讨论】:

    标签: amazon-web-services github sonarqube continuous-integration aws-codebuild


    【解决方案1】:

    柯克,

    我们为 AWS CodeBuild 中的 webhook 构建添加了更多预配置的环境变量。

    CODEBUILD_WEBHOOK_EVENT:触发当前构建的 webhook 事件。

    CODEBUILD_WEBHOOK_HEAD_REF:触发构建的 webhook 事件的头部引用名称。它可以是分支引用或标签引用。

    CODEBUILD_WEBHOOK_BASE_REF:触发构建的 webhook 事件的基本引用名称。它是拉取请求的分支参考。

    CODEBUILD_WEBHOOK_ACTOR_ACCOUNT_ID:触发 webhook 事件的用户的账号 id

    这些是除https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html 中已记录的内容之外的内容。

    如果这还不够,请告诉我们。

    【讨论】:

    • 如果这些也可以在相应的 CloudWatch 活动中使用,那就太好了(请多多关照!)。此外,还可以将 CodeBuild 配置为使用 Git 分离头签出(按照现在)或使用分支进行克隆(然后在 CloudWatch 事件中提供分支信息)。关于如何解决缺少此信息的问题,这里有很多问题。
    【解决方案2】:

    his answer 中解释的变量 Subin Mathew 现在记录在链接的 AWS CodeBuild 文档中。它非常适合自动化(webhook 触发)构建。不幸的是,如果我们从 CodeBuild GUI 重试构建,这些变量似乎不可用。 或许可以利用 GitHub 操作而不是内置的 CodeBuild webhook 来获得更灵活和更高级的工作流程

    【讨论】:

      猜你喜欢
      • 2018-10-23
      • 1970-01-01
      • 2013-11-27
      • 1970-01-01
      • 1970-01-01
      • 2021-11-29
      • 2016-12-07
      • 1970-01-01
      • 2021-03-11
      相关资源
      最近更新 更多