

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.

# Connecter GitHub
<a name="connecting-to-cicd-pipelines-connecting-github"></a>

GitHub l'intégration permet à l' AWS DevOps agent d'accéder aux référentiels de code et de recevoir les événements de déploiement lors des enquêtes sur les incidents. Cette intégration suit un processus en deux étapes : enregistrement au niveau du compte GitHub, suivi de la connexion de référentiels spécifiques à des espaces d'agent individuels.

AWS DevOps L'agent prend en charge GitHub.com (SaaS), le cloud GitHub d'entreprise avec résidence de données (`*.ghe.com`) et les instances GitHub Enterprise Server (auto-hébergées).

## Conditions préalables
<a name="prerequisites"></a>

Avant de vous connecter GitHub, assurez-vous d'avoir :
+ Accès à la console d'administration de AWS DevOps l'agent
+ Un compte GitHub utilisateur ou une organisation avec des autorisations d'administrateur
+ Autorisation d'installer GitHub des applications sur votre compte ou votre organisation

Pour GitHub Enterprise Server, vous devez également :
+ Une instance de serveur GitHub d'entreprise (version 3.x ou ultérieure) accessible via HTTPS
+ L'URL HTTPS de votre instance de serveur GitHub d'entreprise (par exemple,`https://github.example.com`)
+ (Facultatif) Une connexion privée, si votre instance de serveur GitHub d'entreprise n'est pas accessible au public

Pour le cloud GitHub d'entreprise avec résidence des données, vous devez également :
+ Une organisation GitHub Enterprise Cloud avec la résidence des données activée, hébergée sur votre `*.ghe.com` sous-domaine dédié
+ Autorisations d'administrateur de l'organisation, y compris l'autorisation de créer et d'installer GitHub des applications
+ L'URL HTTPS de votre instance de résidence de données (par exemple,`https://octocorp.ghe.com`)

## Inscription GitHub (au niveau du compte)
<a name="registering-github-account-level"></a>

GitHub est enregistré au niveau du AWS compte et partagé entre tous les espaces d'agent de ce compte. Chaque enregistrement correspond à un GitHub utilisateur, à une organisation ou à une instance GitHub d'Enterprise Server.

### Étape 1 : Accédez aux fournisseurs de pipeline
<a name="step-1-navigate-to-pipeline-providers"></a>

1. Connectez-vous à la console AWS de gestion

1. Accédez à la console de AWS DevOps l'agent

1. Accédez à l'onglet **Fonctionnalités**

1. Dans la section **Pipeline**, choisissez **Ajouter**

1. Sélectionnez **GitHub**dans la liste des fournisseurs disponibles

Si ce GitHub n'est pas encore le cas, il vous sera d'abord demandé de l'enregistrer.

### Étape 2 : Choisissez le type de connexion
<a name="step-2-choose-connection-type"></a>

Sur l'écran « Enregistrer un GitHub compte/une organisation », indiquez si vous vous connectez en tant qu'utilisateur ou en tant qu'organisation :
+ **Utilisateur** — Votre GitHub compte personnel avec un nom d'utilisateur et un profil
+ **Organisation** : GitHub compte partagé où plusieurs personnes peuvent collaborer sur de nombreux projets à la fois. Si vous sélectionnez **Organisation**, entrez le nom de GitHub l'organisation. Le nom doit correspondre exactement au nom de votre GitHub organisation, car vous devez autoriser et installer l'application sur cette organisation en suivant les étapes suivantes.

Sélectionnez les **autorisations d'GitHub application** pour votre GitHub application. Le niveau d'autorisation détermine les actions que l' GitHub application peut effectuer dans votre référentiel :
+ **Lecture et écriture** (par défaut) : l' GitHub application demande des autorisations de lecture et d'écriture. Cela active toutes les fonctionnalités. DevOps L'agent peut publier des commentaires sur les pull requests en ligne, proposer des correctifs et déclencher des flux de travail.
+ **Lecture seule** : l' GitHub application demande uniquement des autorisations de lecture. DevOps L'agent peut consulter le code et les pull requests, mais ne peut pas publier de commentaires, proposer des correctifs ou déclencher des flux de travail.

