

A Amazon não CodeCatalyst está mais aberta a novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Como migrar do CodeCatalyst](migration.md).

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á.

# Solicitar aprovações em execuções de fluxo de trabalho
<a name="workflows-approval"></a>

É possível configurar a execução de um fluxo de trabalho para solicitar uma aprovação antes de continuar. Para fazer isso, adicione um [portão](workflows-gates.md) de **aprovação** ao fluxo de trabalho. Um *portão de aprovação* impede que um fluxo de trabalho continue até que um usuário ou conjunto de usuários envie uma ou mais aprovações no CodeCatalyst console. Depois que todas as aprovações são concedidas, o portão é “desbloqueado” e a execução do fluxo de trabalho pode ser retomada.

Use um portão de **aprovação** no fluxo de trabalho para fornecer às equipes de desenvolvimento, de operações e de liderança a chance de revisar suas alterações antes que elas sejam implantadas em um público mais amplo.

Para ter mais informações sobre execuções de fluxos de trabalho, consulte [Executar um fluxo de trabalho](workflows-working-runs.md).

**Topics**
+ [Como faço para desbloquear um portão de aprovação?](#workflows-approval-conditions)
+ [Quando usar o portão de “Aprovação”](#workflows-approval-when)
+ [Quem pode fornecer uma aprovação?](#workflows-approval-who)
+ [Como faço para notificar os usuários de que uma aprovação é necessária?](#workflows-approval-notify-methods)
+ [Posso usar um portão de “aprovação” para impedir o início da execução de um fluxo de trabalho?](#workflows-approval-prevent)
+ [Como as aprovações de fluxo de trabalho funcionam com os modos de execução em fila, substituída e paralela?](#workflows-approval-run-mode)
+ [Exemplo: um portão de “aprovação”](workflows-approval-example.md)
+ [Adição de um portão de “aprovação”](workflows-approval-add.md)
+ [Configuração de notificações de aprovação](workflows-approval-notify.md)
+ [Aprovação ou rejeição da execução de um fluxo de trabalho](workflows-approval-approve.md)
+ [Portão de “Aprovação” YAML](approval-ref.md)

## Como faço para desbloquear um portão de aprovação?
<a name="workflows-approval-conditions"></a>

Para desbloquear um portão de **aprovação**, *todas* as seguintes condições devem ser atendidas:
+ **Condição 1**: o número necessário de aprovações deve ser enviado. O número necessário de aprovações é configurável e cada usuário pode enviar uma única aprovação.
+ **Condição 2**: todas as aprovações devem ser enviadas antes que o portão expire. O portão expira 14 dias após ser ativado. Esse período não é configurável.
+ **Condição 3**: ninguém deve rejeitar a execução do fluxo de trabalho. Uma única rejeição fará com que a execução do fluxo de trabalho falhe.
+ **Condição 4**: (aplicada apenas se você estiver usando o modo de execução substituído.) A execução não deve ser substituída por uma execução posterior. Para obter mais informações, consulte [Como as aprovações de fluxo de trabalho funcionam com os modos de execução em fila, substituída e paralela?](#workflows-approval-run-mode).

Se alguma das condições não for atendida, CodeCatalyst interrompe o fluxo de trabalho e defina o status de execução como **Falha** (no caso das **Condições 1** a **3**) ou **Substituído** (no caso da **Condição 4**).

## Quando usar o portão de “Aprovação”
<a name="workflows-approval-when"></a>

Normalmente, você usaria um portão de **aprovação** em um fluxo de trabalho que implante aplicações e outros recursos em um servidor de produção ou em qualquer ambiente em que os padrões de qualidade devam ser validados. Ao colocar o portão antes da implantação para produção, você oferece aos revisores a chance de validar sua nova revisão de software antes que ela se torne disponível ao público. 

## Quem pode fornecer uma aprovação?
<a name="workflows-approval-who"></a>

Qualquer usuário que seja membro do seu projeto e que tenha o perfil **colaborador** ou **administrador do projeto** pode fornecer uma aprovação. Os usuários com o perfil **administrador do espaço** que pertencem ao espaço do projeto também podem fornecer uma aprovação.

**nota**  
Usuários com o perfil **revisor** não podem fornecer aprovações.

## Como faço para notificar os usuários de que uma aprovação é necessária?
<a name="workflows-approval-notify-methods"></a>

Para notificar os usuários de que uma aprovação é necessária, você deve:
+  CodeCatalyst Envie-lhes uma notificação do Slack. Para obter mais informações, consulte [Configuração de notificações de aprovação](workflows-approval-notify.md).
+ Acesse a página no CodeCatalyst console em que estão os botões **Aprovar** e **Rejeitar** e cole o URL dessa página em um aplicativo de e-mail ou mensagem endereçado aos aprovadores. Para ter mais informações sobre como acessar essa página, consulte [Aprovação ou rejeição da execução de um fluxo de trabalho](workflows-approval-approve.md).

## Posso usar um portão de “aprovação” para impedir o início da execução de um fluxo de trabalho?
<a name="workflows-approval-prevent"></a>

Sim, com qualificações. Para obter mais informações, consulte [Posso usar um portão para impedir o início da execução de um fluxo de trabalho?](workflows-gates.md#workflows-gates-prevent).

## Como as aprovações de fluxo de trabalho funcionam com os modos de execução em fila, substituída e paralela?
<a name="workflows-approval-run-mode"></a>

Ao usar o modo de execução em fila, substituída ou paralela, o portão de **aprovação** funciona de forma semelhante às [ações](workflows-actions.md). Sugerimos a leitura das seções [Sobre o modo de execução em fila](workflows-configure-runs.md#workflows-configure-runs-queued), [Sobre o modo de execução substituída](workflows-configure-runs.md#workflows-configure-runs-superseded) e [Sobre o modo de execução paralela](workflows-configure-runs.md#workflows-configure-runs-parallel) para conhecer esses modos de execução. Depois de ter uma compreensão básica deles, retorne a esta seção para descobrir como esses modos de execução funcionam quando o portão de **aprovação** está presente.

Quando o portão de **aprovação** está presente, as execuções são processadas da seguinte forma:
+ Se você estiver usando o [modo de execução em fila](workflows-configure-runs.md#workflows-configure-runs-queued), as execuções ficarão na fila atrás da execução que está aguardando aprovação no portão. Quando esse portão é desbloqueado (ou seja, todas as aprovações foram concedidas), a próxima execução na fila avança até o portão e aguarda as aprovações. Esse processo continua com as execuções em fila sendo processadas pelo portão. one-by-one [Figure 1](#figure-1-workflow-queued-run-mode-ma)ilustra esse processo.
+ Se você estiver usando o [modo de execução substituída](workflows-configure-runs.md#workflows-configure-runs-superseded), o comportamento será o mesmo que o modo de execução em fila, exceto que, em vez de as execuções se acumularem na fila do portão, as execuções mais recentes substituirão as anteriores. Não há filas, e qualquer execução que esteja aguardando aprovação no portão será cancelada e substituída por uma mais recente. [Figure 2](#figure-2-workflow-superseded-run-mode-ma) ilustra esse processo.
+ Se você estiver usando o [modo de execução paralela](workflows-configure-runs.md#workflows-configure-runs-parallel), as execuções começarão em paralelo e não formarão filas. Cada execução é processada pelo portão imediatamente, pois não há nenhuma execução à sua frente. [Figure 3](#figure-3-workflow-parallel-run-mode-ma) ilustra esse processo.

**Figura 1**: “Modo de execução em fila” e um portão de **aprovação**

![Como um portão de “aprovação” funciona com o “modo de execução em fila”](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/flows/runmode-queued-ma.png)


**Figura 2**: “Modo de execução substituída” e um portão de **aprovação**

![Como um portão de “aprovação” funciona com o “modo de execução substituída”](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/flows/runmode-superseded-ma.png)


**Figura 3**: “Modo de execução paralela” e um portão de **aprovação**

![Como um portão de “aprovação” funciona com o “modo de execução paralela”](http://docs.aws.amazon.com/pt_br/codecatalyst/latest/userguide/images/flows/runmode-parallel-ma.png)
