GitHub Enterprise Server-Beispiel für CodeBuild - AWS CodeBuild

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-Beispiel für CodeBuild

AWS CodeBuildunterstützt GitHub Enterprise Server als Quell-Repository. In diesem Beispiel wird gezeigt, wie Sie Ihre CodeBuild projekte wenn Ihr GitHub Im Enterprise Server-Repository ist ein Zertifikat installiert. Es zeigt auch, wie Webhooks aktiviert werden, damit CodeBuild Stellt den Quellcode jedes Mal neu auf, wenn eine Codeänderung an GitHub Enterprise Server-Repository

Voraussetzungen

  1. Generieren Sie ein persönliches Zugriffstoken für CodeBuild -Projekt. Wir empfehlen, dass Sie eine GitHub Generieren Sie ein privates Zugriffstoken für diesen Benutzer. Kopieren Sie es in Ihre Zwischenablage, sodass es verwendet werden kann, wenn Sie CodeBuild -Projekt. Weitere Informationen finden Sie unterErstellen eines persönlichen Zugriffstokens für die Befehlszeileauf der GitHub Hilf-Website.

    Bei der Erstellung der persönlichen Zugriffstoken nehmen Sie den repo-Umfang in die Definition auf.

  2. Laden Sie Ihr Zertifikat von GitHub Enterprise Server. CodeBuild stellt mithilfe des Zertifikats eine vertrauenswürdige SSL-Verbindung mit dem Repository her.

    Linux/macOS-Clients:

    Führen Sie in einem Terminalfenster den folgenden Befehl aus:

    echo -n | openssl s_client -connect HOST:PORTNUMBER \ | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /folder/filename.pem

    Ersetzen Sie die Platzhalter im Befehl durch die folgenden Werte:

    HOST. Die IP-Adresse Ihres GitHub Enterprise Server-Repository

    PORTNUMBER. Die Port-Nummer, die Sie für die Verbindung verwenden (z. B. 443).

    folder. Der Ordner, in den Sie das Zertifikat heruntergeladen haben.

    filename. Der Dateiname Ihrer Zertifikatdatei.

    Wichtig

    Speichern Sie das Zertifikat als .pem-Datei.

    Windows-Clients:

    Laden Sie Ihr Zertifikat mit Ihrem Browser herunter GitHub Enterprise Server. Wenn Sie die Zertifikatdetails der Website sehen, wählen Sie das Vorhängeschlosssymbol. Weitere Informationen zum Exportieren des Zertifikats finden Sie in der Dokumentation zu Ihrem Browser.

    Wichtig

    Speichern Sie das Zertifikat als .pem-Datei.

  3. Laden Sie Ihre Zertifikatdatei in einen S3-Bucket hoch. Weitere Informationen zum Erstellen eines S3-Buckets finden Sie unter Erstellen eines S3-Buckets. Weitere Informationen zum Hochladen von Objekten in einen S3-Bucket finden Sie unter Dateien und Ordner in einen Bucket hochladen.

    Anmerkung

    Dieser Bucket muss im selben seinAWSRegion wie Ihre Builds. Zum Beispiel, wenn Sie unterweisen CodeBuild Um einen Build in der Region USA Ost (Ohio) auszuführen, muss sich der Bucket in der Region USA Ost (Ohio) befinden.