Si vous vous connectez à une instance GitHub Enterprise Server, choisissez **Utiliser GitHub Enterprise** et entrez l'URL HTTPS de votre instance (par exemple,`https://github.example.com`).

Si votre instance GitHub Enterprise Server n'est pas accessible au public, vous pouvez éventuellement configurer une connexion privée pour permettre à l' AWS DevOps agent d'accéder à votre instance en toute sécurité. Pour de plus amples informations, veuillez consulter [Connexion à des outils hébergés en privé](configuring-integrations-and-knowledge-connecting-to-privately-hosted-tools.md).

**Note**  
**N'incluez `/api/v3` aucun chemin de fin dans l'URL. Entrez uniquement l'URL de base.

Pour le cloud GitHub d'entreprise avec résidence de données, choisissez **Utiliser l' GitHub entreprise** et entrez l'URL HTTPS de votre instance de résidence de données (par exemple,`https://octocorp.ghe.com`).

### Étape 3 : configurer l' GitHub application
<a name="step-3-set-up-the-github-app"></a>

Choisissez **Soumettre** pour commencer le processus de configuration de l'application. Les étapes suivantes varient selon que vous vous connectez à un serveur GitHub.com d' GitHub entreprise ou à un cloud GitHub d'entreprise avec résidence des données.

#### Pour GitHub.com
<a name="for-githubcom"></a>

1. GitHub vous redirige pour vous connecter et autoriser AWS DevOps l'agent.

1. Passez en revue la demande d'autorisation et autorisez AWS DevOps l'agent.

