本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
按计划启动管道
您可以在中设置规则 EventBridge 以按计划启动管道。
创建安排管道启动的 EventBridge 规则(控制台)
创建以时间表作为事件源的 EventBridge 规则
打开 Amazon EventBridge 控制台,网址为https://console.aws.amazon.com/events/
。 -
在导航窗格中,选择规则。
-
选择创建规则,然后在规则详细信息下面选择计划。
-
使用固定速率或表达式设置计划。有关更多信息,请参阅规则的计划表达式。
-
在 “目标” 中,选择CodePipeline。
-
ARN为该计划输入管道执行的管道。
注意
你可以在控制台的 “设置” ARN 下找到管道。请参阅 查看管道ARN和服务角色ARN(控制台)。
-
选择以下选项之一来创建或指定一个IAM服务角色,该角色 EventBridge 授予调用与您的 EventBridge 规则关联的目标的权限(在本例中,目标是 CodePipeline)。
-
选择 “为此特定资源创建新角色”,创建一个服务角色来授予启动管道执行的 EventBridge权限。
-
选择 “使用现有角色” 以输入服务角色,该角色授予启动管道执行的 EventBridge 权限。
-
-
选择 Configure details(配置详细信息)。
-
在配置规则详细信息页上,输入规则的名称和描述,然后选择状态以启用该规则。
-
如果您对规则满意,请选择 Create rule。
创建安排管道启动的 EventBridge 规则 (CLI)
要使用创建规则,请调用put-rule命令,指定: Amazon CLI
-
唯一地标识创建的规则的名称。在您创建的与 Amazon 账户 CodePipeline 关联的所有管道中,此名称必须是唯一的。
-
规则的计划表达式。
创建以时间表作为事件源的 EventBridge 规则
-
调用 put-rule 命令并包含
--name
和--schedule-expression
参数。示例:
以下示例命令用于--schedule-expression创建名为按计划
MyRule2
EventBridge 进行筛选的规则。aws events put-rule --schedule-expression 'cron(15 10 ? * 6L 2002-2005)' --name MyRule2
-
授 EventBridge 予使用调 CodePipeline 用规则的权限。有关更多信息,请参阅使用适用于 Amazon EventBridge 的基于资源的政策。
-
使用以下示例创建允许 EventBridge担任服务角色的信任策略。将它命名为
trustpolicyforEB.json
。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
使用以下命令创建
Role-for-MyRule
角色并附加信任策略。aws iam create-role --role-name Role-for-MyRule --assume-role-policy-document file://trustpolicyforEB.json
-
为名JSON为的管道创建权限策略,如本示例所示
MyFirstPipeline
。将权限策略命名为permissionspolicyforEB.json
。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codepipeline:StartPipelineExecution" ], "Resource": [ "arn:aws:codepipeline:us-west-2:80398EXAMPLE:MyFirstPipeline" ] } ] }
-
使用以下命令将新的
CodePipeline-Permissions-Policy-for-EB
权限策略附加到您创建的Role-for-MyRule
角色。aws iam put-role-policy --role-name Role-for-MyRule --policy-name CodePipeline-Permissions-Policy-For-EB --policy-document file://permissionspolicyforCWE.json
-