

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# GitHub Enterprise Server-Verbindungen
<a name="connections-ghes"></a>

Verbindungen ermöglichen es Ihnen, Konfigurationen zu autorisieren und einzurichten, die Ihren Drittanbieter mit Ihren AWS Ressourcen verknüpfen. Um Ihr Drittanbieter-Repository als Quelle für Ihre Pipeline zu verknüpfen, verwenden Sie eine Verbindung. 

**Anmerkung**  
Anstatt eine bestehende Verbindung in deinem Konto herzustellen oder zu verwenden, kannst du eine gemeinsame Verbindung zwischen anderen verwenden AWS-Konto. Siehe [Verwenden Sie eine Verbindung, die mit einem anderen Konto geteilt wird](connections-shared.md).

**Anmerkung**  
Diese Funktion ist in den Regionen Asien-Pazifik (Hongkong), Asien-Pazifik (Hyderabad), Asien-Pazifik (Jakarta), Asien-Pazifik (Melbourne), Asien-Pazifik (Osaka), Afrika (Kapstadt), Naher Osten (Bahrain), Naher Osten (VAE), Europa (Spanien), Europa (Zürich), Israel (Tel Aviv) oder AWS GovCloud (US-West) nicht verfügbar. Informationen zu anderen verfügbaren Aktionen finden Sie unter. [Produkt- und Serviceintegrationen mit CodePipeline](integrations.md) Überlegungen zu dieser Aktion in der Region Europa (Mailand) finden Sie im Hinweis unter[CodeStarSourceConnection für Bitbucket Cloud GitHub, GitHub Enterprise Server und GitLab.com GitLab selbstverwaltete Aktionen](action-reference-CodestarConnectionSource.md).

