

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.

# GitHub Connexions aux serveurs d'entreprise
<a name="connections-ghes"></a>

Les connexions vous permettent d'autoriser et d'établir des configurations qui associent votre fournisseur tiers à vos AWS ressources. Pour associer votre référentiel tiers en tant que source de votre pipeline, vous devez utiliser une connexion. 

**Note**  
Au lieu de créer ou d'utiliser une connexion existante dans votre compte, vous pouvez utiliser une connexion partagée entre un autre Compte AWS. Consultez [Utiliser une connexion partagée avec un autre compte](connections-shared.md).

**Note**  
Cette fonctionnalité n'est pas disponible dans les régions Asie-Pacifique (Hong Kong), Asie-Pacifique (Hyderabad), Asie-Pacifique (Jakarta), Asie-Pacifique (Melbourne), Asie-Pacifique (Osaka), Afrique (Le Cap), Moyen-Orient (Bahreïn), Moyen-Orient (Émirats arabes unis), Europe (Espagne), Europe (Zurich), Israël (Tel Aviv) ou (USA Ouest). AWS GovCloud Pour faire référence aux autres actions disponibles, voir[Intégrations de produits et de services avec CodePipeline](integrations.md). Pour les considérations relatives à cette action dans la région Europe (Milan), voir la note dans[CodeStarSourceConnection pour Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com et les actions GitLab autogérées](action-reference-CodestarConnectionSource.md).

