Criar uma regra do EventBridge para uma origem do CodeCommit (modelo do CloudFormation)
Para usar o CloudFormation para criar uma regra, atualize seu modelo conforme mostrado aqui.
Para atualizar o modelo do CloudFormation do pipeline e criar a regra do EventBridge
-
No modelo, em
Resources, use o recursoAWS::IAM::Roledo CloudFormation para configurar a função do IAM que habilita o evento a iniciar seu pipeline. Essa entrada cria uma função que utiliza duas políticas:-
A primeira política permite que a função seja assumida.
-
A segunda política fornece permissões para iniciar o pipeline.
Por que estou fazendo essa alteração? A adição do recurso
AWS::IAM::Rolepossibilita que o CloudFormation crie permissões para o EventBridge. Esse recurso é adicionado à sua pilha do CloudFormation. -
-
No modelo, em
Resources, use o recursoAWS::Events::Ruledo CloudFormation para adicionar uma regra do EventBridge. Esse padrão de evento cria um evento que monitora as alterações por push no seu repositório. Quando o EventBridge detecta uma alteração no estado do repositório, a regra invocaStartPipelineExecutionno pipeline de destino.Por que estou fazendo essa alteração? A adição do recurso
AWS::Events::Rulepermite que o CloudFormation crie o evento. Esse recurso é adicionado à sua pilha do CloudFormation. -
(Opcional) Para configurar um transformador de entrada com substituições de origem para um ID de imagem específico, use o trecho YAML a seguir. O exemplo a seguir configura uma substituição na qual:
-
O
actionName,Sourceneste exemplo, é o valor dinâmico, definido na criação do pipeline, não derivado do evento de origem. -
O
revisionType,COMMIT_IDneste exemplo, é o valor dinâmico, definido na criação do pipeline, não derivado do evento de origem. -
O
revisionValue, <RevisionValue> neste exemplo, deriva da variável do evento de origem. -
As variáveis de saída para
BranchNameeValuesão especificadas.
Rule: my-rule Targets: - Id: MyTargetId Arn: pipeline-ARN InputTransformer: sourceRevisions: actionName:SourcerevisionType:COMMIT_IDrevisionValue: <revisionValue> variables: - name:BranchNamevalue:value -
-
Salve o modelo atualizado em seu computador local e abra o console do CloudFormation.
-
Selecione sua pilha e clique em Create Change Set for Current Stack (Criar conjunto de alterações para a pilha atual).
-
Carregue o modelo e visualize as alterações listadas no CloudFormation. Essas são as alterações a serem feitas na pilha. Seus novos recursos devem ser exibidos na lista.
-
Clique em Executar.
Editar o parâmetro PollForSourceChanges do pipeline
Importante
Em muitos casos, o parâmetro PollForSourceChanges é padronizado como verdadeiro ao criar um pipeline. Ao adicionar a detecção de alterações baseada em eventos, é necessário adicionar o parâmetro a sua saída e defini-lo como falso para desativar a sondagem. Caso contrário, o pipeline inicia duas vezes para uma única alteração de origem. Para obter detalhes, consulte Configurações válidas para o parâmetro PollForSourceChanges.
-
No modelo, altere
PollForSourceChangesparafalse. Se você não incluirPollForSourceChangesna sua definição de pipeline, adicione-o e configure parafalse.Por que estou fazendo essa alteração? A alteração deste parâmetro para
falsedesativa as verificações periódicas para que você possa utilizar apenas a detecção de alterações baseada em eventos.