

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

# Inicie um pipeline em CodePipeline
<a name="pipelines-about-starting"></a>

Cada execução de pipeline pode ser iniciada com base em um gatilho diferente. Cada execução do pipeline pode ter um tipo diferente de gatilho, dependendo de como o pipeline é iniciado. O tipo de gatilho para cada execução é mostrado no histórico de execução de um pipeline. Os tipos de gatilho podem depender do provedor de ação de origem da seguinte forma:

**nota**  
Você não pode especificar mais de um gatilho por ação de origem.
+ **Criação de pipeline:** quando um pipeline é criado, uma execução de pipeline é iniciada automaticamente. Este é o tipo de gatilho `CreatePipeline` no **Histórico de execução**.
+ **Alterações nos objetos revisados:** esta categoria representa o tipo de gatilho `PutActionRevision` no **Histórico de execução**.
+ **Detecção de alterações na ramificação e confirmação para um envio de código por push:** esta categoria representa o tipo de gatilho `CloudWatchEvent` no **Histórico de execução**. Quando uma alteração é detectada em uma confirmação e ramificação de origem no repositório de origem, seu pipeline é iniciado. Este tipo de gatilho usa a detecção automatizada de alterações. Os provedores de ação de origem que usam esse tipo de gatilho são S3 e. CodeCommit Este tipo também é usado para um agendamento que inicia seu pipeline. Consulte [Iniciar um pipeline de acordo com uma programação](pipelines-trigger-source-schedule.md).
+ **Sondagem de alterações de origem:** esta categoria representa o tipo de gatilho `PollForSourceChanges` no **Histórico de execução**. Quando uma alteração é detectada em uma confirmação e ramificação de origem no repositório de origem por meio da sondagem, seu pipeline é iniciado. Esse tipo de gatilho não é recomendado e deve ser migrado para usar a detecção automatizada de alterações. Os provedores de ação de origem que usam esse tipo de gatilho são S3 e. CodeCommit
+ **Eventos Webhook para fontes de terceiros:** esta categoria representa o tipo de gatilho `Webhook` no **Histórico de execução**. Quando uma alteração é detectada por um evento Webhook, seu pipeline é iniciado. Este tipo de gatilho usa a detecção automatizada de alterações. Os provedores de ação de origem que usam esse tipo de gatilho são conexões configuradas para envio de código (Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com e GitLab autogerenciadas).
+ **Eventos WebhookV2 para fontes de terceiros:** esta categoria representa o tipo de gatilho `WebhookV2` no **Histórico de execução**. Este tipo destina-se a execuções acionadas com base em gatilhos especificados na definição do pipeline. Quando uma versão com uma tag Git especificada é detectada, seu pipeline é iniciado. Você pode usar tags do Git para marcar uma confirmação com um nome ou outro identificador que ajude outros usuários do repositório a compreender a importância. Você também pode usar tags do Git para identificar uma confirmação específica no histórico de um repositório. Este tipo de gatilho desabilita a detecção automatizada de alterações. Os provedores de ação de origem que usam esse tipo de gatilho são conexões configuradas para tags Git (Bitbucket Cloud GitHub, GitHub Enterprise Server e GitLab .com).
+ **Iniciando manualmente um pipeline:** esta categoria representa o tipo de gatilho `StartPipelineExecution` no **Histórico de execução**. Você pode usar o console ou o AWS CLI para iniciar um pipeline manualmente. Para mais informações, consulte [Iniciar um pipeline manualmente](pipelines-rerun-manually.md).
+ **RollbackStage**: Essa categoria representa o tipo de `RollbackStage` gatilho no **histórico de execução**. Você pode usar o console ou o AWS CLI para reverter um estágio manual ou automaticamente. Para mais informações, consulte [Configuração da reversão de estágio](stage-rollback.md).

Quando você adiciona ao seu pipeline uma ação de origem que usa tipos de gatilho de detecção automatizada de alterações, as ações funcionam com recursos adicionais. A criação de cada ação de origem é detalhada em seções separadas devido a esses recursos adicionais para detecção de alterações. Para obter detalhes sobre cada provedor de origem e os métodos de detecção de alterações necessários à detecção automatizada de alterações, consulte [Ações de origem e métodos de detecção de alterações](change-detection-methods.md).

**Topics**
+ [Iniciar um pipeline manualmente](pipelines-rerun-manually.md)
+ [Iniciar um pipeline de acordo com uma programação](pipelines-trigger-source-schedule.md)
+ [Iniciar um pipeline com uma substituição da revisão de origem](pipelines-trigger-source-overrides.md)