Pour ajouter une action source GitHub Enterprise Server CodePipeline, vous pouvez choisir de : 
+ Utilisez l'assistant de **création de pipeline** ou la page **d'action Modifier** de la CodePipeline console pour choisir l'option **du fournisseur de serveurs GitHub d'entreprise**. [Création d'une connexion à GitHub Enterprise Server (console)](#connections-ghes-console)Reportez-vous à la section pour ajouter l'action. La console vous permet de créer une ressource hôte et une ressource de connexions.
+ Utilisez la CLI pour ajouter la configuration de l'`CreateSourceConnection`action avec le `GitHubEnterpriseServer` fournisseur et créer vos ressources :
  + Pour créer vos ressources de connexion, reportez-vous [Création d'un hôte et d'une connexion à GitHub Enterprise Server (CLI)](#connections-ghes-cli) à la section Création d'une ressource hôte et d'une ressource de connexions avec la CLI.
  + Utilisez l'`CreateSourceConnection`exemple de configuration d'action [CodeStarSourceConnection pour Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com et les actions GitLab autogérées](action-reference-CodestarConnectionSource.md) pour ajouter votre action comme indiqué dans[Création d'un pipeline (interface de ligne de commande)](pipelines-create.md#pipelines-create-cli).

**Note**  
Vous pouvez également créer une connexion à l'aide de la console Developer Tools sous **Paramètres**. Voir [Créer une connexion](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

Avant de commencer :
+ Vous devez avoir créé un compte auprès GitHub d'Enterprise Server et installé l'instance GitHub d'Enterprise Server sur votre infrastructure.
**Note**  
Chaque VPC ne peut être associé qu'à un seul hôte (instance de serveur GitHub d'entreprise) à la fois.
+ Vous devez déjà avoir créé un référentiel de code avec GitHub Enterprise Server.

**Topics**
+ [Création d'une connexion à GitHub Enterprise Server (console)](#connections-ghes-console)
+ [Création d'un hôte et d'une connexion à GitHub Enterprise Server (CLI)](#connections-ghes-cli)

## Création d'une connexion à GitHub Enterprise Server (console)
<a name="connections-ghes-console"></a>

Suivez ces étapes pour utiliser la CodePipeline console afin d'ajouter une action de connexion pour votre référentiel GitHub Enterprise Server.

**Note**  
GitHub Les connexions Enterprise Server fournissent uniquement l'accès aux référentiels détenus par le compte GitHub Enterprise Server qui a été utilisé pour créer la connexion.

**Avant de commencer :**

Pour une connexion hôte à GitHub Enterprise Server, vous devez avoir effectué les étapes de création d'une ressource hôte pour votre connexion. Consultez la section [Gérer les hôtes pour les connexions](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-hosts.html).

### Étape 1 : créer ou modifier votre pipeline
<a name="connections-ghes-console-action"></a>

**Pour créer ou modifier votre pipeline**

1. Connectez-vous à la CodePipeline console.

1. Choisissez l’une des options suivantes.
   + Choisissez de créer un pipeline. Suivez les étapes décrites dans *Créer un pipeline* pour terminer le premier écran et choisissez **Next**. Sur la page **Source**, sous **Fournisseur de source**, choisissez **GitHub Enterprise Server**.
   + Choisissez de modifier un pipeline existant. Choisissez **Modifier**, puis sélectionnez **Modifier l'étape**. Choisissez d'ajouter ou de modifier votre action source. Sur la page **Modifier l'action**, sous **Nom de l'action**, entrez le nom de votre action. Dans **Action provider**, sélectionnez **GitHub Enterprise Server**.

1. Effectuez l’une des actions suivantes :
   + Sous **Connexion**, si vous n'avez pas encore créé de connexion avec votre fournisseur, choisissez **Connect to GitHub Enterprise Server**. Passez à l'étape 2 : Création d'une connexion au serveur GitHub d'entreprise.
   + Sous **Connexion**, si vous avez déjà créé une connexion avec votre fournisseur, choisissez-la. Passez à l'étape 3 : Enregistrer l'action source pour votre connexion.

### Création d'une connexion à GitHub Enterprise Server
<a name="connections-ghes-console-create"></a>

Une fois que vous avez choisi de créer la connexion, la page **Connect to GitHub Enterprise Server** s'affiche.

**Important**  
AWS CodeConnections ne prend pas en charge la version 2.22.0 d' GitHub Enterprise Server en raison d'un problème connu dans cette version. Pour vous connecter, effectuez une mise à niveau vers la version 2.22.1 ou vers la dernière version disponible.

**Pour vous connecter à GitHub Enterprise Server**

1. Dans **Connection name (Nom de la connexion)**, saisissez le nom de votre connexion.

1. Dans **URL**, saisissez le point de terminaison de votre serveur.
**Note**  
Si l'URL fournie a déjà été utilisée pour configurer un serveur d' GitHubentreprise pour une connexion, vous serez invité à choisir l'ARN de la ressource hôte créé précédemment pour ce point de terminaison.

1. Si vous avez lancé votre serveur dans un VPC Amazon et que vous souhaitez vous connecter à votre VPC, choisissez **Use a VPC (Utilisation d'un VPC)** et complétez ce qui suit.

   1. Dans **ID du VPC**, choisissez votre ID de VPC. Assurez-vous de choisir le VPC pour l'infrastructure sur laquelle votre instance de serveur GitHub d'entreprise est installée ou un VPC avec accès à votre instance de serveur GitHub d'entreprise via VPN ou Direct Connect.

   1. Sous **Subnet ID (ID de sous-réseau)**, choisissez **Add (Ajouter)**. Dans le champ, choisissez l'ID de sous-réseau que vous souhaitez utiliser pour votre hôte. Vous pouvez choisir jusqu'à 10 sous-réseaux.

      Assurez-vous de choisir le sous-réseau pour l'infrastructure dans laquelle votre instance de serveur GitHub d'entreprise est installée ou un sous-réseau avec accès à votre instance de serveur GitHub d'entreprise installée via VPN ou Direct Connect.

   1. Sous **Groupe de sécurité IDs**, choisissez **Ajouter**. Dans le champ, choisissez le groupe de sécurité que vous souhaitez utiliser pour votre hôte. Vous pouvez choisir jusqu'à 10 groupes de sécurité.

      Assurez-vous de choisir le groupe de sécurité pour l'infrastructure sur laquelle votre instance de serveur GitHub d'entreprise est installée ou un groupe de sécurité ayant accès à votre instance de serveur GitHub d'entreprise installée via un VPN ou Direct Connect.

   1. Si vous avez configuré un VPC privé et que vous avez configuré votre instance de serveur GitHub d'entreprise pour effectuer une validation TLS à l'aide d'une autorité de certification non publique, dans Certificat **TLS, entrez votre ID de certificat**. La valeur du certificat TLS doit être la clé publique du certificat.  
![\[Capture d'écran de la console montrant la page de création GitHub d'une connexion au serveur d'entreprise pour les options VPC.\]](http://docs.aws.amazon.com/fr_fr/codepipeline/latest/userguide/images/connections-create-ghes-screen-vpc.png)

1. Choisissez **Connect to GitHub Enterprise Server**. La connexion créée s'affiche avec le statut **En attente**. Une ressource hôte est créée pour la connexion avec les informations de serveur que vous avez fournies. Pour le nom d'hôte, l'URL est utilisée.

1. Choisissez **Update pending connection (Mettre à jour la connexion en attente).**

1. Si vous y êtes invité, sur la page de connexion GitHub Enterprise, connectez-vous à l'aide de vos informations GitHub d'identification Enterprise.

1. Sur la page **Créer une GitHub application**, choisissez un nom pour votre application.

1. Sur la page GitHub d'autorisation, choisissez **Autoriser**<app-name>.

1. Sur la page d'installation de l'application, un message indique que l'application Connector est prête à être installée. Si vous avez plusieurs organisations, vous pouvez être invité à choisir l'organisation dans laquelle vous souhaitez installer l'application. 

   Choisissez les paramètres du référentiel dans lesquels vous souhaitez installer l'application. Choisissez **Installer**.

1. La page de connexion affiche la connexion créée avec un statut **Disponible**.

### Étape 3 : enregistrer l'action source de votre serveur d' GitHub entreprise
<a name="connections-ghes-console-save"></a>

Suivez ces étapes dans l'assistant ou sur la page **Modifier l'action** pour enregistrer votre action source avec vos informations de connexion.

**Pour terminer et enregistrer votre action source avec votre connexion**

1. Dans **Nom du référentiel**, choisissez le nom de votre référentiel tiers.

1. Sous **Déclencheurs du pipeline**, vous pouvez ajouter des déclencheurs si votre action est une CodeConnections action. Pour configurer la configuration des déclencheurs du pipeline et pour éventuellement filtrer à l'aide de déclencheurs, reportez-vous à la section[Ajouter un déclencheur avec des types d'événements de type code push ou pull request](pipelines-filter.md).

1. Dans **Output artifact format (Format d'artefact de sortie)**, vous devez choisir le format de vos artefacts. 
   + Pour stocker les artefacts de sortie issus de l'action GitHub Enterprise Server à l'aide de la méthode par défaut, choisissez **CodePipelinepar défaut**. L'action accède aux fichiers depuis le référentiel GitHub Enterprise Server et stocke les artefacts dans un fichier ZIP dans le magasin d'artefacts du pipeline.
   + Pour stocker un fichier JSON contenant une référence d'URL au référentiel afin que les actions en aval puissent exécuter directement les commandes Git, choisissez **Full clone (Clone complet)**. Cette option ne peut être utilisée que par des actions CodeBuild en aval.

1. Choisissez **Suivant** dans l'assistant ou **Enregistrer** sur la page **d'action Modifier**.

## Création d'un hôte et d'une connexion à GitHub Enterprise Server (CLI)
<a name="connections-ghes-cli"></a>

Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour créer une connexion. 

Pour ce faire, utilisez la commande **create-connection**. 

**Important**  
Une connexion créée via le AWS CLI ou AWS CloudFormation est en `PENDING` état par défaut. Après avoir créé une connexion avec la CLI CloudFormation, utilisez la console pour modifier la connexion afin de définir son état`AVAILABLE`.

Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour créer un hôte pour les connexions installées. 

**Note**  
Vous ne créez un hôte qu'une seule fois par compte GitHub Enterprise Server. Toutes vos connexions à un compte GitHub Enterprise Server spécifique utiliseront le même hôte.

Vous utilisez un hôte pour représenter le point de terminaison de l'infrastructure sur laquelle votre fournisseur tiers est installé. Une fois que vous avez terminé la création de l'hôte avec la CLI, l'hôte est en **attente**. Vous configurez ou enregistrez ensuite l'hôte pour le faire passer au statut **Disponible**. Une fois l'hôte disponible, procédez comme suit pour créer une connexion.

Pour ce faire, utilisez la commande **create-host**. 

**Important**  
Un hôte créé via le AWS CLI est en `Pending` statut par défaut. Après avoir créé un hôte à l'aide de la CLI, utilisez la console ou l'interface de ligne de commande pour configurer l'hôte afin qu'il définisse son statut`Available`.

**Pour créer un hôte**

1. Ouvrez une invite de terminal (Linux, macOS ou Unix) ou de commande (Windows). Utilisez le AWS CLI pour exécuter la **create-host** commande, en spécifiant le `--name``--provider-type`, et `--provider-endpoint` pour votre connexion. Dans cet exemple, le nom du fournisseur tiers est `GitHubEnterpriseServer` et le point de terminaison est `my-instance.dev`.

   ```
   aws codestar-connections create-host --name MyHost --provider-type GitHubEnterpriseServer --provider-endpoint "https://my-instance.dev"
   ```

   En cas de succès, cette commande renvoie les informations Amazon Resource Name (ARN) hôte semblables à ce qui suit.

   ```
   {
       "HostArn": "arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605"
   }
   ```

   Après cette étape, l'hôte présente l'état `PENDING`.

1. Utilisez la console pour terminer la configuration de l'hôte et passer l'hôte vers l'état `Available`.

**Pour créer une connexion à GitHub Enterprise Server**

1. Ouvrez une invite de terminal (Linux, macOS ou Unix) ou de commande (Windows). Utilisez le AWS CLI pour exécuter la **create-connection** commande, en spécifiant le `--host-arn` et `--connection-name` pour votre connexion.

   ```
   aws codestar-connections create-connection --host-arn arn:aws:codestar-connections:us-west-2:account_id:host/MyHost-234EXAMPLE --connection-name MyConnection
   ```

   En cas de succès, cette commande renvoie les informations ARN de connexion semblables à ce qui suit.

   ```
   {
       "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad"
   }
   ```

1. Utilisez la console pour configurer la connexion en attente.

1. Le pipeline détecte par défaut les modifications lors de l'envoi du code vers le référentiel des sources de connexion. Pour configurer la configuration du déclencheur du pipeline pour le lancement manuel ou pour les balises Git, effectuez l'une des opérations suivantes :
   + Pour configurer la configuration du déclencheur du pipeline de manière à ce qu'elle commence par un déverrouillage manuel uniquement, ajoutez la ligne suivante à la configuration : 

     ```
     "DetectChanges": "false",
     ```
   + Pour configurer la configuration des déclencheurs du pipeline afin de filtrer avec des déclencheurs, voir plus de détails dans[Ajouter un déclencheur avec des types d'événements de type code push ou pull request](pipelines-filter.md). Par exemple, ce qui suit ajoute au niveau du pipeline de la définition JSON du pipeline. Dans cet exemple, `release-v0` et `release-v1` sont les balises Git à inclure et `release-v2` les balises Git à exclure.

     ```
     "triggers": [
                 {
                     "providerType": "CodeStarSourceConnection",
                     "gitConfiguration": {
                         "sourceActionName": "Source",
                         "push": [
                             {
                                 "tags": {
                                     "includes": [
                                         "release-v0", "release-v1"
                                     ],
                                     "excludes": [
                                         "release-v2"
                                     ]
                                 }
                             }
                         ]
                     }
                 }
             ]
     ```