Conceitos de notificação - Console do Developer Tools

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

Conceitos de notificação

Configurar e usar notificações é mais fácil se você entender os conceitos e termos. Veja alguns conceitos que você deve saber ao usar notificações.

Notificações

Uma notificação é uma mensagem que contém informações sobre eventos que ocorrem nos recursos que você e seus desenvolvedores usam. Você pode configurar notificações para que os usuários de um recurso, como um projeto de compilação, um repositório, um aplicativo de implantação ou um pipeline, recebam e-mails sobre os tipos de evento que você especifica de acordo com a regra de notificação que você cria.

As notificações para o AWS CodeCommit podem conter informações de identidade do usuário, como um nome de exibição ou um endereço de e-mail por meio do uso de tags de sessão. O CodeCommit oferece suporte ao uso de tags de sessão, que são atributos do par de chave/valor que você transmite quando assume uma função do IAM, usa credenciais temporárias ou federa um usuário no AWS Security Token Service (AWS STS). Você também pode associar tags a um usuário do IAM. O CodeCommit incluirá os valores para displayName e emailAddressno conteúdo de notificação se essas tags estiverem presentes. Para obter mais informações, consulte Uso de tags para fornecer informações adicionais de identidade no CodeCommit.

Importante

As notificações incluem informações específicas ao projeto, como status de compilações, status de implantação, linhas de código que têm comentários e aprovações de pipeline. O conteúdo da notificação pode mudar à medida que novos recursos são adicionados. Como prática recomendada de segurança, você deve revisar regularmente os destinos das regras de notificação e os assinantes do tópico do Amazon SNS. Para obter mais informações, consulte Noções básicas do conteúdo e da segurança das notificações.

Regras de notificação

Uma regra de notificação é um recurso da AWS que você cria para especificar quando e para onde as notificações são enviadas. Ela define:

  • As condições nas quais uma notificação é criada. Essas condições são baseadas em eventos que você escolhe, que são específicos ao tipo de recurso. Os tipos de recursos compatíveis incluem projetos de compilação no AWS CodeBuild, aplicativos de implantação no AWS CodeDeploy, pipelines no AWS CodePipeline e repositórios no AWS CodeCommit.

  • Os destinos aos quais a notificação é enviada. Você pode especificar até 10 destinos para uma regra de notificação.

As regras de notificação têm escopo para projetos de compilação, aplicativos de implantação, pipelines e repositórios individuais. As regras de notificação têm nomes amigáveis definidos pelo usuário e nomes de recurso da Amazon (ARNs). As regras de notificação devem ser criadas na mesma região da AWS em que está o recurso. Por exemplo, se o projeto de compilação estiver na região Leste dos EUA (Ohio), sua regra de notificação deverá ser criada na região Leste dos EUA (Ohio) também.

Você pode definir até 10 regras de notificação para um recurso.

Eventos

Um evento é uma alteração de estado em um recurso que você deseja monitorar. Cada recurso tem uma lista de tipos de evento que você pode escolher. Ao configurar uma regra de notificação em um recurso, você especifica os eventos que fazem com que as notificações sejam enviadas. Por exemplo, se você configurar notificações para um repositório no CodeCommit e selecionar Created (Criado) para Pull request (Solicitação pull) e Branches and tags (Ramificações e tags), uma notificação será enviada sempre que um usuário nesse repositório criar uma solicitação pull, uma ramificação ou uma tag Git.

Tipos de detalhes

Ao criar uma regra de notificação, é possível escolher o nível de detalhe ou o tipo de detalhe incluído nas notificações (Full (Completo) ou Basic (Básico)). A configuração Full (Completo) (padrão) inclui todas as informações disponíveis para o evento na notificação, incluindo as informações aprimoradas fornecidas pelos serviços para eventos específicos. A configuração Basic (Básico) inclui apenas um subconjunto das informações disponíveis.

