

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

# Bloquear uma execução de fluxo de trabalho
<a name="workflows-gates"></a>

*Portão* é um componente do fluxo de trabalho que pode ser usado para impedir que a execução do fluxo de trabalho continue, a menos que determinadas condições sejam atendidas. Um exemplo de porta é a porta de **aprovação**, na qual os usuários devem enviar uma aprovação no CodeCatalyst console antes que a execução do fluxo de trabalho possa continuar.

É possível adicionar portões entre sequências de ações a um fluxo de trabalho ou antes da primeira ação (executada imediatamente após o download da **Origem**). Também será possível adicionar portões após a última ação, se necessário.

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

**Topics**
+ [Tipos de portões](#workflows-gates-types)
+ [Posso configurar um portão para ser executado paralelamente a outra ação?](#workflows-approval-parallel)
+ [Posso usar um portão para impedir o início da execução de um fluxo de trabalho?](#workflows-gates-prevent)
+ [Limitações de portões](#workflows-gate-limitations)
+ [Adicionar um portão a um fluxo de trabalho](workflows-gates-add.md)
+ [Sequenciar portões e ações](workflows-gates-depends-on.md)
+ [Especificar a versão de um portão](workflows-gates-version.md)

## Tipos de portões
<a name="workflows-gates-types"></a>

Atualmente, a Amazon CodeCatalyst oferece suporte a um tipo de portão: o portão de **aprovação**. Para obter mais informações, consulte [Solicitar aprovações em execuções de fluxo de trabalho](workflows-approval.md).

## Posso configurar um portão para ser executado paralelamente a outra ação?
<a name="workflows-approval-parallel"></a>

Não. Os portões só podem ser executados antes ou depois de uma ação. Para obter mais informações, consulte [Sequenciar portões e ações](workflows-gates-depends-on.md).

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

Sim, com qualificações.

Você pode evitar que a execução de um fluxo de trabalho *execute tarefas*, o que é um pouco diferente de impedir que ela seja *iniciada*.

Para evitar que um fluxo de trabalho execute tarefas, adicione um portão antes da primeira ação em um fluxo de trabalho. Nesse cenário, a execução de um fluxo de trabalho *será iniciada*, o que significa que ela baixará os arquivos do repositório de origem, mas será impedida de realizar tarefas até que o portão seja desbloqueado.

**nota**  
Os fluxos de trabalho que são iniciados e depois são bloqueados por um portão ainda contam para a cota de *Número máximo de execuções simultâneas de fluxo de trabalho por espaço* e outras cotas. Para garantir que você não exceda as cotas de fluxo de trabalho, pense em usar um gatilho de fluxo de trabalho para iniciar condicionalmente um fluxo de trabalho em vez de usar um portão. Pense também em usar uma regra de aprovação de solicitação pull em vez de um portão. Para ter mais informações sobre cotas, gatilhos e regras de aprovação de solicitação pull, consulte [Cotas para fluxos de trabalho em CodeCatalyst](workflows-quotas.md), [Início da execução automática de um fluxo de trabalho usando gatilhos](workflows-add-trigger.md) e [Gerenciamento de requisitos para mesclar uma solicitação pull com regras de aprovação](source-pull-requests-approval-rules.md).

## Limitações de portões
<a name="workflows-gate-limitations"></a>

Os portões têm as seguintes limitações:
+ Portões não podem ser usados com o recurso de compartilhamento de computação. Para ter mais informações sobre esse recurso, consulte [Compartilhamento de computação entre ações](compute-sharing.md).
+ Portões não podem ser usados em grupos de ação. Para ter mais informações sobre os grupos de ações, consulte [Agrupar ações em grupos de ações](workflows-group-actions.md).

# Adicionar um portão a um fluxo de trabalho
<a name="workflows-gates-add"></a>

No Amazon CodeCatalyst, você pode adicionar um portão a um fluxo de trabalho para impedir que ele continue, a menos que determinadas condições sejam atendidas. Use as instruções a seguir para adicionar um portão a um fluxo de trabalho.

Para ter mais informações sobre portões, consulte [Bloquear uma execução de fluxo de trabalho](workflows-gates.md).

**Como adicionar e configurar um portão**

1. Abra o console do CodeCatalyst em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Selecione o projeto.

1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**.

1. Selecione o nome do fluxo de trabalho. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

1. Selecione **Editar**.

1. Selecione **Visual**.

1. No painel esquerdo, selecione **Portões**.

1. No catálogo de portões, pesquise um portão e escolha o sinal de adição (**\$1**) para adicioná-lo ao seu fluxo de trabalho.

1. Configure o portão. Selecione **Visual** para usar o editor visual ou **YAML** para usar o editor YAML. Para ter instruções detalhadas, consulte:
   + [Adição de um portão de “aprovação”](workflows-approval-add.md)

1. (Opcional) Selecione **Validar** para garantir que o código YAML seja válido.

1. Selecione **Confirmar** para confirmar suas alterações.

# Sequenciar portões e ações
<a name="workflows-gates-depends-on"></a>

No Amazon CodeCatalyst, você pode configurar um portão para ser executado antes ou depois de uma ação de fluxo de trabalho, grupo de ação ou portão. Por exemplo, é possível configurar um portão `Approval` para ser executado antes de uma ação `Deploy`. Nesse caso, a ação `Deploy` *depende* do portão `Approval`.

Para configurar dependências entre portões e ações, configure a propriedade **Depende de** do portão ou ação. Para instruções, consulte [Configurar dependências entre ações](workflows-depends-on-set-up.md). As instruções referidas dizem respeito às *ações* do fluxo de trabalho, mas se aplicam igualmente aos portões. 

Para ter um exemplo de como configurar a propriedade **Depende de** com um portão, consulte [Exemplo: um portão de “aprovação”](workflows-approval-example.md).

Para ter mais informações sobre portões, consulte [Bloquear uma execução de fluxo de trabalho](workflows-gates.md).

Para ter mais informações sobre ações de fluxos de trabalho, consulte [Configuração de ações de fluxo de trabalho](workflows-actions.md).

# Especificar a versão de um portão
<a name="workflows-gates-version"></a>

Por padrão, quando você adiciona um portão a um fluxo de trabalho, o CodeCatalyst adiciona a versão completa ao arquivo de definição do fluxo de trabalho usando o formato:

`vmajor.minor.patch` 

Por exemplo:

```
My-Gate:
  Identifier: aws/approval@v1
```

Você pode aumentar a versão para que o fluxo de trabalho use uma versão principal ou secundária específica do portão. Para instruções, consulte [Especificação da versão da ação a ser usada](workflows-action-versions.md). O tópico referido diz respeito às ações do fluxo de trabalho, mas se aplica igualmente aos portões.

Para ter mais informações sobre portões no CodeCatalyst, consulte [Bloquear uma execução de fluxo de trabalho](workflows-gates.md).