

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.

# Exécutez l'exemple de GitHub pull request et de filtre webhook pour CodeBuild
<a name="sample-github-pull-request"></a>

AWS CodeBuild prend en charge les webhooks lorsque le référentiel source l'est GitHub. Cela signifie que pour un projet de CodeBuild compilation dont le code source est stocké dans un GitHub référentiel, les webhooks peuvent être utilisés pour reconstruire le code source chaque fois qu'une modification de code est envoyée au référentiel. Pour CodeBuild des exemples, voir [AWS CodeBuild Échantillons](https://github.com/aws-samples/aws-codebuild-samples).

**Note**  
Lors de l'utilisation de webhooks, il est possible pour un utilisateur de déclencher une compilation inattendue. Pour atténuer ce risque, voir[Bonnes pratiques d'utilisation des webhooks](webhooks.md#webhook-best-practices).

**Topics**
+ [

## Étape 1 : créer un projet de construction avec GitHub et activer les webhooks
](#sample-github-pull-request-running)
+ [

## Étape 2 : Vérifiez que les webhooks sont activés
](#verification-checks)

## Étape 1 : créer un projet de construction avec GitHub et activer les webhooks
<a name="sample-github-pull-request-running"></a>

1. Ouvrez la AWS CodeBuild console sur [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1.  Si une page CodeBuild d'informations s'affiche, choisissez **Créer un projet de construction**. Sinon, dans le volet de navigation, développez **Build****, choisissez Build projects**, puis **Create build project**. 

1. Choisissez **Créer un projet de génération**. 

1. Dans **Configuration de projet** :  
**Nom du projet**  
Entrez un nom pour ce projet de construction. Les noms des projets de construction doivent être uniques pour chaque AWS compte. Vous pouvez également inclure une description facultative du projet de construction pour aider les autres utilisateurs à comprendre à quoi sert ce projet.

1. Dans **Source**:  
**Fournisseur de source**  
Sélectionnez **GitHub**. Suivez les instructions pour vous connecter (ou vous reconnecter) à, GitHub puis choisissez **Autoriser**.  
**Référentiel**  
Choisissez **Repository dans mon GitHub compte**.  
**GitHub référentiel**  
Entrez l'URL de votre GitHub dépôt.

1. Dans **Événements webhook de la source principale**, sélectionnez ce qui suit.
**Note**  
La section des **événements du webhook de la source principale** n'est visible que si vous avez choisi **Repository dans mon GitHub compte** à l'étape précédente.

   1. Sélectionnez **Rebuild every time a code change is pushed to this repository (Reconstruire à chaque fois qu'une modification de code est transférée dans ce référentiel)** lorsque vous créez votre projet. 

   1. Dans **Event type (Type d'événement)**, choisissez un ou plusieurs événements. 

   1. Pour filtrer le moment où un événement déclenche une génération, sous **Start a build under these conditions (Lancer une génération dans ces conditions)**, ajoutez un ou plusieurs filtres facultatifs. 

   1. Pour filtrer le moment où un événement n'est pas déclenché, sous **Don't start a build under these conditions (Ne pas lancer de génération dans ces conditions)**, ajoutez un ou plusieurs filtres facultatifs. 

   1. Choisissez **Ajouter un groupe de filtres** pour ajouter un autre groupe de filtres, si nécessaire. 

   Pour plus d'informations sur les types d'événements et les filtres GitHub Webhook, consultez[GitHub événements webhook](github-webhook.md).

1. Dans **Environment (Environnement)** :  
**Image de l'environnement**  
Sélectionnez l’une des méthodes suivantes :    
Pour utiliser une image Docker gérée par AWS CodeBuild :  
Choisissez **Image gérée**, puis sélectionnez **Système d'exploitation**, **Runtime (s)**, **Image** et **Version de l'image**. Effectuez votre sélection pour **Type d'environnement** si cette option est disponible.  
Pour utiliser une autre image Docker :  
Choisissez **Image personnalisée**. Pour le **type d'environnement**, choisissez **ARM**, **Linux****, Linux GPU** ou **Windows**. Si vous choisissez **Other registry (Autre registre)**, pour **External registry URL (URL du registre externe)**, entrez le nom et la balise de l'image Docker dans Docker Hub au format `docker repository/docker image name`. Si vous choisissez **Amazon ECR**, utilisez le **référentiel Amazon ECR** et l'image **Amazon ECR pour choisir l'image** Docker dans votre compte. AWS   
Pour utiliser une image Docker privée :  
Choisissez **Image personnalisée**. Pour le **type d'environnement**, choisissez **ARM**, **Linux****, Linux GPU** ou **Windows**. Pour **Image registry (Registre de l'image)**, choisissez **Other registry (Autre registre)** et entrez l'ARN des informations d'identification de votre image Docker privée. Les informations d'identification doivent être créées par Secrets Manager. Pour plus d'informations, voir [Qu'est-ce que c'est AWS Secrets Manager ?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/) dans le *guide de AWS Secrets Manager l'utilisateur*.  
**Rôle de service**  
Sélectionnez l’une des méthodes suivantes :  
   + Si vous n'avez pas de rôle CodeBuild de service, choisissez **Nouveau rôle de service**. Dans **Role name**, entrez un nom pour le nouveau rôle.
   + Si vous avez un rôle CodeBuild de service, choisissez **Rôle de service existant**. Dans **Role ARN**, choisissez le rôle de service.
Lorsque vous utilisez la console pour créer ou mettre à jour un projet de génération, vous pouvez créer un rôle de CodeBuild service en même temps. Par défaut, le rôle fonctionne avec ce projet de génération uniquement. Si vous utilisez la console pour associer ce rôle de service à un autre projet de génération, le rôle est mis à jour pour fonctionner avec l'autre projet de génération. Un rôle de service peut fonctionner avec 10 projets de génération maximum.

1. Dans **Buildspec, effectuez** l'une des opérations suivantes :
   + Choisissez **Utiliser un fichier buildspec pour utiliser le fichier** buildspec.yml dans le répertoire racine du code source.
   + Choisissez **Insérer des commandes** de génération pour utiliser la console pour insérer des commandes de génération.

   Pour de plus amples informations, veuillez consulter [Référence des spécifications de génération](build-spec-ref.md).

1. Dans **Artefacts**:  
**Type**  
Sélectionnez l’une des méthodes suivantes :  
   + Si vous ne souhaitez pas créer d'artefacts de sortie de génération, choisissez **Aucun artefact**.
   + Pour stocker le résultat du build dans un compartiment S3, choisissez **Amazon S3**, puis procédez comme suit :
     + Si vous souhaitez utiliser votre nom de projet pour le dossier ou le fichier ZIP de sortie de génération, ne renseignez pas le champ **Nom**. Sinon, entrez le nom. Par défaut, le nom d'un artefact est le nom du projet. Si vous souhaitez utiliser un autre nom, entrez-le dans la zone Nom des artefacts. Si vous souhaitez générer un fichier ZIP, incluez l'extension zip.
     + Pour **Nom du compartiment**, choisissez le nom du compartiment de sortie.
     + Si vous avez sélectionné **Insérer des commandes de génération** précédemment dans cette procédure, pour **Fichiers de sortie**, saisissez les emplacements des fichiers de la génération que vous souhaitez placer dans le dossier ou le fichier ZIP de sortie de génération. Pour plusieurs emplacements, séparez ceux-ci avec une virgule (par exemple, `appspec.yml, target/my-app.jar`). Pour de plus amples informations, consultez la description de `files` dans [Syntaxe d'un fichier buildspec](build-spec-ref.md#build-spec-ref-syntax).  
**Configuration supplémentaire**  
Développez **Additional configuration (Configuration supplémentaire)** et définissez les options dont vous avez besoin.

1. Choisissez **Créer un projet de génération**. Sur la page **Révision**, choisissez **Démarrer la génération** pour exécuter la génération.

## Étape 2 : Vérifiez que les webhooks sont activés
<a name="verification-checks"></a>

1. Ouvrez la AWS CodeBuild console sur [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. Dans le volet de navigation, choisissez **Projets de génération**.

1. Effectuez l’une des actions suivantes :
   + Cliquez sur le lien du projet de build avec des webhooks que vous souhaitez réviser, puis choisissez **Build details (Détails de build)**.
   + Cliquez sur le bouton à côté du projet de génération avec les webhooks que vous souhaitez vérifier, choisissez **Afficher les détails**, puis choisissez l'onglet **Détails de la construction**.

1. Dans **Événements du webhook de la source principale**, choisissez le lien URL du **webhook**. 

1. Dans votre GitHub dépôt, sur la page **Paramètres**, sous **Webhooks**, vérifiez que les **Pull Requests** et **Push sont sélectionnés**.

1. Dans les paramètres de votre GitHub profil, sous **Paramètres personnels**, **Applications**, ** OAuthApplications autorisées**, vous devriez voir que votre application a été autorisée à accéder à la AWS région que vous avez sélectionnée.