Referenzbereitstellung

Git Webhooks auf AWS

HTTPS-Endpunkt und Code zum Verknüpfen Ihres Git-Repositorys mit AWS

Diese Lösung stellt einen HTTPS-Endpunkt bereit, mit dem Sie einen Webhook konfigurieren können, um Ihr Git mit Amazon Web Services (AWS) zu verbinden. Mit einem eingerichteten Webhook wird das Repository jedes Mal, wenn ein Commit übertragen wird, automatisch abgerufen, gezippt und in einen Amazon Simple Storage System (Amazon S3)-Bucket hochgeladen. Anschließend können Sie AWS CodePipeline, AWS CodeBuild und AWS CodeDeploy so konfigurieren, dass sie den S3-Bucket als Quelle verwenden.

Diese Lösung wurde von AWS entwickelt.

 


AWS Service Catalog-Administratoren können diese Architektur zu ihrem eigenen Katalog hinzufügen.  

  •  Ihre Möglichkeiten
  • Die folgenden Elemente sind in der von dieser Lösung erstellten serverless AWS-Cloud-Konfiguration enthalten:

    • Ein Amazon API Gateway-Endpunkt zum Empfangen von Git-Webhook-Anforderungen und zum Weiterleiten an AWS Lambda.
    • Eine AWS Lambda-Funktion zum Verarbeiten von Git-Webhook-Anforderungen vom API-Gateway und zum Aufrufen eines AWS CodeBuild-Projekts.
    • Ein AWS CodeBuild-Projekt, mit dem Sie eine Verbindung zu Ihrem Git-Dienst herstellen und dann die neueste Version Ihres Git-Repositorys abrufen, komprimieren und auf Amazon S3 hochladen können.
    • Ein AWS Key Management Service-Schlüssel (AWS KMS) zum Ver- und Entschlüsseln von SSH-Schlüsseln (Secure Shell), mit denen CodeBuild über SSH eine Verbindung zu Ihrem Git-Repository herstellt. Das SSH-Schlüsselpaar wird bei der Bereitstellung des Stapels von einer von Lambda unterstützten benutzerdefinierten AWS CloudFormation-Ressource generiert.
    • Zwei Amazon S3-Buckets: eines für Git-Repository-Inhalte und eines für verschlüsselte SSH-Schlüssel. Eine von Lambda unterstützte benutzerdefinierte AWS CloudFormation-Ressource löscht den Inhalt der S3-Buckets, wenn Sie den Stapel löschen. Wenn Sie Sicherungen benötigen, kopieren Sie die S3-Buckets, bevor Sie den Stapel löschen.
  •  Bereitstellungsanleitung
  • Zum Aufbau Ihrer Git-Umgebung mit AWS befolgen Sie bitte die Anweisungen im Bereitstellungsleitfaden. Der Bereitstellungsprozess umfasst folgende Schritte:

    1. Falls Sie noch kein AWS-Konto haben, registrieren Sie sich bitte unter https://aws.amazon.com.
    2. Starten Sie die Lösung. Die Bereitstellung dauert ungefähr 15 Minuten.
    3. Konfigurieren Sie Ihr Git-Repository für die Einrichtung von Webhooks, indem Sie den Anweisungen Ihres Git-Services folgen. (Sie müssen in der Lage sein, über das Internet eine Verbindung zu Ihrem Git-Repository herzustellen.)
    4. Konfigurieren Sie einen AWS-Service, um mit dem S3-Objekt eine Verbindung herzustellen.
    5. Testen Sie ein Commit.

    Amazon kann Informationen zur Benutzerbereitstellung an den AWS-Partner weitergeben, der mit AWS an dieser Lösung zusammengearbeitet hat.  

  •  Kosten und Lizenzen
  • Bei dieser Lösung wird ein AWS Key Management Service (AWS KMS)-Schlüssel verwendet, für den monatliche Kosten für die Speicherung und Nutzung des Schlüssels anfallen. (Weitere Informationen finden Sie unter Preise für AWS Key Management Service.)

    Die Kosten für API Gateway, Amazon S3, Lambda und AWS CodeBuild variieren je nachdem, wie oft Sie Code in das verbundene Git-Repository übertragen. (Weitere Informationen finden Sie unter Amazon-API-Gateway-Preise, Amazon-S3-Preise, AWS-Lambda-Preise und AWS-CodeBuild-Preise.)

    Sie tragen die Kosten für die AWS-Services und alle Lizenzen von Drittanbietern, die bei der Nutzung dieser Lösung verwendet werden. Für die Nutzung der Lösung fallen keine zusätzlichen Kosten an.

    Diese Lösung umfasst Konfigurationsparameter, die Sie anpassen können. Einige dieser Einstellungen, beispielsweise der Instance-Typ, wirken sich auf die Bereitstellungskosten aus. Kostenvoranschläge finden Sie auf den Preisseiten der einzelnen AWS-Services, die Sie nutzen. Preisänderungen sind vorbehalten.

    Tipp: Erstellen Sie nach dem Bereitstellen einer Lösung AWS-Kosten- und -Nutzungsberichte, um die damit verbundenen Kosten zu verfolgen. Diese Berichte liefern Abrechnungsmetriken an einen Amazon Simple Storage Service (Amazon S3)-Bucket in Ihrem Konto. Sie liefern Kostenschätzungen auf der Grundlage der Nutzung während jedes Monats und aggregieren die Daten am Ende des Monats. Weitere Informationen finden Sie unter  Was sind AWS-Kosten- und Nutzungsberichte?