1. Une fois que vous avez autorisé, l' AWS DevOps agent termine l'enregistrement. Si l' GitHub application n'est pas encore installée sur le compte ou l'organisation que vous avez indiqué, passez à la page d'installation (voir l'étape 4). Si l'application est déjà installée, l'enregistrement se termine sans la réinstaller.

1. Après l'installation, l' AWS DevOps agent reçoit les événements de vos référentiels connectés, y compris les événements de déploiement.

**Note**  
**Vous devez autoriser et installer l'application sur le même utilisateur ou organisation que vous avez indiqué lors de votre inscription. Si vous autorisez ou effectuez l'installation sur un autre compte ou une autre organisation, l'enregistrement échoue et vous devez recommencer le processus en sélectionnant le compte ou l'organisation appropriés.

**Note**  
** AWS DevOps L'agent utilise une GitHub application distincte pour chaque niveau d'autorisation (lecture et écriture et lecture seule), et chaque application est autorisée indépendamment. GitHub mémorise une autorisation jusqu'à ce que vous la révoquiez dans Paramètres > Applications > GitHub Applications autorisées. Si vous avez déjà autorisé l'application à ce niveau d'autorisation, vous GitHub pouvez ignorer l'écran d'autorisation. Si vous modifiez le niveau d'autorisation, vous GitHub invite à autoriser l'application correspondante pour la première fois.

#### Pour GitHub Enterprise Server et GitHub Enterprise Cloud avec résidence des données
<a name="for-github-enterprise-server-and-github-enterprise-cloud-with-data-residency"></a>

GitHub Enterprise Server et GitHub Enterprise Cloud avec résidence des données utilisent tous deux le flux GitHub App Manifest, qui configure automatiquement une nouvelle GitHub application sur votre instance. Lors de la configuration, votre navigateur est redirigé deux fois : une fois vers votre instance et une fois de nouveau vers AWS DevOps l'Agent.

1. AWS DevOps L'agent redirige votre navigateur vers la page **Create GitHub App** de votre instance GitHub Enterprise.

1. Le nom de l'application est prérempli. Modifiez le nom si nécessaire, puis choisissez **Create GitHub App**.

1. Une fois que AWS DevOps l'Agent a redirigé votre navigateur, il échange le code manifeste contre les informations d'identification de l'application.

### Étape 4 : sélectionner les référentiels et terminer l'installation
<a name="step-4-select-repositories-and-complete-installation"></a>

Ignorez cette étape si l' GitHub application est déjà installée sur votre compte ou votre organisation.

1. La page **d'installation et d'autorisation** de l' GitHub application s'affiche.

1. Sélectionnez les référentiels auxquels l'application doit accéder :
   + **Tous les référentiels** : accordez l'accès à tous les référentiels actuels et futurs
   + **Sélectionnez uniquement les référentiels** : choisissez des référentiels spécifiques à partir de votre compte ou de votre organisation

1. Choisissez **Installer et autoriser**.

1. Vous serez redirigé vers la console de l' AWS DevOps agent, où GitHub vous serez enregistré au niveau du compte.

## Connexion de référentiels à un espace d'agents
<a name="connecting-repositories-to-an-agent-space"></a>

Une fois enregistré GitHub au niveau du compte, vous pouvez connecter des référentiels spécifiques à des espaces d'agent individuels :

1. Dans la console AWS DevOps Agent, sélectionnez votre espace agent

1. Accédez à l'onglet **Fonctionnalités**

1. Dans la section **Pipeline**, choisissez **Ajouter**

1. Sélectionnez **GitHub**dans la liste des fournisseurs disponibles

1. Sélectionnez l' GitHub enregistrement qui contient les référentiels que vous souhaitez utiliser

1. Sélectionnez le sous-ensemble de référentiels correspondant à cet espace agent

1. Choisissez **Ajouter** pour terminer la connexion

Vous pouvez connecter différents ensembles de référentiels à différents espaces d'agent en fonction des besoins de votre organisation. Un seul agent Space peut utiliser des référentiels issus de plusieurs enregistrements. Pour ajouter des référentiels provenant d'un autre enregistrement, répétez ces étapes.

## Configuration de la révision du code et des tests automatisés
<a name="configuring-code-review-and-automated-testing"></a>

Lorsque vous sélectionnez des référentiels à l'étape de GitHub connexion, ils sont automatiquement ajoutés à la section **Révision du code et tests automatisés**. Cette section définit les référentiels qui déclenchent automatiquement un [Révisions du code de préparation à la publication](release-management-release-readiness-code-review.md) et les fonctionnalités de test automatisées.

La configuration de la révision du code et des tests automatisés inclut :
+ **Fonctionnalités** — Choisissez des fonctionnalités de révision du code et de test automatique pour chaque référentiel. La section fournit deux paramètres par référentiel :
  + **Examen automatique des modifications par déclenchement** : lorsqu'il est activé pour un référentiel, DevOps l'agent exécute automatiquement une pull request [Révisions du code de préparation à la publication](release-management-release-readiness-code-review.md) chaque fois qu'une pull request est ouverte ou mise à jour. Les résultats de l'examen apparaissent sous forme de commentaires intégrés sur la pull request. Ceci est activé par défaut pour tous les référentiels connectés.
  + **Tests de vérification automatisés** : lorsqu'il est activé pour un référentiel, DevOps l'agent crée, exécute et teste les modifications apportées au code dans un environnement de vérification géré lors de la révision du code. Cela permet une validation fonctionnelle allant au-delà de l'analyse statique. Pour plus d'informations, consultez la section [Tests de vérification automatisés](release-management-release-readiness-code-review.md). Ceci est activé par défaut pour tous les référentiels connectés.
+ **Liste des référentiels** : affiche tous les référentiels que vous avez sélectionnés lors de l'étape de connexion. Utilisez le champ de recherche pour filtrer les référentiels par nom. Chaque référentiel comporte des cases à cocher indépendantes pour les deux fonctionnalités.
+ **Rôle d'exécution** (facultatif) — Choisissez le rôle IAM que l' DevOps agent assume pour exécuter les fonctionnalités automatisées sur les référentiels que vous avez sélectionnés. Ce rôle est utilisé pour accéder aux services internes nécessaires lors des builds, tels que les registres de packages privés et les systèmes de stockage d'artefacts. Nous vous recommandons d'utiliser un rôle différent de votre rôle d'agent principal.

Pour configurer les révisions automatisées, procédez comme suit :

1. Après avoir connecté vos référentiels, accédez à la section **Révision du code et tests automatisés** dans vos paramètres GitHub d'intégration.

1. Pour chaque référentiel, activez ou désactivez la fonctionnalité de **révision automatique des modifications** selon que vous souhaitez ou non des révisions automatiques des pull requests.

1. Pour chaque référentiel, activez ou désactivez la fonctionnalité de **test de vérification automatique** selon que vous souhaitez ou non des [tests de vérification automatisés](release-management-release-readiness-code-review.md) dans un environnement de vérification géré.

1. Vous pouvez éventuellement sélectionner un rôle IAM dans la liste déroulante des rôles **d'exécution** que l' DevOps agent assumera lors de l'exécution des fonctionnalités automatisées sur les référentiels que vous avez sélectionnés.

1. Choisissez **Enregistrer** pour appliquer votre configuration.

Une fois configurée, toute nouvelle pull request dans un référentiel où la révision des **modifications par déclenchement automatique est activée déclenchera automatiquement une révision** du code de préparation à la version. Si les **tests de vérification automatisés** sont également activés, la révision inclut la validation fonctionnelle dans un environnement de vérification. Pour plus d'informations sur les révisions de code, consultez[Révisions du code de préparation à la publication](release-management-release-readiness-code-review.md).

## Comprendre l' GitHub application
<a name="understanding-the-github-app"></a>

L' GitHub application AWS DevOps Agent :
+ Demande l'accès à vos référentiels : vous pouvez consulter les autorisations spécifiques lors de l'installation de GitHub l'application
+ Reçoit les événements de déploiement et autres événements du référentiel
+ Permet à AWS DevOps l'agent de corréler les modifications de code avec les incidents opérationnels
+ Peut être désinstallé à tout moment via vos GitHub paramètres

Pour GitHub Enterprise Server et GitHub Enterprise Cloud avec résidence des données, AWS DevOps l'agent crée automatiquement l' GitHub application sur votre instance lors de l'enregistrement. Vous pouvez gérer l'accès au référentiel de l'application ou la désinstaller via **Paramètres > Applications > GitHub Applications installées**. Pour supprimer complètement la définition de l'application, accédez à **Réglages > Paramètres du développeur > GitHub Applications**.

## GitHub Mises à jour des autorisations de
<a name="github-app-permission-updates"></a>

AWS DevOps L'agent peut demander des mises à jour des autorisations après avoir installé l' GitHub application pour prendre en charge les nouvelles fonctionnalités. Lorsque cela se produit :

1. Vous recevrez une notification GitHub concernant la demande de mise à jour des autorisations.

1. Consultez les détails de la mise à jour pour comprendre quelles nouvelles autorisations sont demandées.

1. Choisissez **Accepter les nouvelles autorisations** pour accorder les autorisations mises à jour.

Aucune modification n'est requise dans votre service ou votre application. Une fois que vous avez accepté les autorisations mises à jour, le jeton d'accès à l'installation suivant demandé par GitHub l' AWS DevOps agent inclura automatiquement les nouvelles autorisations.

**Note**  
**Jusqu'à ce que vous acceptiez une mise à jour des autorisations, l' AWS DevOps agent continue de fonctionner avec les autorisations précédemment accordées. Les nouvelles fonctionnalités qui dépendent des autorisations mises à jour ne seront pas disponibles tant que vous n'aurez pas approuvé la demande. L'application conservera ses autorisations actuelles si vous choisissez de ne pas accepter les nouvelles autorisations.

### Autorisations demandées
<a name="requested-permissions"></a>

Le tableau suivant décrit chaque autorisation demandée par l' GitHub application AWS DevOps Agent et explique pourquoi elle est nécessaire.

Si vous avez sélectionné **Lecture seule** lors de l'enregistrement, l' GitHub application demande un accès en lecture uniquement pour chaque autorisation indiquée dans le tableau suivant. Avec les autorisations en lecture seule, l' GitHub application ne peut pas effectuer les actions de niveau écriture répertoriées dans la colonne **Objectif**.


| Autorisations | Niveau d’accès | Objectif | 
| --- | --- | --- | 
| Chèques | Lisez et écrivez | La révision du code de préparation après la publication donne des résultats lorsque la vérification est exécutée sur les pull requests, ce qui permet d'afficher le statut de la révision directement dans l' GitHub interface utilisateur. | 
| Flux de travail | Lisez et écrivez | Lisez les définitions des flux de travail et déclenchez GitHub les flux de travail Actions pour tester les versions dans vos CI/CD pipelines. | 
| Actions | Lisez et écrivez | Surveillez GitHub les exécutions du flux de travail Actions et accédez aux journaux d'exécution lors des enquêtes sur les incidents et des tests de version. | 
| Table des matières | Lisez et écrivez | Lisez le code source du référentiel pour une analyse de révision du code et un mappage des dépendances. L'accès en écriture permet à l'agent de proposer des solutions aux problèmes identifiés. | 
| Demandes pull | Lisez et écrivez | Lisez les détails des pull requests pour déclencher des révisions de code automatisées. L'accès par écrit permet de publier des commentaires d'évaluation en ligne contenant les résultats et les solutions recommandées. | 
| Administration de l'organisation | Lecture | Lisez la liste des applications installées dans l'organisation cible pour vérifier que l' GitHub application AWS DevOps Agent est installée. | 

## Gestion des GitHub connexions
<a name="managing-github-connections"></a>
+ **Mise à jour de l'accès aux référentiels** : pour modifier les référentiels auxquels l' GitHub application peut accéder, accédez aux paramètres de votre GitHub compte ou de votre organisation. Pour GitHub Enterprise Server ou GitHub Enterprise Cloud avec résidence des données, accédez aux paramètres de votre instance. Accédez ensuite aux GitHub applications installées et modifiez la configuration de l'application AWS DevOps Agent.
+ **Affichage des référentiels connectés** : dans la console de l' AWS DevOps agent, sélectionnez votre espace agent et accédez à l'onglet Fonctionnalités pour afficher les référentiels connectés dans la section Pipeline.
+ **Suppression de la GitHub connexion** : pour vous déconnecter GitHub d'un espace agent, choisissez la connexion dans la section Pipeline, puis choisissez **Supprimer**. Pour supprimer l' GitHub enregistrement de votre compte, accédez à la page des **fournisseurs de capacités**, recherchez votre inscription dans la **GitHub**section et choisissez **Désenregistrer**.

Pour supprimer complètement l' GitHub intégration, procédez comme suit :
+ Pour désinstaller l' GitHub application, accédez aux paramètres de votre GitHub compte ou de votre organisation.
+ Pour vous reconnecter, réenregistrez-vous GitHub dans la console de l' AWS DevOps agent.

Pour GitHub Enterprise Server et GitHub Enterprise Cloud avec résidence des données, l' AWS DevOps agent crée l' GitHub application sur votre instance lors de l'enregistrement. Pour nettoyer complètement l'application, effectuez les deux opérations suivantes :
+ **Désinstaller l'application** : accédez à **Paramètres > Applications > GitHub Applications installées**, choisissez **Configurer** dans l'application, puis désinstallez-la.
+ **Supprimer l'application** : accédez à **Réglages > Paramètres du développeur > GitHub Applications**, choisissez l'application, accédez à l'onglet **Avancé**, puis choisissez **Supprimer GitHub l'application**. **Avertissement :** La suppression de l' GitHub application est définitive et ne peut pas être annulée. Pour créer une nouvelle application, réenregistrez-vous GitHub dans la console de l' AWS DevOps agent.