使用源修订覆盖启动管道 - Amazon CodePipeline
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用源修订覆盖启动管道

您可以使用覆盖来启动一个管道,该管道具有您为管道执行提供的特定源修订 ID。假如您要启动一个管道,以处理来自您的 CodeCommit 源的特定提交 ID,则可以在启动管道时将提交 ID 作为覆盖添加。

注意

您还可以使用输入转换条目创建源覆盖,以便在管道事件中使用 EventBridge 中的 revisionValue,其中 revisionValue 源于您的对象密钥、提交或映像 ID 的源事件变量。有关更多信息,请参阅Amazon ECR 源操作和 EventBridge 资源连接到启用事件源的 Amazon S3 源操作CodeCommit 源操作和 EventBridge下的流程中包含的输入转换条目的可选步骤。

revisionType 有四种类型的源修订:

  • COMMIT_ID

  • IMAGE_DIGEST

  • S3_OBJECT_VERSION_ID

  • S3_OBJECT_KEY

注意

对于 COMMIT_IDIMAGE_DIGEST 类型的源修订,源修订 ID 适用于存储库中所有分支的所有内容。

注意

对于 S3_OBJECT_VERSION_IDS3_OBJECT_KEY 类型的源修订,可以单独使用其中任何一种类型,也可以一起使用,用特定的 ObjectKey 和 VersionID 来覆盖源。对于 S3_OBJECT_KEY,配置参数 AllowOverrideForS3ObjectKey 需要设置为 true。有关 S3 源配置参数的更多信息,请参阅 配置参数

使用源修订覆盖启动管道(控制台)

手动启动管道并通过管道运行最新的修订
  1. 通过以下网址登录 Amazon Web Services 管理控制台 并打开 CodePipeline 控制台:http://console.aws.amazon.com/codesuite/codepipeline/home

  2. 名称中,选择要启动的管道的名称。

  3. 在管道详细信息页中,选择发布更改。选择发布更改将打开发布更改窗口。对于源修订覆盖,请选择箭头以展开字段。在中,输入源修订 ID。例如,如果您的管道有 CodeCommit 源,请从要使用的字段中选择提交 ID。

    CodePipeline 中的覆盖屏幕示例。

使用源修订覆盖启动管道(CLI)

手动启动管道并通过管道运行构件的指定源修订 ID
  1. 打开终端(Linux、macOS 或 Unix)或命令提示符 (Windows),并使用 Amazon CLI 运行 start-pipeline-execution 命令,指定您要启动的管道的名称。还可以使用 --source-revisions 参数来提供源修订 ID。源修订由 actionName、revisionType 和 revisionValue 组成。有效的 revisionType 值为 COMMIT_ID | IMAGE_DIGEST | S3_OBJECT_VERSION_ID | S3_OBJECT_KEY

    在以下示例中,我们要通过一个名为 codecommit-pipeline 的管道,开始运行指定的更改。以下命令将指定一个名为 Source 的源操作、一个 COMMIT_ID 修订类型和一个 78a25c18755ccac3f2a9eec099dEXAMPLE 提交 ID。

    aws codepipeline start-pipeline-execution --name codecommit-pipeline --source-revisions actionName=Source,revisionType=COMMIT_ID,revisionValue=78a25c18755ccac3f2a9eec099dEXAMPLE --region us-west-1
  2. 要验证是否成功,请查看返回的对象。该命令将返回执行 ID,如下所示:

    { "pipelineExecutionId": "c53dbd42-This-Is-An-Example" }
    注意

    在启动管道后,您可以在 CodePipeline 控制台中监控其进度,或者运行 get-pipeline-state 命令以监控其进度。有关更多信息,请参阅查看管道(控制台)查看管道详细信息和历史记录(CLI)