A tabela a seguir lista as informações aprimoradas disponíveis para tipos de evento específicos e descreve as diferenças entre os tipos de detalhes.

Serviço Evento Full (Completo) inclui Basic (Básico) não inclui

CodeCommit

Comentários sobre confirmações

Comentários sobre solicitações pull

Todos os detalhes do evento e o conteúdo do comentário, incluindo respostas ou cadeias de comentários. Ele também inclui o número da linha e a linha do código em que o comentário foi feito.

O conteúdo do comentário, número da linha, linha do código ou cadeias de comentário.

CodeCommit

Solicitação pull criada

Todos os detalhes do evento e o número de arquivos que foram adicionados, modificados ou excluídos na solicitação pull em relação à ramificação de destino.

Nenhuma lista de arquivos ou detalhes sobre se a ramificação de origem da solicitação pull adicionou, modificou ou excluiu arquivos.

CodePipeline

Aprovação manual necessária

Todos os detalhes do evento e dados personalizados (se configurados). A notificação também inclui um link para a aprovação necessária no pipeline.

Nenhum link ou dado personalizado.

CodePipeline

Falha na execução da ação

Falha na execução do pipeline

Falha na execução do estágio

Todos os detalhes do evento e o conteúdo da mensagem de erro para a falha.

Nenhum conteúdo da mensagem de erro.

Destinos

Um destino é um local para receber notificações de regras de notificação. Os tipos de destino permitidos são tópicos do Amazon SNS e clientes do AWS Chatbot configurados para canais do Slack ou do Microsoft Teams. Qualquer usuário inscrito no tópico de destino recebe notificações sobre os eventos que você especificar na regra de notificação.

Se quiser estender o alcance das notificações, você poderá configurar a integração entre as notificações e o AWS Chatbot para que as notificações sejam enviadas para as salas de chat do Amazon Chime. Depois, você poderá selecionar o tópico do Amazon SNS configurado para esse cliente do AWS Chatbot como o destino da regra de notificação. Para obter mais informações, consulte Como integrar notificações com o AWS Chatbot e o Amazon Chime.

Se optar por usar um cliente do AWS Chatbot como destino, você deverá primeiro criar esse cliente no AWS Chatbot. Ao selecionar um cliente do AWS Chatbot como destino para uma regra de notificação, um tópico do Amazon SNS é configurado para esse cliente do AWS Chatbot com todas as políticas necessárias para que as notificações sejam enviadas para o canal do Slack ou do Microsoft Teams. Não é necessário configurar nenhum tópico do Amazon SNS existente para o cliente do AWS Chatbot.

Opte por criar um tópico do Amazon SNS como destino como parte da criação de uma regra de notificação (recomendado). Também é possível escolher um tópico do Amazon SNS existente na mesma região da AWS que a regra de notificação, mas você deve configurá-lo com a política necessária. O tópico do Amazon SNS que você usa para um destino deve estar em sua conta da AWS. Ele também deve estar na mesma região da AWS que a regra de notificação e o recurso da AWS para o qual a regra foi criada.

Por exemplo, se você criar uma regra de notificação para um repositório na região Leste dos EUA (Ohio), o tópico do Amazon SNS também deverá estar nessa região. Se você criar um tópico do Amazon SNS como parte da criação de uma regra de notificação, o tópico será configurado com a política necessária para permitir a publicação de eventos no tópico. Este é o melhor método para trabalhar com destinos e regras de notificação. Se você optar por usar um tópico já existente ou criar um manualmente, será necessário configurá-lo com as permissões necessárias para que os usuários recebam notificações. Para obter mais informações, consulte Configurar tópicos do Amazon SNS para notificações.

nota

