为 Amazon ECR 源创建 EventBridge 规则(控制台) - AWS CodePipeline

为 Amazon ECR 源创建 EventBridge 规则(控制台)

创建要在 CodePipeline 操作中使用的 EventBridge 规则(Amazon ECR 源)
  1. 访问 https://console.aws.amazon.com/events/,打开 Amazon EventBridge 控制台。

  2. 在导航窗格中,选择事件

  3. 选择创建规则,然后在事件源下的服务名称中,选择 Elastic Container Registry (ECR)

  4. 事件源中,选择事件模式

    选择编辑,然后将以下示例事件模式粘贴到事件源窗口中,以获取映像标签为 cli-testingeb-test 存储库:

    { "detail-type": [ "ECR Image Action" ], "source": [ "aws.ecr" ], "detail": { "action-type": [ "PUSH" ], "image-tag": [ "latest" ], "repository-name": [ "eb-test" ], "result": [ "SUCCESS" ] } }
    注意

    要查看支持的 Amazon ECR 事件的完整事件模式,请参阅 Amazon ECR 事件和 EventBridgeAmazon Elastic Container Registry 事件

  5. 选择保存

    事件模式预览窗格中,查看该规则。

  6. 目标中,选择 CodePipeline

  7. 输入该规则将启动的管道的管道 ARN。

    注意

    在运行 get-pipeline 命令后,您可以在元数据输出中找到管道 ARN。管道 ARN 是使用以下格式构造的:

    arn:aws:codepipeline:region:account:pipeline-name

    示例管道 ARN:

    arn:aws:codepipeline:us-east-2:80398EXAMPLE:MyFirstPipeline

  8. 要创建或指定一个 IAM 服务角色,该角色向 EventBridge 授予权限以调用与 EventBridge 规则关联的目标(在此示例中,目标为 CodePipeline)。

    • 选择为此特定资源创建新角色以创建一个服务角色,该角色为 EventBridge 授予权限以启动管道执行。

    • 选择使用现有角色以输入一个服务角色,该角色为 EventBridge 授予权限以启动管道执行。

  9. (可选)要使用特定映像 ID 指定源覆盖,请使用输入转换器将数据作为 JSON 参数传递。您也可以使用输入转换器来传递管道变量。

    • 展开其他设置

      对于配置目标输入,选择配置输入转换器

      在对话框窗口中,选择输入我自己的。在输入路径框中,键入以下键值对。

      {"revisionValue": "$.detail.image-digest"}
    • 模板框中,键入以下键值对。

      { "sourceRevisions": [ { "actionName": "Source", "revisionType": "IMAGE_DIGEST", "revisionValue": "<revisionValue>" } ], "variables": [ { "name": "Variable_Name", "value": "Variable_Value" } ] }
    • 选择确认

  10. 检查规则设置以确保它符合您的要求。

  11. 选择 Configure details(配置详细信息)

  12. 配置规则详细信息页上,输入规则的名称和描述,然后选择状态以启用该规则。

  13. 如果您对规则满意,请选择 Create rule