# Iniciar um pipeline manualmente
<a name="pipelines-rerun-manually"></a>

Por padrão, um pipeline inicia-se automaticamente quando é criado e sempre que uma alteração é feita em um repositório de origem. No entanto, pode ser que você queira executar novamente a revisão mais recente no pipeline. Você pode usar o CodePipeline console ou o **start-pipeline-execution** comando AWS CLI and para executar novamente manualmente a revisão mais recente em seu pipeline.

**Topics**
+ [Iniciar um pipeline manualmente (console)](#pipelines-rerun-manually-console)
+ [Iniciar um pipeline manualmente (CLI)](#pipelines-rerun-manually-cli)

## Iniciar um pipeline manualmente (console)
<a name="pipelines-rerun-manually-console"></a>

**Para iniciar manualmente um pipeline e executar a revisão mais recente por meio de um pipeline**

1. Faça login no Console de gerenciamento da AWS e abra o CodePipeline console em [http://console.aws.amazon. com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home).

1. Em **Name**, escolha o nome do pipeline que você deseja iniciar. 

1. Na página de detalhes do pipeline, escolha **Lançar alteração**. Se o pipeline estiver configurado para passar parâmetros (variáveis do pipeline), escolha **Lançar alteração** para abrir a janela **Lançar alteração**. Em **Variáveis de pipeline**, no(s) campo(s) das variáveis no nível do pipeline, insira o(s) valor(es) que você deseja passar para a execução desse pipeline. Para obter mais informações, consulte [Referência de variáveis](reference-variables.md).

   Essa ação inicia a revisão mais recente disponível em cada local de origem especificado em uma ação de origem do pipeline.

## Iniciar um pipeline manualmente (CLI)
<a name="pipelines-rerun-manually-cli"></a>

**Para iniciar manualmente um pipeline e executar a versão mais recente de um artefato por meio de um pipeline**

1. Abra um terminal (Linux, macOS ou Unix) ou prompt de comando (Windows) e use a AWS CLI para executar o comando **start-pipeline-execution**, especificando o nome do pipeline que você deseja iniciar. Por exemplo, para começar a executar a última alteração em um pipeline chamado *MyFirstPipeline*: 

   ```
   aws codepipeline start-pipeline-execution --name MyFirstPipeline
   ```

   Para iniciar um pipeline em que as variáveis são configuradas no nível do pipeline, use o comando **start-pipeline-execution** com o argumento **--variables** opcional para iniciar o pipeline e adicionar as variáveis que serão usadas na execução. Por exemplo, para adicionar uma variável `var1` com um valor `1`, use o seguinte comando:

   ```
   aws codepipeline start-pipeline-execution --name MyFirstPipeline --variables name=var1,value=1 
   ```

1. Para confirmar se tudo deu certo, visualize o objeto retornado. Este comando retorna um ID de execução semelhante a:

   ```
   {
       "pipelineExecutionId": "c53dbd42-This-Is-An-Example"
   }
   ```
**nota**  
Depois de iniciar o pipeline, você pode monitorar seu progresso no CodePipeline console ou executando o **get-pipeline-state** comando. Para obter mais informações, consulte [Visualizar pipelines (console)](pipelines-view-console.md) e [Visualizar detalhes e histórico do pipeline (CLI)](pipelines-view-cli.md).

# Iniciar um pipeline de acordo com uma programação
<a name="pipelines-trigger-source-schedule"></a>

Você pode configurar uma regra EventBridge para iniciar um funil de acordo com um cronograma. 

## Crie uma EventBridge regra que programe o início do seu pipeline (console)
<a name="pipelines-trigger-source-schedule-console"></a>

**Para criar uma EventBridge regra com uma agenda como fonte do evento**

1. Abra o EventBridge console da Amazon em [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. No painel de navegação, escolha **Regras**.

1. Escolha **Criar regra** e, em **Detalhes da regra**, escolha **Programação**.

1. Configure a programação usando uma taxa fixa ou expressão. Para obter mais informações, consulte [Schedule Expression for Rules](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html).

1. Em **Alvos**, escolha **CodePipeline**.

1. Insira o ARN do pipeline para a execução do pipeline de acordo com essa programação.
**nota**  
Você pode encontrar o ARN do pipeline em **Configurações** no console. Consulte [Visualizar o ARN do pipeline e o ARN do perfil de serviço (console)](pipelines-settings-console.md).

1. Escolha uma das opções a seguir para criar ou especificar uma função de serviço do IAM que conceda EventBridge permissões para invocar o destino associado à sua EventBridge regra (nesse caso, o destino é CodePipeline). 
   + Escolha **Criar uma nova função para esse recurso específico** para criar uma função de serviço que conceda EventBridge permissões para iniciar suas execuções de pipeline.
   + Escolha **Usar função existente** para inserir uma função de serviço que conceda EventBridge permissões para iniciar suas execuções de funil.

1. Escolha **Configure details (Configurar detalhes)**.

1. Na página **Configure rule details (Configurar detalhes da regra)**, informe um nome e uma descrição para a regra e selecione **State (Estado)** para habilitá-la.

1. Se você estiver satisfeito com a regra, escolha **Create rule**.

## Crie uma EventBridge regra que programe o início do seu pipeline (CLI)
<a name="pipelines-trigger-source-schedule-cli"></a>

 

Para usar o AWS CLI para criar uma regra, chame o **put-rule** comando, especificando:
+ Um nome que identifique de forma exclusiva a regra que você está criando. Esse nome deve ser exclusivo em todos os pipelines que você cria CodePipeline associados à sua AWS conta.
+ A expressão de programação para a regra.

**Para criar uma EventBridge regra com uma agenda como fonte do evento**

1. Use o comando **put-rule** e inclua os parâmetros `--name ` e `--schedule-expression`.

   Exemplos:

   O exemplo de comando a seguir é usado **--schedule-expression** para criar uma regra chamada `MyRule2` que filtra EventBridge em uma agenda.

   ```
   aws events put-rule --schedule-expression 'cron(15 10 ? * 6L 2002-2005)' --name MyRule2
   ```

1. Para adicionar CodePipeline como destino, chame o **put-targets** comando e inclua os seguintes parâmetros:
   + O parâmetro `--rule` é usado com `rule_name` criado por meio de **put-rule**. 
   + O parâmetro `--targets` é usado com o `Id` da lista do destino na lista de destinos e o `ARN` do pipeline de destino.

   O exemplo de comando a seguir especifica que, para a regra chamada `MyCodeCommitRepoRule`, o `Id` do destino é composto do número um, indicando que, em uma lista de destinos para a regra, esse é o destino 1. O exemplo de comando também especifica um exemplo `ARN` para o pipeline. O pipeline é iniciado quando uma alteração é feita no repositório.

   ```
   aws events put-targets --rule MyCodeCommitRepoRule --targets Id=1,Arn=arn:aws:codepipeline:us-west-2:80398EXAMPLE:TestPipeline
   ```

1. Conceda permissões EventBridge para usar CodePipeline para invocar a regra. Para obter mais informações, consulte [Uso de políticas baseadas em recursos para a Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-use-resource-based.html). EventBridge

   1. Use o exemplo a seguir para criar a política de confiança que permita ao EventBridge assumir a função de serviço. Chame-o de `trustpolicyforEB.json`.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "events.amazonaws.com"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }
      ```

------

   1. Use o comando a seguir para criar a função `Role-for-MyRule` e anexar a política de confiança.

      ```
      aws iam create-role --role-name Role-for-MyRule --assume-role-policy-document file://trustpolicyforEB.json
      ```

   1. Crie o JSON de política de permissões, conforme mostrado neste exemplo, para o pipeline denominado `MyFirstPipeline`. Nomeie a politica de permissões `permissionspolicyforEB.json`.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "codepipeline:StartPipelineExecution"
                  ],
                  "Resource": [
                      "arn:aws:codepipeline:us-west-2:111122223333:MyFirstPipeline"
                  ]
              }
          ]
      }
      ```

------

   1. Use o comando a seguir para anexar a nova política de permissões `CodePipeline-Permissions-Policy-for-EB` à função `Role-for-MyRule` criada.

      ```
      aws iam put-role-policy --role-name Role-for-MyRule --policy-name CodePipeline-Permissions-Policy-For-EB --policy-document file://permissionspolicyforCWE.json
      ```

# Iniciar um pipeline com uma substituição da revisão de origem
<a name="pipelines-trigger-source-overrides"></a>

É possível usar substituições para iniciar um pipeline com um ID de revisão de origem específico fornecido para a execução do pipeline. Por exemplo, se você quiser iniciar um pipeline que processará uma ID de confirmação específica da sua CodeCommit fonte, você pode adicionar a ID de confirmação como uma substituição ao iniciar seu pipeline.

**nota**  
Você também pode criar uma substituição de origem usando a entrada de transformação de entrada para usar o `revisionValue` in EventBridge para seu evento de pipeline, onde o `revisionValue` é derivado da variável de evento de origem para sua chave de objeto, confirmação ou ID de imagem. Para saber mais, consulte a etapa opcional da entrada da transformação de entrada incluída nos procedimentos em [Recursos e ações de origem do Amazon ECR EventBridge](create-cwe-ecr-source.md), [Conexão a ações de origem do Amazon S3 com uma fonte habilitada para eventos](create-S3-source-events.md) ou [CodeCommit ações de origem e EventBridge](triggering.md).

Há quatro tipos de revisão de origem para `revisionType`: 
+ `COMMIT_ID`
+ `IMAGE_DIGEST`
+ `S3_OBJECT_VERSION_ID`
+ `S3_OBJECT_KEY`

**nota**  
Para os tipos de revisões de origem `COMMIT_ID` e `IMAGE_DIGEST`, o ID de revisão de origem se aplica a todo o conteúdo no repositório, em todas as ramificações.

**nota**  
Para os `S3_OBJECT_KEY` tipos `S3_OBJECT_VERSION_ID` e as revisões da fonte, qualquer um dos tipos pode ser usado de forma independente ou pode ser usado em conjunto para substituir a fonte por um ID de versão específico ObjectKey . Para `S3_OBJECT_KEY`, o parâmetro de configuração `AllowOverrideForS3ObjectKey` precisa ser definido como `true`. Para ter mais informações sobre os parâmetros de configuração de origem do S3, consulte [Parâmetros de configuração](action-reference-S3.md#action-reference-S3-config).

**Topics**
+ [Iniciar um pipeline com uma substituição de revisão de origem (console)](#pipelines-trigger-source-overrides-console)
+ [Iniciar um pipeline com uma substituição da revisão de origem (CLI)](#pipelines-trigger-source-overrides-cli)

## Iniciar um pipeline com uma substituição de revisão de origem (console)
<a name="pipelines-trigger-source-overrides-console"></a>

**Para iniciar manualmente um pipeline e executar a revisão mais recente por meio de um pipeline**

1. Faça login no Console de gerenciamento da AWS e abra o CodePipeline console em [http://console.aws.amazon. com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home).

1. Em **Name**, escolha o nome do pipeline que você deseja iniciar. 

1. Na página de detalhes do pipeline, escolha **Lançar alteração**. Selecionar **Lançar alteração** abre a janela **Lançar alteração**. Em **Substituição da revisão de origem**, selecione a seta para expandir o campo. Em **Origem**, insira o ID da revisão de origem. Por exemplo, se seu pipeline tiver uma CodeCommit fonte, escolha o ID do commit no campo que você deseja usar.  
![\[Um exemplo da tela de substituições em. CodePipeline\]](http://docs.aws.amazon.com/pt_br/codepipeline/latest/userguide/images/overrides.png)

## Iniciar um pipeline com uma substituição da revisão de origem (CLI)
<a name="pipelines-trigger-source-overrides-cli"></a>

**Como iniciar manualmente um pipeline e executar o ID de revisão de origem especificado para um artefato por meio de um pipeline**

1. Abra um terminal (Linux, macOS ou Unix) ou prompt de comando (Windows) e use a AWS CLI para executar o comando **start-pipeline-execution**, especificando o nome do pipeline que você deseja iniciar. Também é necessário o argumento **--source-revisions** para fornecer o ID da revisão de origem. A revisão de origem é composta por actionName, revisionType e revisionValue. Os valores válidos de revisionType são `COMMIT_ID | IMAGE_DIGEST | S3_OBJECT_VERSION_ID | S3_OBJECT_KEY`. 

   No exemplo a seguir, para começar a executar a alteração especificada por meio de um pipeline chamado **codecommit-pipeline**, o comando a seguir especifica um nome de ação de origem, um tipo de revisão de `COMMIT_ID` e um ID de confirmação de `78a25c18755ccac3f2a9eec099dEXAMPLE`.

   ```
   aws codepipeline start-pipeline-execution --name codecommit-pipeline --source-revisions actionName=Source,revisionType=COMMIT_ID,revisionValue=78a25c18755ccac3f2a9eec099dEXAMPLE --region us-west-1
   ```

1. Para confirmar se tudo deu certo, visualize o objeto retornado. Este comando retorna um ID de execução semelhante a:

   ```
   {
       "pipelineExecutionId": "c53dbd42-This-Is-An-Example"
   }
   ```
**nota**  
Depois de iniciar o pipeline, você pode monitorar seu progresso no CodePipeline console ou executando o **get-pipeline-state** comando. Para obter mais informações, consulte [Visualizar pipelines (console)](pipelines-view-console.md) e [Visualizar detalhes e histórico do pipeline (CLI)](pipelines-view-cli.md).