Se desejar usar um tópico do Amazon SNS existente em vez de criar um novo, em Targets (Destinos), escolha o ARN. Certifique-se de que o tópico tenha a política de acesso adequada e que a lista de assinantes contenha apenas os usuários que têm permissão para ver informações sobre o recurso. Se o tópico do Amazon SNS já tiver sido usado para notificações do CodeCommit antes de 5 de novembro de 2019, ele terá uma política que permite ao CodeCommit publicar nele e que contém permissões diferentes daquelas exigidas pelo AWS CodeStar Notifications. Não é recomendado usar esses tópicos. Se desejar usar um tópico criado para essa experiência, será necessário adicionar a política exigida para o AWS CodeStar Notifications, além daquela já existente. Para obter mais informações, consulte Configurar tópicos do Amazon SNS para notificações e Noções básicas do conteúdo e da segurança das notificações.

Notificações e AWS CodeStar Notifications

Por ser um recurso do console do Developer Tools, as notificações têm sua própria API, o AWS CodeStar Notifications. Ele também tem seu próprio tipo de recurso da AWS (regras de notificação), permissões e eventos. Os eventos para regras de notificação são registrados no AWS CloudTrail. As ações de API podem ser permitidas ou negadas por meio de políticas do IAM.

Eventos para regras de notificação em repositórios

Categoria Eventos IDs de evento

Comentários

Em confirmações

Em solicitações pull

codecommit-repository-comments-on-commits

codecommit-repository-comments-on-pull-requests

Aprovações

Status alterado

Substituição de regra

codecommit-repository-approvals-status-changed

codecommit-repository-approvals-rule-override

Solicitação pull

Criado

Origem atualizada

Status alterado

Mesclado

codecommit-repository-pull-request-created

codecommit-repository-pull-request-source-updated

codecommit-repository-pull-request-status-changed

codecommit-repository-pull-request-merged

Ramificações e tags

Criado

Deleted (Excluído)

Atualizado

codecommit-repository-branches-and-tags-created

codecommit-repository-branches-and-tags-deleted

codecommit-repository-branches-and-tags-updated

Eventos para regras de notificação em projetos de compilação

Categoria Eventos IDs de evento

Estado da compilação

Reprovada

Bem-sucedido

Em andamento

Interrompida

codebuild-project-build-state-failed

codebuild-project-build-state-succeeded

codebuild-project-build-state-in-progress

codebuild-project-build-state-stopped

Fase da compilação

Falha

Bem-sucedida

codebuild-project-build-phase-failure

codebuild-project-build-phase-success

Eventos de regras de notificação em aplicações de implantação

Categoria Eventos IDs de evento

Implantação

Reprovada

Bem-sucedido

Started

codedeploy-application-deployment-failed

codedeploy-application-deployment-succeeded

codedeploy-application-deployment-started

Eventos para regras de notificação em pipelines

Categoria Eventos IDs de evento

Execução da ação

Bem-sucedido

Reprovada

Canceled

Started

codepipeline-pipeline-action-execution-succeeded

codepipeline-pipeline-action-execution-failed

codepipeline-pipeline-action-execution-canceled

codepipeline-pipeline-action-execution-started

Execução do estágio

Started

Bem-sucedido

Retomado

Canceled

Reprovada

codepipeline-pipeline-stage-execution-started

codepipeline-pipeline-stage-execution-succeeded

codepipeline-pipeline-stage-execution-resumed

codepipeline-pipeline-stage-execution-canceled

codepipeline-pipeline-stage-execution-failed

Execução do pipeline

Reprovada

Canceled

Started

Retomado

Bem-sucedido

Substituído

codepipeline-pipeline-pipeline-execution-failed

codepipeline-pipeline-pipeline-execution-canceled

codepipeline-pipeline-pipeline-execution-started

codepipeline-pipeline-pipeline-execution-resumed

codepipeline-pipeline-pipeline-execution-succeeded

codepipeline-pipeline-pipeline-execution-superseded

Aprovação manual

Reprovada

Necessário

Bem-sucedido

codepipeline-pipeline-manual-approval-failed

codepipeline-pipeline-manual-approval-needed

codepipeline-pipeline-manual-approval-succeeded