使用语义版本控制命名构建构件示例 - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用语义版本控制命名构建构件示例

此示例包含示例 buildspec 文件,演示如何指定在构建时创建的构件名称。在 buildspec 文件中指定的名称可以包含 Shell 命令和环境变量,以使其保持唯一。在 buildspec 文件中指定的名称将覆盖创建项目时在控制台中输入的名称。

如果构建多次,则使用在 buildspec 文件中指定的构件名称可以确保输出构件文件名的唯一性。例如,您可以使用在构建时插入构件名称的日期和时间戳。

要使用 buildspec 文件中的构件名称覆盖在控制台中输入的构件名称,请执行以下操作:

  1. 设置构建项目以使用 buildspec 文件中的构件名称覆盖相应的构件名称。

    • 如果您使用控制台创建您的构建项目,请选择启用语义版本控制。有关更多信息,请参阅创建构建项目(控制台)

    • 如果使用 Amazon CLI,请在传递overrideArtifactName给的 JSON 格式文件中将设置为 true。create-project有关更多信息,请参阅创建构建项目 (Amazon CLI)

    • 如果您使用 Amazon CodeBuild API,请在创建或更新项目或开始构建时在ProjectArtifacts对象上设置overrideArtifactName标志。

  2. 在 buildspec 文件中指定名称。使用以下示例 buildspec 文件作为指南。

此 Linux 示例演示如何指定包含构建创建日期的构件名称:

version: 0.2 phases: build: commands: - rspec HelloWorld_spec.rb artifacts: files: - '**/*' name: myname-$(date +%Y-%m-%d)

此 Linux 示例向您展示了如何指定使用 CodeBuild 环境变量的构件名称。有关更多信息,请参阅构建环境中的环境变量

version: 0.2 phases: build: commands: - rspec HelloWorld_spec.rb artifacts: files: - '**/*' name: myname-$AWS_REGION

此 Windows 示例演示如何指定包含构建创建日期和时间的构件名称:

version: 0.2 env: variables: TEST_ENV_VARIABLE: myArtifactName phases: build: commands: - cd samples/helloworld - dotnet restore - dotnet run artifacts: files: - '**/*' name: $Env:TEST_ENV_VARIABLE-$(Get-Date -UFormat "%Y%m%d-%H%M%S")

此 Windows 示例向您展示了如何使用在 buildspec 文件中声明的变量和 CodeBuild 环境变量来指定构件名称。有关更多信息,请参阅构建环境中的环境变量

version: 0.2 env: variables: TEST_ENV_VARIABLE: myArtifactName phases: build: commands: - cd samples/helloworld - dotnet restore - dotnet run artifacts: files: - '**/*' name: $Env:TEST_ENV_VARIABLE-$Env:AWS_REGION

有关更多信息,请参阅的构建规范参考 CodeBuild