Erstellen ein Build-Projekts mit GitHub Enterprise Server als Quell-Repository und Aktivieren von Webhooks (Konsole)

  1. Öffnen SieAWS CodeBuild-Konsole beihttps://console.aws.amazon.com/codesuite/codebuild/homeaus.

  2. Wenn ein CodeBuild -Informationsseite wird angezeigt, wählen SieErstellen eines Build-Projektsaus. Erweitern Sie andernfalls im NavigationsbereichEntwicklung, wählenBuild-ProjekteKlicken Sie auf und danach aufErstellen eines Build-Projektsaus.

  3. Geben Sie unter Project name (Projektname) einen Namen für dieses Build-Projekt ein. Build-Projektnamen müssen in allen AWS-Konten eindeutig sein. Sie können auch eine optionale Beschreibung des Build-Projekts hinzufügen, um anderen Benutzern zu helfen, zu verstehen, wofür dieses Projekt verwendet wird.

  4. Wählen Sie unter Source (Quelle) für Source provider (Quellanbieter) die Option GitHub Enterprise aus.

    • Für Personal Access Token fügen Sie das Token ein, das Sie in Ihre Zwischenablage kopiert haben, und wählen Save Token. In :Repository URL (Repository-URL)Geben Sie die URL zu Ihrem GitHub Enterprise Server-Repository

      Anmerkung

      Sie müssen das private Zugriffstoken nur einmal eingeben und speichern. Alle zukünftigen AWS CodeBuild-Projekte verwenden dieses Token.

    • Geben Sie für Repository URL (Repository-URL) den Pfad zu Ihrem Repository ein, einschließlich des Namens des Repositorys.

    • Erweitern Sie Additional configuration (Zusätzliche Konfiguration).

    • Wählen Sie Rebuild every time a code change is pushed to this repository (Bei jeder Veröffentlichung einer Codeänderung in diesem Repository neu erstellen) aus, um bei jeder Veröffentlichung einer Codeänderung in diesem Repository einen neuen Build zu erstellen.

    • SelectAktivieren Sie unsichere SSLum SSL-Warnungen zu ignorieren, während Sie eine Verbindung zu Ihrem GitHub Enterprise Server-Projekt-Repository.

      Anmerkung

      Wir empfehlen, dass Sie Enable insecure SSL (Unsicheres SSL aktivieren) nur für Tests verwenden. Es sollte nicht in einer Produktionsumgebung verwendet werden.

  5. In Environment (Umgebung):

    Führen Sie für Environment image (Umgebungs-Image) einen der folgenden Schritte aus:

    • Um ein Docker-Image zu verwenden, das von AWS CodeBuild verwaltet wird, wählen Sie Managed image (Verwaltetes Image) aus und wählen Sie anschließend die gewünschten Optionen für Operating system (Betriebssystem), Runtime (Laufzeit), Image und Image version (Image-Version) aus. Treffen Sie eine Auswahl unter Environment type (Umgebungstyp), sofern verfügbar.

    • Wenn Sie ein anderes Docker-Image verwenden möchten, wählen Sie Custom image (Benutzerdefiniertes Image) aus. FürUmgebungstyp, wählenARM,Linux,Linux-GPU, oderWindowsaus. Wenn Sie angebenAndere Registry, fürExterne Registrierungs-URL, geben Sie den Namen und das Tag des Docker-Images im Docker Hub im Format eindocker repository/docker image nameaus. Wenn Sie angebenAmazon ECRVerwendung von Verwendung vonAmazon ECR-RepositoryundAmazon ECR-Bildum das Docker-Bild in IhremAWSKonto.

    • Wenn Sie ein privates Docker-Image verwenden möchten, wählen SieBenutzerdefiniertes Imageaus. FürUmgebungstyp, wählenARM,Linux,Linux-GPU, oderWindowsaus. Wählen Sie unter Image registry (Abbildregistrierung) die Option Other registry (Andere Registrierung) aus und geben Sie dann den ARN der Anmeldeinformationen für Ihr privates Docker-Image ein. Die Anmeldeinformationen müssen von Secrets Manager erstellt werden. Weitere Informationen finden Sie unter Was ist AWS Secrets Manager? im AWS Secrets Manager-Benutzerhandbuch.

  6. Führen Sie unter Service role (Service-Rolle) einen der folgenden Schritte aus:

    • Wenn Sie kein Konto haben CodeBuild Servicerolle, wählenNeue Dienstrolleaus. In :RollennameGeben Sie einen Namen für die neue Rolle ein.

    • Wenn Sie eine haben CodeBuild Servicerolle, wählenVorhandene Servicerolleaus. In :ARN der Rollewählen Sie die Servicerolle aus.

    Anmerkung

    Wenn Sie die Konsole zum Erstellen oder Aktualisieren eines Build-Projekts verwenden, können Sie eine CodeBuild gleichzeitig eine Servicerolle. In der Standardeinstellung funktioniert diese Rolle ausschließlich mit diesem Projekt. Wenn Sie die Konsole verwenden, um die Servicerolle mit einem anderen Build-Projekt zu verknüpfen, wird die Rolle so aktualisiert, dass sie mit dem anderen Build-Projekt funktioniert. Eine Servicerolle kann in bis zu zehn Build-Projekten verwendet werden.

  7. Erweitern Sie Additional configuration (Zusätzliche Konfiguration).

    Wenn Sie... CodeBuild um mit Ihrer VPC zu arbeiten:

    • FürVPCWählen Sie die VPC-ID aus, die CodeBuild Verwendung von Verwendung von

    • FürVPC-Subnetzewählen Sie die Subnetze aus, die Ressourcen enthalten CodeBuild Verwendung von Verwendung von

    • FürVPC-Sicherheitsgruppen, wählen Sie die Sicherheitsgruppen CodeBuild verwendet, um den Zugriff auf Ressourcen in den VPCs zu ermöglichen.

    Weitere Informationen finden Sie unter Verwenden vonAWS CodeBuildmit Amazon Virtual Private Cloud.

  8. In :Buildspecführen Sie einen der folgenden Schritte aus:

    • Klicken Sie aufVerwenden Sie eine buildspec-Dateium die buildspec.yml-Datei im Quellcode-Stammverzeichnis zu verwenden.

    • Klicken Sie aufBuild-Befehle einfügenum die Konsole zum Einfügen von Build-Befehlen zu verwenden.

    Weitere Informationen hierzu finden Sie unter Build-Spezifikationsreferenz.

  9. Führen Sie unter Artifacts (Artefakte) für Type (Typ) einen der folgenden Schritte aus:

    • Wenn keine Build-Ausgabeartefakte erstellt werden sollen, klicken Sie auf die Option No artifacts (Keine Artefakte).

    • Zum Speichern der Build-Ausgabe in einem S3-Bucket wählen SieAmazon S3wie folgt:

      • Lassen Sie Name leer, wenn Sie den Projektnamen für die ZIP-Datei mit der Build-Ausgabe verwenden möchten. Geben Sie andernfalls den Namen ein. Standardmäßig ist der Artefaktname der Projektname. Wenn Sie einen anderen Namen verwenden möchten, geben Sie diesen in das Feld für den Artefaktnamen ein. Wenn Sie eine ZIP-Datei ausgeben möchten, schließen Sie die ZIP-Erweiterung mit ein.

      • Wählen Sie für Bucket name den Namen des Ausgabe-Buckets aus.

      • Wenn Sie in diesem Vorgang zuvor die Option Insert build commands (Build-Befehle einfügen) verwendet haben, geben Sie für Output files (Ausgabedateien) die Speicherorte der Build-Dateien ein, die in der ZIP-Datei oder in dem Ordner für die Build-Ausgabe enthalten sein sollen. Bei mehreren Speicherorten trennen Sie die einzelnen Speicherorte durch ein Komma, (wie z. B. appspec.yml, target/my-app.jar). Weitere Informationen finden Sie in der Beschreibung von files in Syntax der Build-Spezifikation.

  10. Wählen Sie für Cache type (Cache-Typ) eine der folgenden Optionen aus:

    • Wenn Sie keinen Cache verwenden möchten, wählen Sie No cache.

    • Wenn Sie einen Amazon S3 S3-Cache verwenden möchten, wählen SieAmazon S3wie folgt:

      • Wählen Sie für Bucket den Namen des S3-Buckets, in dem der Cache gespeichert wird.

      • (Optional) FürCache-Pfad-PräfixGeben Sie ein Amazon S3-Pfad-Präfix ein. Der Wert für Cache path prefix (Cache-Pfadpräfix) ist mit einem Verzeichnisnamen vergleichbar. Er ermöglicht Ihnen das Speichern des Cache in demselben Verzeichnis eines Buckets.

        Wichtig

        Fügen Sie am Ende des Pfadpräfix keinen abschließenden Schrägstrich (/) an.

    • Wenn Sie einen lokalen Cache verwenden möchten, wählen Sie Local (Lokal) und dann mindestens einen lokalen Cache-Modus aus.

      Anmerkung

      Der Modus Docker layer cache (Docker-Ebenen-Cache) ist nur für Linux verfügbar. Wenn Sie diesen Modus auswählen, muss Ihr Projekt im privilegierten Modus ausgeführt werden.

    Durch die Verwendung eines Caches wird eine erhebliche Ersparnis bei der Erstellungszeit erzielt, da wiederverwendbare Teile der Build-Umgebung im Cache gespeichert und über Builds hinweg verwendet werden. Weitere Informationen über die Angabe eines Cache in der Build-Spezifikationsdatei finden Sie unter Syntax der Build-Spezifikation. Weitere Informationen zum Caching finden Sie unter Build-Caching in AWS CodeBuild.

  11. Wählen Sie Create build project (Build-Projekt erstellen) aus. Wählen Sie auf der Build-Projekt-Seite Start build (Build starten) aus.

  12. Wenn Sie unter Source (Quelle) Webhooks aktiviert haben, wird das Dialogfeld Create webhook (Webhook erstellen) geöffnet und es werden Werte für Payload URL (Nutzlast-URL) und Secret (Geheim) angezeigt.

    Wichtig

    Das Dialogfeld Create webhook wird nur einmal angezeigt. Kopieren Sie die Nutzlast-URL und den geheimen Schlüssel. Sie brauchen sie, wenn Sie einen Webhook hinzufügen GitHub Enterprise Server.

    Wenn Sie eine Nutzlast-URL und den geheimen Schlüssels erneut generieren müssen, müssen Sie zuerst den Webhook von Ihrem löschen GitHub Enterprise Server-Repository Deaktivieren Sie in Ihrem CodeBuild -Projekt das Kontrollkästchen Webhook und wählen Sie Save (Speichern) aus. Sie können dann ein CodeBuild-Projekt mit der erstellen oder aktualisierenWebhookaktiviertes Kontrollkästchen. Das Dialogfeld Create webhook wird erneut angezeigt.

  13. In : GitHub Enterprise Server wählen Sie das Repository CodeBuild projekt wird gespeichert.

  14. Wählen Sie Settings (Einstellungen), Hooks & services (Hooks und Services) und anschließend Add webhook (Webhook hinzufügen) aus.

  15. Geben Sie die Nutzlast-URL und den geheimen Schlüssels ein, übernehmen Sie die Standardeinstellungen für die anderen Felder, und wählen Sie dann Add webhook.

  16. Kehren Sie zu Ihrem zurück CodeBuild -Projekt. Schließen Sie das Dialogfeld Create webhook und wählen Sie Start build.