

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Como funcionam as condições do estágio?
<a name="concepts-how-it-works-conditions"></a>

Para cada condição que especifica uma regra, a regra é executada. Se a condição falhar, o resultado será comprometido. O estágio executa o resultado especificado somente quando a condição falha. Opcionalmente, como parte da regra, você também especifica quais recursos CodePipeline devem ser usados para determinados casos. Por exemplo, a `CloudWatchAlarm` regra usará um recurso de CloudWatch alarme para executar verificações da condição.

Uma condição pode corresponder a várias regras, e cada regra pode especificar um dos três provedores. 

O fluxo de alto nível para criar condições é o seguinte.

1. Escolha o tipo de condição entre os tipos de condição disponíveis em CodePipeline. Por exemplo, use um tipo de condição “em caso de sucesso” para configurar um estágio para que, após o sucesso do estágio, um conjunto de regras possa ser usado para executar verificações antes de prosseguir. 

1. Escolha a regra . Por exemplo, a regra `CloudWatchAlarm` verificará os alarmes e usará o EB para verificar um limite de alarme pré-configurado. Se a verificação for bem-sucedida e o alarme estiver abaixo do limite, o estágio poderá prosseguir.

1. Configure o resultado, como uma reversão que seria usada se a regra falhasse.

As condições são usadas para tipos específicos de expressões e cada uma tem opções específicas para resultados disponíveis da seguinte forma: 
+ **Entrada**: as condições para fazer verificações que, se atendidas, permitem a entrada em um estágio. As regras são usadas com as seguintes opções de resultado: **Falhar** ou **Ignorar**
+ **Em caso de falha**: as condições para fazer verificações para o estágio em que ela falha. As regras estão envolvidas com a seguinte opção de resultado: **Reversão**
+ **Bem-sucedido**: as condições para fazer verificações para o estágio em que for bem-sucedida. As regras são envolvidas com as seguintes opções de resultado: **Reversão** ou **Falha**

O diagrama a seguir mostra um exemplo de fluxo para o tipo de condição de entrada em CodePipeline. As condições respondem à pergunta: O que deverá acontecer se a condição não for atendida, ou seja, se alguma regra falhar? No fluxo a seguir, uma condição de entrada é configurada com uma LambdaInvoke regra e uma `CloudWatchAlarm` regra. Se a regra falhar, o resultado configurado como Falha será acionado.

![Um exemplo do tipo de condição de entrada com duas regras configuradas, uma LambdaInvoke regra e uma CloudWatchAlarm regra.](http://docs.aws.amazon.com/pt_br/codepipeline/latest/userguide/images/conditions-overview-entry.png)


O diagrama a seguir mostra um exemplo de fluxo para o tipo de condição On Failure in CodePipeline. As condições respondem à pergunta: O que deverá acontecer se a condição for atendida, ou seja, se todas as regras forem bem-sucedidas nas verificações? No fluxo a seguir, uma condição On Failure é configurada com uma LambdaInvoke regra e uma `CloudWatchAlarm` regra. Se a regra falhar, o resultado configurado como Falha será acionado.

![Um exemplo do tipo de condição “em caso de falha” com duas regras configuradas, uma regra do Lambda e uma regra CloudWatchAlarm.](http://docs.aws.amazon.com/pt_br/codepipeline/latest/userguide/images/conditions-overview-onfailure.png)


O diagrama a seguir mostra um exemplo de fluxo para o tipo de condição On Success in CodePipeline. As condições respondem à pergunta: O que deverá acontecer se a condição for atendida, ou seja, se todas as regras forem bem-sucedidas nas verificações? No fluxo a seguir, uma condição “em caso de sucesso” é configurada com uma regra `LambdaInvoke` e uma regra `CloudWatchAlarm`. Se a regra falhar, o resultado configurado como Falha será acionado.

![Um exemplo do tipo de condição “em caso de sucesso” com duas regras configuradas, uma regra do Lambda e uma regra CloudWatchAlarm.](http://docs.aws.amazon.com/pt_br/codepipeline/latest/userguide/images/conditions-overview-onsuccess.png)




## Regras para condições de estágio
<a name="concepts-how-it-works-rules"></a>

Ao configurar as condições do estágio, você seleciona entre as regras predefinidas e especifica os resultados da regra. Um estado de condição será Falha se alguma das regras da condição falhar, e Bem-sucedido se todas as regras forem bem-sucedidas. A forma como os critérios são atendidos para as condições Em caso de falha e Bem-sucedido depende do tipo de regra.

A seguir estão algumas regras gerenciadas que você pode adicionar às condições do estágio.
+ As condições podem usar a regra **Commands** para especificar comandos a fim de atender aos critérios de regra para condições. Para ter mais informações sobre essa regra, consulte [Comandos](rule-reference-Commands.md).
+ As condições podem usar a **AWS DeploymentWindow**regra para especificar horários de implantação aprovados para permitir uma implantação. Os critérios da regra serão medidos com uma expressão cron fornecida para uma janela de implantação. A regra é bem-sucedida quando a data e a hora na janela de implantação atendem aos critérios na expressão cron da regra. Para ter mais informações sobre essa regra, consulte [DeploymentWindow](rule-reference-DeploymentWindow.md).
+ As condições podem usar a regra **AWS Lambda** para verificar os estados de erro gerados de funções do Lambda configuradas. A regra é atendida quando a verificação recebe o resultado da função do Lambda. Um erro da função do Lambda atende aos critérios das condições “em caso de falha”. Para ter mais informações sobre essa regra, consulte [LambdaInvoke](rule-reference-LambdaInvoke.md).
+ As condições podem usar a **AWS CloudWatchAlarm**regra para verificar se há alarmes configurados a partir de CloudWatch eventos. A regra é atendida quando a verificação gera um estado de alarme OK, ALARM ou INSUFF\_DATA. Para condições “em caso de sucesso”, OK e INSUFFICIENT\_DATA atendem aos critérios. ALARM atende aos critérios das condições “em caso de falha”. Para ter mais informações sobre essa regra, consulte [CloudWatchAlarm](rule-reference-CloudWatchAlarm.md).
+ As condições podem usar a **VariableCheck**regra para criar uma condição em que a variável de saída é verificada em relação a uma expressão fornecida. A regra passa na verificação quando o valor da variável atende aos critérios da regra, como o valor ser igual ou maior que uma variável de saída especificada. Para ter mais informações sobre essa regra, consulte [VariableCheck](rule-reference-VariableCheck.md).