DevSecOpsARTIGO

Notificações para eventos do AWS CodeDeploy

O AWS CodeDeploy é um serviço que o ajuda a implantar seu código para uma frota de EC2 ou instâncias locais, tendo o cuidado de deixar o máximo da frota online possível.

O AWS CodeDeploy é um serviço que o ajuda a implantar seu código para uma frota de EC2 ou instâncias locais, tendo o cuidado de deixar o máximo da frota online possível. O CodeDeploy foi projetado para trabalhar com frotas que variam no tamanho de uma única instância até milhares de instâncias (ver este meu artigo – em inglês – para mais informações).

Notificações para o CodeDeploy

A fim de facilitar o uso do CodeDeploy como parte de sua linha de criação, teste e implantação, estamos introduzindo um novo sistema de notificação. Agora é possível criar triggers que enviam notificações do Amazon SNS para as suas aplicações antes, durante e após o processo de implantação. Os triggers podem ser definidos para a implantação como um todo, ou para as instâncias individuais marcadas ​​pela implantação, e são enviadas tanto para o caso de sucesso, quanto fracasso.

Veja a lista completa de triggers:

  • DEPLOYMENT_START
  • DEPLOYMENT_SUCCESS
  • DEPLOYMENT_FAILURE
  • DEPLOYMENT_STOP
  • INSTANCE_START
  • INSTANCE_SUCCESS
  • INSTANCE_FAILURE

Você pode criar até 10 triggers por aplicação e pode conectar vários triggers para um único tópico, ou pode utilizar cada trigger em um tópico distinto. Você pode, também, usar qualquer um dos protocolos de entrega suportados pelo SNS (http, https, e-mail, SMS e mobile push). Outra opção é chamar uma função Lambda.

A criação de um trigger

Os triggers podem ser criados usando o AWS Management Console ou a AWS Command Line Interface (CLI). Vou usar o Console neste artigo. Eu configurei o aplicativo de exemplo do CodeDeploy (três instâncias t2.micro):

cd_demo_app_1

E, então, fiz uma implantação inicial:

cf_first_deploy_1

Depois criei um tópico SNS, subscrito por e-mail, e confirmei a inscrição:

cd_create_sns_topic_1

cd_sns_confirmed_2

Voltei para o console e abri o meu pedido no CodeDeploy:

cd_app_details_1

Abri o IAM em outra guia e atualizei a política associada com a função de serviço, dando permissão para gravar no SNS (você não vai precisar fazer isso se você selecionar o AWSCodeDeployRole para a sua aplicação):

cd_iam_sns_pub_1

De volta ao CodeDeploy, eu cliquei em Create trigger; entrou com um nome e eu escolhi meus eventos (todos eles para este exemplo) e selecionei meu tópico SNS no menu suspenso:

cd_create_trigger_1

Eu também poderia ter escolhido eventos individuais:

cd_pick_trigger_events_1

O trigger foi criado e exibido no Console:

cd_see_the_triggers_1

O CodeDeploy enviou uma mensagem de confirmação com o tópico que apareceu no topo da minha caixa de entrada:

cd_conf_email_1

Então, iniciei uma implantação e esperei os e-mails chegarem. Veja como se parecia:

cd_my_inbox_1

Eu usei e-mail para fins ilustrativos; em uma aplicação no mundo real, você provavelmente gostaria de escrever algum código para capturar e manipular as mensagens.

Os triggers já estão disponíveis e já você pode começar a usá-los.

Deixe suas dúvidas e/ou comentários aqui ou escreva diretamente para mim, em inglês.

Chef Evangelist na Amazon Web Services.

Ver perfil