Referenzbereitstellung

CI/CD-Pipeline für AWS CloudFormation-Vorlagen in AWS

Verwenden Sie AWS TaskCat, AWS CodePipeline und AWS CodeBuild, um Ihre Vorlagen zu testen und bereitzustellen

Dieser Quick Start stellt eine Continuous Integration und Continuous Delivery (CI/CD)-Pipeline in der Amazon Web Services (AWS)-Cloud in ca. 15 Minuten bereit, um AWS CloudFormation-Vorlagen von einem GitHub Repository automatisch zu testen.  

Die CI/CD-Umgebung beinhaltet AWS TaskCat für Testzwecke, AWS CodePipeline für Continuous Integration und AWS CodeBuild als Buildservice.

TaskCat ist ein Open-Source-Tool, das AWS CloudFormation-Vorlagen testet. Es erstellt Stacks in mehreren AWS-Regionen gleichzeitig und generiert einen Bericht mit einer Note (bestanden/durchgefallen) für jede Region. Sie können die Regionen festlegen, die Anzahl der Availability Zones angeben, die Sie in den Test einbeziehen möchten. Darüber hinaus können Sie auch die AWS CloudFormation-Parameterwerte, die Sie testen möchten, festhalten. Sie können die CI/CD-Pipeline verwenden, um beliebige AWS CloudFormation-Vorlagen zu testen, darunter auch geschachtelte Vorlagen von einem GitHub-Repository.

taskcat-logo

Dieser Quick Start wurde von
AWS-Lösungsarchitekten.

 

  •  Ihre Möglichkeiten
  •  Anleitung zum Bereitstellen
  •  Kosten und Lizenzen
  •  Ihre Möglichkeiten
  • Mit diesem Quick Start können Sie die folgenden Umgebungen in AWS einrichten:

    • Eine von CodePipeline erstellte Pipeline, die ausgelöst wird, wenn ein Commit in den referenzierten Zweig des in der Quellenstufe verwendeten Github-Repositorys erfolgt.
    • Ein Build-Projekt in CodeBuild, um TaskCat auszuführen und AWS CloudFormation-Vorlagen zu testen.
    • Eine AWS Lambda-Funktion, die den Quellzweig des Github-Repositorys mit dem Versionszweig zusammenführt.
    • AWS Identity and Access Management (IAM)-Rollen für die Lambda-Funktion und das Build-Projekt.
    • Ein Amazon Simple Storage Service (Amazon S3)-Bucket, um die Build-Artefakte vorübergehend zu speichern und den TaskCat-Bericht zu speichern.
     
    Die CI/CD-Pipeline besteht aus drei Stufen:
     
    • Quellenstufe. Wenn ein Commit in den Quellzweig des GitHub-Repository gemacht wird, wird die CI/CD-Pipeline ausgelöst. Der Inhalt des Repositorys wird abgerufen, gezippt und in einem S3-Bucket gespeichert.
    • Build/Teststufe. CodeBuild erstellt einen Linux-Container, installiert TaskCat und seine Abhängigkeiten im Container, lädt die gezippte Datei herunter, die den Quellcode aus dem S3-Bucket enthält, entpackt sie und führt Tests mit TaskCat aus. TaskCat generiert einen Bericht, der in den S3-Bucket hochgeladen wird. Wenn die Tests erfolgreich sind, wird die Bereitstellungsstufe ausgelöst.
    • Bereitstellungsstufe. CodePipeline führt eine Lambda-Funktion aus, die den Quellzweig des Github-Repositorys mit dem Versionszweig zusammenführt. Der Code ist nun für die Bereitstellung aus dem GitHub-Repository bereit.  
  •  Anleitung zum Bereitstellen
  • Um Ihre CI/CD-Umgebung zum Testen von AWS CloudFormation-Vorlagen auf AWS zu erstellen, folgen Sie der Anleitung im Bereitstellungshandbuch. Der Quick Start erfordert ein GitHub-Repository, das eine Konfigurationsdatei, eine Parameterdatei und die zu testenden AWS CloudFormation-Vorlagen enthält.

    Die Bereitstellungsstufe umfasst folgende Schritte:

    1. Wenn Sie noch über kein AWS-Konto verfügen, melden Sie sich bitte unter https://aws.amazon.com an.
    2. Richten Sie ein GitHub OAuth 2 Token mit den Scopes admin:repo_hook und repo ein.
    3. Starten Sie den Quick Start. Die Bereitstellung dauert ungefähr 15 Minuten.
    4. Überprüfen Sie die Bereitstellung, indem Sie die CI/CD-Pipeline in der CodePipeline-Konsole anzeigen.

    Amazon kann Benutzerbereitstellungsinformationen an den AWS-Partner weitergeben, der beim Schnellstart mit AWS zusammengearbeitet hat.  

  •  Kosten und Lizenzen
  • Die Kosten der zur Ausführung dieser Quick-Start-Referenzinstallation erforderlichen AWS-Dienste sind allein von Ihnen zu tragen. Durch die Verwendung des Quick Start entstehen keine zusätzlichen Kosten.

    Die in der AWS CloudFormation-Vorlage enthaltenen Konfigurationsparameter für diesen Quick Start können angepasst werden. Kostenbeispiele finden Sie in den Preisübersichten zu den von Ihnen genutzten AWS-Services. Preisänderungen sind vorbehalten.

    Tipp: Nach der Bereitstellung des Quick Start empfehlen wir Ihnen, den AWS-Kosten- und -Nutzungsbericht zu aktivieren, um die mit dem Quick Start verbundenen Kosten zu verfolgen. Dieser Bericht liefert Abrechnungsmetriken an einen S3-Bucket in Ihrem Konto. Er bietet Ihnen auch Kostenschätzungen auf Grundlage Ihrer Nutzung über den Monat hinweg und schließt die Daten am Ende des Monats ab. Weitere Informationen zum Bericht erhalten Sie in der AWS-Dokumentation.

    Dieser Quick Start stellt AWS TaskCat bereit, das Open Source ist und unter der Apache 2.0-Lizenz kostenlos verwendet werden kann.