本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
舞台条件如何运作?
对于每个指定规则的条件,都会运行该规则。如果条件失败,则使用结果。仅当条件失败时,该阶段才会执行指定的结果。或者,作为规则的一部分,您还可以指定在某些情况下 CodePipeline应使用哪些资源。例如,该CloudWatchAlarm
规则将使用 CloudWatch 警报资源对条件进行检查。
一个条件可能匹配多个规则,并且每个规则可以指定三个提供者中的一个。
创建条件的高级流程如下所示。
-
从中的可用条件类型中选择条件类型 CodePipeline。例如,使用 On Success 条件类型来设置阶段,以便在阶段成功后,可以使用一组规则在继续之前运行检查。
-
选择 规则。例如,该
CloudWatchAlarm
规则将检查警报,并使用 EB 检查预先配置的警报阈值。如果检查成功且警报低于阈值,则阶段可以继续进行。 -
配置结果,例如规则失败时将使用的回滚。
您可以配置三种类型的条件,每种条件都有有效的结果选项,如下所示。
-
参赛条件的结果选项:失败
-
失败时条件的结果选项:回滚
-
成功时条件的结果选项要么是回滚,要么是失败。
下图显示了中输入条件类型的示例流程 CodePipeline。条件回答了这样一个问题:“如果不满足条件,这意味着任何规则都失败了,会发生什么? 在以下流程中,使用 LambdaInvoke 规则和规则配置了进入条件。CloudWatchAlarm
如果规则失败,则使用配置的结果(例如 Fail)。
下图显示了 On Failure 条件类型的示例流程 CodePipeline。条件回答了这样一个问题:“如果满足条件,这意味着规则都通过检查,会发生什么? 在以下流程中,使用 LambdaInvoke 规则和规则配置 On Failure CloudWatchAlarm
条件。如果规则成功,则会触发配置的结果,例如 Fail。
下图显示了 On Success 条件类型的示例流程 CodePipeline。条件回答了这样一个问题:“如果满足条件,这意味着规则都通过检查,会发生什么? 在以下流程中,使用LambdaInvoke
规则和规则配置 On Success CloudWatchAlarm
条件。如果规则成功,则会触发配置的结果,例如 Fail。
舞台条件规则
配置阶段条件时,您可以从预定义的规则中进行选择并指定规则的结果。如果条件中的任何一条规则失败,则条件状态将为 “失败”;如果所有规则都成功,则条件状态将为 “成功”。如何满足 “失败” 和 “成功时” 条件的标准取决于规则的类型。
以下是您可以添加到阶段条件的托管规则。
-
条件可以使用该AWS DeploymentWindow规则来指定允许部署的批准部署时间。将使用为部署窗口提供的cron表达式来衡量该规则的标准。当部署窗口中的日期和时间满足规则的 cron 表达式中的条件时,该规则就会成功。有关此规则的更多信息,请参阅DeploymentWindow。
-
条件可以使用 AWS Lambda 规则来检查从已配置的 Lambda 函数返回的错误状态。当检查收到 Lambda 函数结果时,即符合规则。来自 Lambda 函数的错误符合 “出现故障” 条件的标准。有关此规则的更多信息,请参阅LambdaInvoke。
-
条件可以使用该AWS CloudWatchAlarm规则来检查根据 CloudWatch 事件配置的警报。当检查返回警报状态为 OK、或 INSUFF _ 时ALARM,即符合规则DATA。对于 On Success 条件,OK 和 INSUFFICIENT _ DATA 符合标准。ALARM符合 “失效” 条件的标准。有关此规则的更多信息,请参阅CloudWatchAlarm。
-
条件可以使用该VariableCheck规则来创建条件,在该条件下,根据提供的表达式检查输出变量。当变量值满足规则条件(例如值等于或大于指定的输出变量)时,规则就会通过检查。有关此规则的更多信息,请参阅VariableCheck。