Um eine GitHub Enterprise Server-Quellaktion hinzuzufügen CodePipeline, können Sie eine der folgenden Optionen wählen: 
+ Verwenden Sie den ** Assistenten zum ** Erstellen einer Pipeline in der CodePipeline Konsole oder auf der ** Seite ** „Aktion bearbeiten“, um die ** GitHub Enterprise ** Server-Provider-Option auszuwählen. Weitere Informationen finden [Stellen Sie eine Verbindung zu GitHub Enterprise Server (Konsole) her](#connections-ghes-console) Sie unter So fügen Sie die Aktion hinzu. Die Konsole hilft Ihnen beim Erstellen einer Hostressource und einer Verbindungsressource.
+ Verwenden Sie die CLI, um die Aktionskonfiguration für die `CreateSourceConnection` Aktion beim `GitHubEnterpriseServer` Anbieter hinzuzufügen und Ihre Ressourcen zu erstellen:
  + Informationen zum Erstellen Ihrer Verbindungsressourcen finden Sie unter [Erstellen Sie einen Host und eine Verbindung zum GitHub Enterprise Server (CLI)](#connections-ghes-cli) So erstellen Sie eine Hostressource und eine Verbindungsressource mit der CLI.
  + Verwenden Sie das `CreateSourceConnection` Beispiel einer Aktionskonfiguration unter[CodeStarSourceConnection für Bitbucket Cloud GitHub, GitHub Enterprise Server und GitLab.com GitLab selbstverwaltete Aktionen](action-reference-CodestarConnectionSource.md), um Ihre Aktion hinzuzufügen, wie unter gezeigt[Erstellen einer Pipeline (CLI)](pipelines-create.md#pipelines-create-cli).

**Anmerkung**  
Sie können eine Verbindung auch mithilfe der Developer Tools-Konsole unter ** Einstellungen herstellen**. Siehe Verbindung [ erstellen](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

Bevor Sie beginnen:
+ Sie müssen ein Konto bei GitHub Enterprise Server erstellt und die GitHub Enterprise Server-Instanz auf Ihrer Infrastruktur installiert haben.
**Anmerkung**  
Jede VPC kann jeweils nur einem Host (GitHub Enterprise Server-Instance) zugeordnet werden.
+ Sie müssen bereits ein Code-Repository mit GitHub Enterprise Server erstellt haben.

**Topics**
+ [Stellen Sie eine Verbindung zu GitHub Enterprise Server (Konsole) her](#connections-ghes-console)
+ [Erstellen Sie einen Host und eine Verbindung zum GitHub Enterprise Server (CLI)](#connections-ghes-cli)

## Stellen Sie eine Verbindung zu GitHub Enterprise Server (Konsole) her
<a name="connections-ghes-console"></a>

Gehen Sie wie folgt vor, um mithilfe der CodePipeline Konsole eine Verbindungsaktion für Ihr GitHub Enterprise Server-Repository hinzuzufügen.

**Anmerkung**  
GitHub Enterprise Server-Verbindungen bieten nur Zugriff auf Repositorys, die dem GitHub Enterprise Server-Konto gehören, mit dem die Verbindung hergestellt wurde.

**Bevor Sie beginnen: **

Für eine Hostverbindung zu GitHub Enterprise Server müssen Sie die Schritte zum Erstellen einer Hostressource für Ihre Verbindung abgeschlossen haben. Siehe Hosts für Verbindungen [ verwalten](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-hosts.html).

### Schritt 1: Erstellen oder bearbeiten Sie Ihre Pipeline
<a name="connections-ghes-console-action"></a>

**Um Ihre Pipeline zu erstellen oder zu bearbeiten**

1. Melden Sie sich bei der CodePipeline Konsole an.

1. Wählen Sie eine der folgenden Optionen aus.
   + Wählen Sie, ob Sie eine Pipeline erstellen möchten. Folgen Sie den Schritten unter Pipeline * erstellen*, um den ersten Bildschirm auszufüllen, und wählen Sie ** Weiter**. Wählen Sie auf der ** ** Quellseite unter ** Quellanbieter ** die Option ** GitHub Enterprise Server aus**.
   + Wählen Sie, ob Sie eine vorhandene Pipeline bearbeiten möchten. Wählen Sie ** „Bearbeiten“ ** und dann ** „Phase bearbeiten“**. Wählen Sie, ob Sie Ihre Quellaktion hinzufügen oder bearbeiten möchten. Geben Sie auf der ** Seite Aktion ** bearbeiten unter ** Aktionsname ** den Namen für Ihre Aktion ein. Wählen Sie ** unter Aktionsanbieter ** die Option ** GitHub Enterprise Server aus**.

1. Führen Sie eine der folgenden Aktionen aus:
   + Wählen Sie unter ** Verbindung ** die Option Mit GitHub Unternehmensserver ** verbinden aus, falls Sie noch keine Verbindung zu Ihrem Anbieter hergestellt haben**. Fahren Sie mit Schritt 2: Verbindung zum GitHub Enterprise Server herstellen fort.
   + Wenn Sie bereits eine ** Verbindung ** zu Ihrem Provider hergestellt haben, wählen Sie unter Verbindung die Verbindung aus. Fahren Sie mit Schritt 3: Speichern Sie die Quellaktion für Ihre Verbindung fort.

### Stellen Sie eine Verbindung zu GitHub Enterprise Server her
<a name="connections-ghes-console-create"></a>

Nachdem Sie sich entschieden haben, die Verbindung herzustellen, wird die ** Seite Mit GitHub Enterprise Server ** verbinden angezeigt.

**Wichtig**  
AWS CodeConnections unterstützt GitHub Enterprise Server Version 2.22.0 aufgrund eines bekannten Problems in der Version nicht. Um eine Verbindung zu erstellen, aktualisieren Sie auf Version 2.22.1 bzw. die neueste verfügbare Version.

**Um eine Verbindung zu Enterprise Server herzustellen GitHub**

1. Geben Sie unter **Connection Name (Verbindungsname)** den Namen für die Verbindung ein.

1. Geben Sie unter **URL** den Endpunkt für Ihren Server ein.
**Anmerkung**  
Wenn die angegebene URL bereits verwendet wurde, um einen GitHub Enterprise Server für eine Verbindung einzurichten, werden Sie aufgefordert, den Hostressourcen-ARN auszuwählen, der zuvor für diesen Endpunkt erstellt wurde.

1. Wenn Sie Ihren Server in einer Amazon VPC gestartet haben und eine Verbindung mit Ihrer VPC erstellen möchten, wählen Sie **Use a VPC (Verwenden einer VPC)** aus und geben Sie Folgendes ein.

   1. Wählen Sie unter **VPC ID** Ihre VPC-ID aus. Stellen Sie sicher, dass Sie die VPC für die Infrastruktur auswählen, in der Ihre GitHub Enterprise Server-Instance installiert ist, oder eine VPC mit Zugriff auf Ihre GitHub Enterprise Server-Instance über VPN oder Direct Connect.

   1. Wählen Sie unter **Subnetz-ID (Subnetz-ID)** die Option **Add (Hinzufügen)** aus. Wählen Sie im Feld die Subnetz-ID aus, die Sie für Ihren Host verwenden möchten. Sie können bis zu 10 Subnetze wählen.

      Stellen Sie sicher, dass Sie das Subnetz für die Infrastruktur auswählen, in der Ihre GitHub Enterprise Server-Instance installiert ist, oder ein Subnetz mit Zugriff auf Ihre installierte GitHub Enterprise Server-Instance über VPN oder Direct Connect.

   1. Wählen Sie unter **Security group IDs (Sicherheitsgruppen-IDs)** die Option **Add (Hinzufügen)** aus. Wählen Sie im Feld die Sicherheitsgruppe aus, die Sie für Ihren Host verwenden möchten. Sie können bis zu 10 Sicherheitsgruppen auswählen.

      Achten Sie darauf, die Sicherheitsgruppe für die Infrastruktur auszuwählen, in der Ihre GitHub Enterprise Server-Instance installiert ist, oder eine Sicherheitsgruppe mit Zugriff auf Ihre installierte GitHub Enterprise Server-Instance über VPN oder Direct Connect.

   1. Wenn Sie eine private VPC konfiguriert haben und Ihre GitHub Enterprise Server-Instance so konfiguriert haben, dass sie die TLS-Validierung mithilfe einer nicht öffentlichen Zertifizierungsstelle durchführt**, geben Sie im Feld ** TLS-Zertifikat Ihre Zertifikats-ID ein. Der TLS-Zertifikatwert sollte der öffentliche Schlüssel des Zertifikats sein.  
![Der Screenshot der Konsole zeigt die Seite „ GitHub Enterprise Server-Verbindung erstellen“ für VPC-Optionen.](https://docs.aws.amazon.com/de_de/codepipeline/latest/userguide/images/connections-create-ghes-screen-vpc.png)

1. Wählen Sie ** Mit GitHub Enterprise Server ** verbinden. Die erzeugte Verbindung wird mit dem Status **Pending (Ausstehend)** angezeigt. Für die Verbindung mit den von Ihnen angegebenen Serverinformationen wird eine Hostressource erstellt. Für den Hostnamen wird die URL verwendet.

1. Wählen Sie **Update pending connection (Ausstehende aktualisieren)** aus.

1. Wenn Sie dazu aufgefordert werden, melden Sie sich auf der GitHub Enterprise-Anmeldeseite mit Ihren GitHub Enterprise-Anmeldeinformationen an.

1. Wählen Sie auf der ** Seite „ GitHub App ** erstellen“ einen Namen für Ihre App aus.

1. <app-name>Wählen Sie auf der GitHub Autorisierungsseite die Option ** Autorisieren ** aus.

1. Auf der App-Installationsseite wird in einer Meldung angezeigt, dass die Connector-App zur Installation bereit ist. Wenn Sie mehrere Organisationen haben, werden Sie möglicherweise aufgefordert, die Organisation auszuwählen, in der Sie die App installieren möchten. 

   Wählen Sie in die Repository-Einstellungen aus, wo Sie die App installieren möchten. Wählen Sie **Installieren** aus.

1. Die Verbindungsseite zeigt die erstellte Verbindung im Status **Available (Verfügbar)**.

### Schritt 3: Speichern Sie Ihre GitHub Enterprise Server-Quellaktion
<a name="connections-ghes-console-save"></a>

Verwenden Sie diese Schritte im Assistenten oder auf der ** Aktionsseite ** „Aktion bearbeiten“, um Ihre Quellaktion mit Ihren Verbindungsinformationen zu speichern.

**Um Ihre Quellaktion mit Ihrer Verbindung abzuschließen und zu speichern**

1. Wählen Sie unter **Repository name (Repository-Name)** den Namen Ihres Drittanbieter-Repositorys aus.

1. Unter ** Pipeline-Trigger können ** Sie Auslöser hinzufügen, wenn es sich bei Ihrer Aktion um eine CodeConnections Aktion handelt. Weitere Informationen zur Konfiguration der Pipeline-Trigger und zum optionalen Filtern nach Triggern finden Sie unter[Trigger mit Code-Push- oder Pull-Request-Ereignistypen hinzufügen](pipelines-filter.md).

1. Im **Output artifact format (Format des Ausgabeartefakts)** müssen Sie das Format für Ihre Artefakte auswählen. 
   + Um Ausgabeartefakte aus der GitHub Enterprise Server-Aktion mit der Standardmethode zu speichern, wählen Sie ** CodePipeline Standard**. Die Aktion greift auf die Dateien aus dem GitHub Enterprise Server-Repository zu und speichert die Artefakte in einer ZIP-Datei im Pipeline-Artefaktspeicher.
   + Um eine JSON-Datei zu speichern, die einen URL-Verweis auf das Repository enthält, damit Downstream-Aktionen Git-Befehle direkt ausführen können, wählen Sie **Full clone (Vollständiger Klon)**. Diese Option kann nur von CodeBuild Downstream-Aktionen verwendet werden.

1. Wählen Sie im Assistenten ** Weiter oder ** auf der ** Aktionsseite ** „Bearbeiten“ die Option ** Speichern**.

## Erstellen Sie einen Host und eine Verbindung zum GitHub Enterprise Server (CLI)
<a name="connections-ghes-cli"></a>

Sie können die AWS Command Line Interface (AWS CLI) verwenden, um eine Verbindung herzustellen. 

Verwenden Sie dazu den Befehl **create-connection**. 

**Wichtig**  
Eine Verbindung, die über AWS CLI oder AWS CloudFormation erstellt wurde, hat standardmäßig `PENDING` den Status. Nachdem Sie eine Verbindung mit der CLI oder hergestellt haben CloudFormation, bearbeiten Sie die Verbindung mithilfe der Konsole, um ihren Status zu ermitteln`AVAILABLE`.

Sie können die AWS Command Line Interface (AWS CLI) verwenden, um einen Host für installierte Verbindungen zu erstellen. 

**Anmerkung**  
Sie erstellen einen Host nur einmal pro GitHub Enterprise Server-Konto. Alle Ihre Verbindungen zu einem bestimmten GitHub Enterprise Server-Konto verwenden denselben Host.

Sie verwenden Sie einen Host, der den Endpunkt für die Infrastruktur darstellt, in der der Drittanbieter installiert ist. Nachdem Sie die Host-Erstellung mit der CLI abgeschlossen haben, befindet sich der Host im ** Status ** Ausstehend. Anschließend richten Sie den Host ein oder registrieren ihn, um ihn in den ** Status ** Verfügbar zu versetzen. Sobald der Host verfügbar ist, führen Sie die Schritte zum Erstellen einer Verbindung aus.

Verwenden Sie dazu den Befehl **create-host**. 

**Wichtig**  
Ein über den erstellter Host AWS CLI befindet sich standardmäßig im `Pending` Status. Nachdem Sie einen Host mit der CLI erstellt haben, verwenden Sie die Konsole oder die CLI, um den Host so einzurichten, dass er seinen Status erhält`Available`.

**So erstellen Sie einen Host**

1. Öffnen Sie die Eingabeaufforderung (Windows) oder das Terminal (Linux, macOS oder Unix). Verwenden Sie den AWS CLI , um den **create-host** Befehl auszuführen, und geben Sie dabei die `--name``--provider-type`, und `--provider-endpoint` für Ihre Verbindung an. In diesem Beispiel lautet der Name des Drittanbieters `GitHubEnterpriseServer` und der Endpunkt `my-instance.dev`.

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

   Wenn der Befehl erfolgreich ausgeführt wurde, gibt er die Amazon-Ressourcenname (ARN)-Informationen zum Host ähnlich der folgenden zurück.

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

   Nach diesem Schritt befindet sich der Host im Status `PENDING` (Ausstehend).

1. Schließen Sie das Host-Setup mit der Konsole ab und ändern Sie den Host-Status zu `Available` (Verfügbar).

**Um eine Verbindung zu GitHub Enterprise Server herzustellen**

1. Öffnen Sie die Eingabeaufforderung (Windows) oder das Terminal (Linux, macOS oder Unix). Verwenden Sie den AWS CLI , um den **create-connection** Befehl auszuführen, und geben Sie dabei das `--host-arn` und `--connection-name` für Ihre Verbindung an.

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

   Wenn der Befehl erfolgreich ausgeführt wurde, gibt er die ARN-Informationen der Verbindung ähnlich der folgenden zurück.

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

1. Verwenden Sie die Konsole, um die ausstehende Verbindung einzurichten.

1. Die Pipeline erkennt standardmäßig Änderungen, wenn Code an das Verbindungsquellen-Repository übertragen wird. Gehen Sie wie folgt vor, um die Pipeline-Trigger-Konfiguration für die manuelle Freigabe oder für Git-Tags zu konfigurieren:
   + Um die Pipeline-Trigger-Konfiguration so zu konfigurieren, dass sie nur mit einer manuellen Version beginnt, fügen Sie der Konfiguration die folgende Zeile hinzu: 

     ```
     "DetectChanges": "false",
     ```
   + Weitere Informationen zur Konfiguration der Pipeline-Trigger-Konfiguration zum Filtern nach Triggern finden Sie unter[Trigger mit Code-Push- oder Pull-Request-Ereignistypen hinzufügen](pipelines-filter.md). Das Folgende erweitert beispielsweise die Pipeline-Ebene der Pipeline-JSON-Definition. In diesem Beispiel `release-v1` sind `release-v0` und die einzuschließenden Git-Tags und `release-v2` das auszuschließende Git-Tag.

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