

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.

# Création d'une règle de notification
<a name="notification-rule-create"></a>

Vous pouvez utiliser la console Developer Tools ou AWS CLI créer des règles de notification. Vous pouvez créer une rubrique Amazon SNS à utiliser comme cible d'une règle de notification dans le cadre de la création de la règle. Si vous souhaitez utiliser un client AWS Chatbot comme cible, vous devez créer ce client avant de créer la règle. Pour de plus amples informations, veuillez consulter [Configuration d'un client AWS Chatbot pour une chaîne Slack](notifications-chatbot.md#notifications-chatbot-configure-client).<a name="notification-rule-create-console"></a>

# Pour créer une règle de notification (console)
<a name="notification-rule-create-console"></a>

1. Ouvrez la console AWS Developer Tools dans [https://console.aws.amazon.com/codesuite/Paramètres/notifications](https://console.aws.amazon.com/codesuite/settings/notifications/).

1. Utilisez la barre de navigation pour accéder à la ressource. 
   + Pour CodeBuild, choisissez **Build**, **Build projects**, puis choisissez un projet de build.
   + Pour CodeCommit, choisissez **Source**, sélectionnez **Référentiels**, puis choisissez un référentiel.
   + Pour CodeDeploy, choisissez **Applications**, puis choisissez une application.
   + Pour CodePipeline, choisissez **Pipeline**, choisissez **Pipelines**, puis choisissez un pipeline.

1. Sur la page des ressources, choisissez **Notify (Notifier)**, puis **Create notification rule (Créer une règle de notification)**. Vous pouvez également accéder à la page **Settings (Paramètres)** de la ressource, accéder à **Notifications** ou **Notification rules (Règles de notification)**, puis choisir **Create notification rule (Créer une règle de notification)**.

1. Dans **Notification name (Nom de la notification)**, saisissez le nom de la règle.

1. Dans **Type de détail**, choisissez **Basic** si vous souhaitez que seules les informations fournies à Amazon soient EventBridge incluses dans la notification. Choisissez **Complet** si vous souhaitez inclure les informations fournies à Amazon EventBridge et les informations susceptibles d'être fournies par le service de ressources ou le gestionnaire de notifications.

   Pour de plus amples informations, veuillez consulter [Présentation du contenu des notifications et de la sécurité](security.md#security-notifications).

1.  Dans **Événements qui déclenchent des notifications**, sélectionnez les événements pour lesquels vous souhaitez envoyer des notifications. Pour les types d'événement d'une ressource, veuillez consulter les rubriques suivantes :
   + CodeBuild: [Événements pour les règles de notification sur les projets de génération](concepts.md#events-ref-buildproject)
   + CodeCommit: [Événements pour les règles de notification sur les référentiels](concepts.md#events-ref-repositories)
   + CodeDeploy: [Événements pour les règles de notification sur les applications de déploiement](concepts.md#events-ref-deployapplication)
   + CodePipeline: [Événements pour les règles de notification sur les pipelines](concepts.md#events-ref-pipeline)

1. Dans **Targets (Cibles)**, effectuez l'une des actions suivantes :
   + Si vous avez déjà configuré une ressource à utiliser avec les notifications, dans **Choisir un type de cible**, choisissez **AWS Chatbot (Slack)**, **AWS Chatbot (Microsoft Teams)** ou **Rubrique SNS**. Dans **Choisir une cible**, choisissez le nom du client (pour un client Slack ou Microsoft Teams configuré dans AWS Chatbot) ou le nom de ressource Amazon (ARN) du sujet Amazon SNS (pour les sujets Amazon SNS déjà configurés avec la politique requise pour les notifications).
   + Si vous n'avez pas configuré de ressource à utiliser avec les notifications, choisissez **Create target (Créer une cible)**, puis **SNS topic (Rubrique SNS)**. Donnez un nom à la rubrique après **codestar-notifications-**, puis choisissez **Create (Créer)**.
**Note**  
Si vous créez la rubrique Amazon SNS dans le cadre de la création de la règle de notification, la stratégie qui permet à la fonctionnalité de notifications de publier des événements dans la rubrique est appliquée automatiquement. L'utilisation d'une rubrique créée pour les règles de notification vous permet de vous assurer que vous n'abonnez que les utilisateurs qui doivent recevoir des notifications sur ce référentiel.
Vous ne pouvez pas créer de client AWS Chatbot dans le cadre de la création d'une règle de notification. Si vous choisissez AWS Chatbot (Slack) ou Chatbot AWS (Microsoft Teams), vous verrez un bouton vous demandant de configurer un client dans Chatbot. AWS Le choix de cette option ouvre la console AWS Chatbot. Pour de plus amples informations, veuillez consulter [Configuration d'un client AWS Chatbot pour une chaîne Slack](notifications-chatbot.md#notifications-chatbot-configure-client).
Si vous souhaitez utiliser une rubrique Amazon SNS existante comme cible, vous devez ajouter la politique requise pour les AWS CodeStar notifications en plus de toute autre politique susceptible d'exister pour cette rubrique. Pour plus d’informations, consultez [Configurer une rubrique Amazon SNS pour les notifications](set-up-sns.md) et [Présentation du contenu des notifications et de la sécurité](security.md#security-notifications). 


1. Choisissez **Submit (Envoyer)**, puis passez en revue la règle de notification créée.
**Note**  
Les utilisateurs doivent s'abonner et confirmer leurs abonnements à la rubrique Amazon SNS que vous avez spécifiée comme cible de la règle avant de recevoir des notifications. Pour de plus amples informations, veuillez consulter [Pour abonner les utilisateurs à une rubrique Amazon SNS utilisée pour les notifications](subscribe-users-sns.md#set-up-sns-subscribe).<a name="notification-rule-create-cli"></a>

# Pour créer une règle de notification (AWS CLI)
<a name="notification-rule-create-cli"></a>

1. À partir d'un terminal ou d'une invite de commandes, exécutez la commande **create-notification rule** pour générer le squelette JSON.

   ```
   aws codestar-notifications create-notification-rule --generate-cli-skeleton > rule.json
   ```

   Vous pouvez donner au fichier le nom de votre choix. Dans cet exemple, le fichier est nommé *rule.json*.

1. Ouvrez le fichier JSON dans un éditeur de texte brut et modifiez-le pour y inclure la ressource, les types d'événements et la cible Amazon SNS souhaités pour la règle. 

   L'exemple suivant montre une règle de notification nommée **MyNotificationRule** d'après un référentiel nommé *MyDemoRepo* dans un AWS compte avec cet ID*123456789012*. Les notifications avec le type de détail complet sont envoyées à une rubrique Amazon SNS nommée *MyNotificationTopic* lorsque les branches et les balises sont créées. 

   ```
   {
       "Name": "MyNotificationRule",
       "EventTypeIds": [
           "codecommit-repository-branches-and-tags-created"
       ],
       "Resource": "arn:aws:codecommit:us-east-1:123456789012:MyDemoRepo",
       "Targets": [
           {
               "TargetType": "SNS",
               "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic"
           }
       ],
       "Status": "ENABLED",
       "DetailType": "FULL"
   }
   ```

   Enregistrez le fichier.

1. À l'aide du fichier que vous venez de modifier, à partir du terminal ou de la ligne de commande, exécutez à nouveau la commande **create-notification-rule** pour créer la règle de notification.

   ```
   aws codestar-notifications create-notification-rule --cli-input-json  file://rule.json
   ```

1. En cas de réussite, la commande renvoie l'ARN de la règle de notification, comme suit :

   ```
   {
       "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
   }
   ```<a name="notification-rule-list-event-types"></a>

# Pour répertorier les types d'événement pour les règles de notification (AWS CLI)
<a name="notification-rule-list-event-types"></a>

1. À partir d'un terminal ou d'une invite de commande, exécutez la commande **list-event-types**. Vous pouvez utiliser l'option `--filters` pour limiter la réponse à un type de ressource spécifique ou à un autre attribut. Par exemple, ce qui suit renvoie une liste des types d'événements pour les CodeDeploy applications.

   ```
   aws codestar-notifications list-event-types --filters Name=SERVICE_NAME,Value=CodeDeploy
   ```

1. Le résultat produit lors de l’exécution de cette commande est semblable à ce qui suit :

   ```
   {
       "EventTypes": [
           {
               "EventTypeId": "codedeploy-application-deployment-succeeded",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Succeeded",
               "ResourceType": "Application"
           },
           {
               "EventTypeId": "codedeploy-application-deployment-failed",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Failed",
               "ResourceType": "Application"
           },
           {
               "EventTypeId": "codedeploy-application-deployment-started",
               "ServiceName": "CodeDeploy",
               "EventTypeName": "Deployment: Started",
               "ResourceType": "Application"
           }
       ]
   }
   ```<a name="notification-rule-add-tag"></a>

# Pour ajouter une balise à une règle de notification (AWS CLI)
<a name="notification-rule-add-tag"></a>

1. À partir d'un terminal ou d'une invite de commande, exécutez la commande **tag-resource**. Par exemple, utilisez la commande suivante pour ajouter une paire clé-valeur de balise portant le nom *Team* et la valeur. *Li\$1Juan*

   ```
   aws codestar-notifications tag-resource --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE --tags Team=Li_Juan
   ```

1. Le résultat produit lors de l’exécution de cette commande est semblable à ce qui suit :

   ```
   {
       "Tags": {
           "Team": "Li_Juan"
       }
   }
   ```