源版本示例,包含 Amazon CodeBuild - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

源版本示例,包含 Amazon CodeBuild

此示例演示如何使用提交 ID 以外的格式(也称为提交 SHA)指定源的版本。您可以通过以下方式指定源的版本:

  • 对于 Amazon S3 源提供商,请使用表示构建输入 ZIP 文件的对象的版本 ID。

  • 对于 CodeCommit Bitbucket 和 E GitHub nterprise Server,请使用以下任一选项: GitHub

    • 拉取请求作为拉取请求参考(例如,refs/pull/1/head)。

    • 分支作为分支名称。

    • 提交 ID。

    • 标签。

    • 参考和提交 ID。参考可以是下列项之一:

      • 标签(例如,refs/tags/mytagv1.0^{full-commit-SHA})。

      • 分支(例如,refs/heads/mydevbranch^{full-commit-SHA})。

      • 拉取请求(例如,refs/pull/1/head^{full-commit-SHA})。

注意

只有当您的存储库是 GitHub 或 E GitHub nterprise Server 时,您才能指定拉取请求源的版本。

如果使用参考和提交 ID 指定版本,则构建的 DOWNLOAD_SOURCE 阶段比仅提供版本时更快。这是因为添加引用时, CodeBuild 无需下载整个存储库即可找到提交。

  • 可以仅使用提交 ID 指定源版本,例如 12345678901234567890123467890123456789。如果执行此操作,则 CodeBuild 必须下载整个存储库才能找到版本。

  • 您可以按此格式使用参考和提交 ID 指定源版本:refs/heads/branchname^{full-commit-SHA}(例如 refs/heads/main^{12345678901234567890123467890123456789})。如果执行此操作,则仅 CodeBuild 下载指定的分支以查找版本。

注意

为了加快构建DOWNLOAD_SOURCE阶段,您还可以将 Git 克隆深度设置为较低的数字。 CodeBuild 下载存储库的版本更少。

使用提交 ID 指定 GitHub 存储库版本
  1. 打开 Amazon CodeBuild 控制台,网址为 https://console.aws.amazon.com/codesuite/codebuild/home

  2. 创建构建项目。有关信息,请参阅创建构建项目(控制台)运行构建(控制台)。除这些设置以外,将所有设置保留为默认值:

    • 中:

      • 对于源提供商,请选择GitHub。如果您未连接到 GitHub,请按照说明进行连接。

      • 对于存储库,选择公共存储库

      • 对于存储库 URL,输入 https://github.com/aws/aws-sdk-ruby.git

    • 环境中:

      • 对于环境映像,选择托管映像

      • 对于操作系统,选择 Amazon Linux 2

      • 对于运行时,选择标准

      • 对于映像,选择 aws/codebuild/amazonlinux2-x86_64-standard:4.0

  3. 对于构建规范,选择插入构建命令,然后选择切换到编辑器

  4. 构建命令中,将占位符文本替换为以下内容:

    version: 0.2 phases: install: runtime-versions: ruby: 2.6 build: commands: - echo $CODEBUILD_RESOLVED_SOURCE_VERSION

    在使用 Ubuntu 标准映像 2.0 时需要 runtime-versions 部分。这里指定了 Ruby 版本 2.6 运行时,但您可以使用任何运行时。echo 命令显示存储在 CODEBUILD_RESOLVED_SOURCE_VERSION 环境变量中的源代码的版本。

  5. 构建配置上,接受默认值,然后选择开始构建

  6. 对于源版本,请输入 046e8b67481d53bdc86c3f6affdd5d1afae6d369。这是 https://github.com/aws/aws-sdk-ruby.git 存储库中提交的 SHA。

  7. 选择开始构建

  8. 在构建完成后,您应该看到以下内容:

    • 构建日志选项卡上,使用了哪个版本的项目源。下面是一个例子。

      [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 046e8b67481d53bdc86c3f6affdd5d1afae6d369 [Container] Date Time Phase complete: BUILD State: SUCCEEDED
    • 环境变量选项卡上,解析的源版本与用于创建构建的提交 ID 匹配。

    • 阶段详细信息选项卡上,显示 DOWNLOAD_SOURCE 阶段的持续时间。

这些步骤说明如何使用相同版本的源创建构建。这一次,使用参考和提交 ID 指定源的版本。

使用提交 ID 和引用来指定 GitHub 存储库版本
  1. 在左侧导航窗格中,选择构建项目,然后选择您之前创建的项目。

  2. 选择开始构建

  3. 源版本中,输入 refs/heads/main^{046e8b67481d53bdc86c3f6affdd5d1afae6d369}。这是相同的提交 ID 以及格式为 refs/heads/branchname^{full-commit-SHA} 的分支参考。

  4. 选择开始构建

  5. 在构建完成后,您应该看到以下内容:

    • 构建日志选项卡上,使用了哪个版本的项目源。下面是一个例子。

      [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 046e8b67481d53bdc86c3f6affdd5d1afae6d369 [Container] Date Time Phase complete: BUILD State: SUCCEEDED
    • 环境变量选项卡上,解析的源版本与用于创建构建的提交 ID 匹配。

    • 阶段详细信息选项卡上,DOWNLOAD_SOURCE 阶段的持续时间应短于仅使用提交 ID 指定源版本时的持续时间。