Tutoriel : Configuration d'une règle d' CloudWatch événements pour recevoir des notifications par e-mail en cas de modification de l'état du pipeline - AWS CodePipeline

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Tutoriel : Configuration d'une règle d' CloudWatch événements pour recevoir des notifications par e-mail en cas de modification de l'état du pipeline

Après avoir configuré un pipeline dans AWS CodePipeline, vous pouvez configurer une règle d' CloudWatch événements pour envoyer des notifications chaque fois que l'état d'exécution de vos pipelines ou les étapes ou actions de vos pipelines sont modifiés. Pour plus d'informations sur l'utilisation CloudWatch des événements pour configurer les notifications relatives aux modifications de l'état du pipeline, consultezSurveillance des CodePipeline événements.

Dans ce didacticiel, vous configurez une notification pour envoyer un e-mail lorsque l'état d'un pipeline passe à ÉCHEC. Ce didacticiel utilise une méthode de transformation d'entrée lors de la création de la règle CloudWatch Events. Elle transforme les détails de schéma du message pour diffuser le message en texte lisible.

Note

Lorsque vous créez les ressources pour ce didacticiel, telles que la notification Amazon SNS et la règle CloudWatch des événements, assurez-vous que les ressources sont créées dans la même AWS région que votre pipeline.

Étape 1 : configurer une notification par e-mail à l'aide d'Amazon SNS

Amazon SNS coordonne l'utilisation des rubriques pour envoyer des messages aux points de terminaison ou aux clients abonnés. Utilisez Amazon SNS pour créer un sujet de notification, puis abonnez-vous au sujet à l'aide de votre adresse e-mail. La rubrique Amazon SNS sera ajoutée en tant que cible à votre règle relative aux CloudWatch événements. Pour de plus amples informations, consultez dans le Guide du développeur Amazon Simple Notification Service.

Créez ou identifiez un sujet dans Amazon SNS. CodePipeline utilisera CloudWatch les événements pour envoyer des notifications relatives à cette rubrique via Amazon SNS. Pour créer une rubrique:

  1. Ouvrez la console Amazon SNS à l'adresse https://console.aws.amazon.com/sns.

  2. Choisissez Créer une rubrique.

  3. Dans la boîte de dialogue Créer une rubrique, pour Nom de rubrique, saisissez un nom de rubrique (par exemple PipelineNotificationTopic).

    Créez le sujet de notification à l'aide d'Amazon SNS.
  4. Choisissez Créer une rubrique.

    Pour plus d'informations, consultez la section Créer une rubrique dans le manuel Amazon SNS Developer Guide.

Abonnez un ou plusieurs destinataires à la rubrique pour recevoir des notifications par e-mail. Pour abonner un destinataire à une rubrique :

  1. Dans la console Amazon SNS, dans la liste des sujets, cochez la case à côté de votre nouveau sujet. Choisissez Actions, s'abonner à la rubrique.

  2. Dans la boîte de dialogue Créer un abonnement, vérifiez que l'ARN s'affiche dans ARN de la rubrique.

  3. Pour Protocole, choisissez E-mail.

  4. Indiquez l'adresse e-mail complète du destinataire dans Point de terminaison.

  5. Choisissez Create Subscription (Créer un abonnement).

  6. Amazon SNS envoie un e-mail de confirmation d'abonnement au destinataire. Pour recevoir des notifications par e-mail, un destinataire doit cliquer sur le lien Confirmer l'abonnement dans l'e-mail de confirmation. Une fois que le destinataire a cliqué sur le lien, s'il est correctement inscrit, Amazon SNS affiche un message de confirmation dans le navigateur Web du destinataire.

    Pour plus d'informations, consultez la section S'abonner à une rubrique dans le manuel Amazon SNS Developer Guide.

Étape 2 : Créer une règle et ajouter la rubrique SNS en tant que cible

Créez une règle de notification d' CloudWatch événements avec CodePipeline comme source d'événement.

  1. Ouvrez la CloudWatch console à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le volet de navigation, sélectionnez Events (Évènements).

  3. Choisissez Créer une règle. Sous Source d'événement, choisissez AWS CodePipeline. Pour Type d'événement, choisissez Changement d'état d'exécution du pipeline.

  4. Choisissez État(s) spécifique(s), puis FAILED.

  5. Cliquez sur Modifier pour ouvrir l'éditeur JSON pour le volet Aperçu du modèle d'événement. Ajoutez le paramètre pipeline avec le nom de votre pipeline comme indiqué dans l'exemple suivant pour un pipeline nommé « myPipeline. »

    Vous pouvez copier le modèle d'événement ici et le coller dans la console :

    { "source": [ "aws.codepipeline" ], "detail-type": [ "CodePipeline Pipeline Execution State Change" ], "detail": { "state": [ "FAILED" ], "pipeline": [ "myPipeline" ] } }
  6. Pour Targets (Cibles), choisissez Add target (Ajouter une cible).

  7. Dans la liste des cibles, sélectionnez Rubrique SNS. Pour Rubrique, saisissez la rubrique que vous avez créée.

  8. Développez Configurer l'entrée, puis choisissez Transformateur d'entrée.

  9. Dans la case Chemin d'entrée, saisissez les paires clé-valeur suivantes.

    { "pipeline" : "$.detail.pipeline" }

    Dans la case Modèle d'entrée, saisissez ce qui suit :

    "The Pipeline <pipeline> has failed."
  10. Choisissez Configure details (Configurer les détails).

  11. Sur la page Configure rule details, saisissez un nom et une description facultative. Pour État, gardez la case Activé sélectionnée.

  12. Choisissez Créer une règle.

  13. Confirmez CodePipeline que les notifications de build sont désormais envoyées. Par exemple, vérifiez si les e-mails de notification de build sont à présent dans votre boîte de réception.

  14. Pour modifier le comportement d'une règle, dans la CloudWatch console, choisissez la règle, puis sélectionnez Actions, Modifier. Modifiez la règle, choisissez Configurer les détails, puis choisissez Mettre à jour la règle.

    Pour arrêter d'utiliser une règle pour envoyer des notifications de build, dans la CloudWatch console, choisissez la règle, puis choisissez Actions, Désactiver.

    Pour supprimer une règle, dans la CloudWatch console, choisissez-la, puis choisissez Actions, Supprimer.

Étape 3 : Nettoyer les ressources

Une fois que vous avez terminé ce didacticiel, supprimez le pipeline, ainsi que les ressources qu'il utilise, afin d'éviter d'être facturé pour leur utilisation.

Pour plus d'informations sur la façon de nettoyer la notification SNS et de supprimer la règle Amazon CloudWatch Events, consultez Clean Up (Unsubscribe from an Amazon SNS topic) et consultez le manuel CloudWatch Amazon Events API DeleteRule Reference.