Build Badges-Beispiel mit CodeBuild - AWS CodeBuild

Build Badges-Beispiel mit CodeBuild

AWS CodeBuild unterstützt jetzt die Verwendung von Build Badges. Diese stellen ein integrierbares, dynamisch generiertes Image (Badge) bereit, das den Status des letzten Builds eines Projekts anzeigt. Auf dieses Image kann über eine öffentlich verfügbare URL zugegriffen werden, die für Ihr CodeBuild-Projekt generiert wurde. Auf diese Weise können alle Benutzer den Status eines CodeBuild-Projekts anzeigen. Build Badges enthalten keine Sicherheitsinformationen, sodass keine Authentifizierung erforderlich ist.

Erstellen eines Build-Projekts mit aktivierten Build Badges (Konsole)

  1. Open the AWS CodeBuild console at https://console.aws.amazon.com/codesuite/codebuild/home.

  2. If a CodeBuild information page is displayed, choose Create build project. Otherwise, on the navigation pane, expand Build, choose Build projects, and then choose Create build project.

  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 optional auch eine Beschreibung für das Build-Projekt eingeben, um anderen Benutzern seinen Zweck mitzuteilen.

  4. Wählen Sie unter Source (Quelle) für Source provider (Quellanbieter) den Anbietertyp des Quellcodes aus und führen Sie dann einen der folgenden Schritte aus:

    Anmerkung

    CodeBuild unterstützt keine Build-Badges mit dem Amazon S3-Quellanbieter. Da AWS CodePipeline Amazon S3 für Artefaktübertragungen verwendet, werden Build-Badges für Build-Projekte, die Teil einer in CodePipeline. erstellten Pipeline sind, nicht unterstützt.

    • Wenn Sie ausgewählt CodeCommit haben, wählen Sie für Repository den Namen des Repositorys aus. Wählen Sie Enable build badge (Build Badge aktivieren) aus, um den Build-Status Ihres Projekts sichtbar und einbettbar zu machen.

    • Wenn Sie ausgewählt GitHubhaben, befolgen Sie die Anweisungen zum Verbinden (oder erneuten Verbinden) mit GitHub. Wählen Sie auf der Seite GitHub Authorize application (Anwendung autorisieren) für Organization access (Organisationszugriff) die Option Request access (Zugriff anfordern) neben jedem Repository aus, auf AWS CodeBuild das Sie zugreifen möchten. Nachdem Sie Authorize application (Anwendung autorisieren) ausgewählt haben, wählen Sie in der AWS CodeBuild -Konsole für Repository den Namen des Repositorys aus, das den Quellcode enthält. Wählen Sie Enable build badge (Build Badge aktivieren) aus, um den Build-Status Ihres Projekts sichtbar und einbettbar zu machen.

    • Wenn Sie Bitbucket ausgewählt haben, befolgen Sie die Anweisungen zum Verbinden (oder erneuten Verbinden) mit Bitbucket. Wählen Sie auf der Bitbucket-Seite Confirm access to your account für Organization access die Option Grant access. aus. Nachdem Sie Grant access (Zugriff gewähren) in der AWS CodeBuild -Konsole wieder für Repository ausgewählt haben, wählen Sie den Namen des Repositorys aus, das den Quellcode enthält. Wählen Sie Enable build badge (Build Badge aktivieren) aus, um den Build-Status Ihres Projekts sichtbar und einbettbar zu machen.

      Wichtig

      Wenn Sie Ihre Projektquelle aktualisieren, kann das Auswirkungen auf die Richtigkeit der Build Badges Ihres Projekts haben.

  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. Wählen Sie für Environment type (Umgebungstyp) die Option ARM, Linux, Linux GPU oder Windows aus. Wenn Sie für External registry URL (Externe Registrierungs-URL) die Option Other registry (Andere Registrierung) auswählen, geben Sie den Namen und das Tag des Docker-Image in Docker Hub im Format docker repository/docker image name ein. Wenn Sie Amazon ECR auswählen, verwenden Sie Amazon ECR repository und Amazon ECR image zur Auswahl des Docker-Images im AWS-Konto.

    • Wenn Sie ein privates Docker-Image verwenden möchten, wählen Sie Custom image (Benutzerdefiniertes Image) aus. Wählen Sie für Environment type (Umgebungstyp) die Option ARM, Linux, Linux GPU oder Windows aus. 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. In Service role, do one of the following:

    • If you do not have a CodeBuild service role, choose New service role. In Role name, enter a name for the new role.

    • If you have a CodeBuild service role, choose Existing service role. In Role ARN, choose the service role.

    Anmerkung

    When you use the console to create or update a build project, you can create a CodeBuild service role at the same time. By default, the role works with that build project only. If you use the console to associate this service role with another build project, the role is updated to work with the other build project. A service role can work with up to 10 build projects.

  7. Führen Sie in Buildspec (Build-Spezifikation) einen der folgenden Schritte aus:

    • Wählen Sie Use a buildspec file (Eine buildspec-Datei verwenden), um die buildspec.yml-Datei im Quellcode-Stammverzeichnis zu verwenden.

    • Wählen Sie Insert build commands (Build-Befehle einfügen) aus, um über die Konsole Build-Befehle einzugeben.

    Weitere Informationen hierzu finden Sie unter Build-Spezifikationsreferenz.

  8. In Artifacts, for Type, do one of the following:

    • If you do not want to create build output artifacts, choose No artifacts.

    • To store the build output in an S3 bucket, choose Amazon S3, and then do the following:

      • If you want to use your project name for the build output ZIP file or folder, leave Name blank. Otherwise, enter the name. By default, the artifact name is the project name. If you want to use a different name, enter it in the artifacts name box. If you want to output a ZIP file, include the zip extension.

      • For Bucket name, choose the name of the output bucket.

      • If you chose Insert build commands earlier in this procedure, for Output files, enter the locations of the files from the build that you want to put into the build output ZIP file or folder. For multiple locations, separate each location with a comma (for example, appspec.yml, target/my-app.jar). For more information, see the description of files in Syntax der Build-Spezifikation.

  9. Erweitern Sie Additional configuration (Zusätzliche Konfiguration) und wählen Sie die entsprechenden Optionen aus.

  10. Wählen Sie Create build project (Build-Projekt erstellen). aus. Wählen Sie auf der Seite Review (Überprüfen) die Option Start build (Build starten) aus, um den Build auszuführen.

Erstellen eines Build-Projekts mit aktivierten Build Badges (CLI)

Informationen über das Erstellen eines Build-Projekts finden Sie unter Erstellen eines Build-Projekts (AWS CLI). Um Build Badges in Ihr AWS CodeBuild Projekt aufzunehmen, müssen Sie Folgendes angeben: badgeEnabled mit dem Wert true.

Zugriff auf Ihre AWS CodeBuild Build Badges

Für den Zugriff auf Build Badges können Sie die AWS CodeBuild-Konsole oder die AWS CLI verwenden.

  • Wählen Sie in der CodeBuild -Konsole in der Liste der Build-Projekte in der Spalte Name den Link für das Build-Projekt aus. Im Build-Projekt: project-name Seite unter Configuration (Konfiguration) die Option Copy badge URL (Badge-URL kopieren) aus. Weitere Informationen finden Sie unter Anzeigen der Details eines Build-Projekts (Konsole).

  • Führen Sie in der AWS CLI den Befehl batch-get-projects aus. Die Build Badge-URL ist im Abschnitt zu den Projektumgebungsdetails der Ausgabe enthalten. Weitere Informationen finden Sie unter Anzeigen der Details eines Build-Projekts (AWS CLI).

Die Build Badge-Anforderungs-URL wird mit einem gemeinsamen Standard-Branch generiert. Sie können jedoch jede Verzweigung in Ihrem Quell-Repository angeben, die Sie zum Ausführen eines Builds verwendet haben. Zum Beispiel:

https://codebuild.us-east-1.amazon.com/badges?uuid=...&branch=<branch>

Sie können auch ein Tag aus Ihrem Quell-Repository angeben, indem Sie den branch Parameter durch den tag Parameter in der Badge-URL ersetzen. Zum Beispiel:

https://codebuild.us-east-1.amazon.com/badges?uuid=...&tag=<tag>

Veröffentlichen Ihrer CodeBuild Build Badges

Sie können Ihre Build Badge-Anforderungs-URL in eine Markdown-Datei in Ihr bevorzugtes Repository einschließen (z. B. GitHub oder CodeCommit), um den Status des letzten Builds anzuzeigen.

Markdown-Code – Beispiel:

![Build Status](https://codebuild.us-east-1.amazon.com/badges?uuid=...&branch=main)

CodeBuild Badge-Status

  • PASSING Der neueste Build der angegebenen Verzweigung wurde übergeben.

  • FAILING Der neueste Build der angegebenen Verzweigung hat das Zeitlimit überschritten, ist fehlgeschlagen, fehlerhaft oder wurde gestoppt.

  • IN_PROGRESS Der neueste Build für die angegebene Verzweigung wird verarbeitet.

  • UNKNOWN Das Projekt hat für die angegebene Verzweigung oder generell noch keinen Build ausgeführt. Darüber hinaus ist die Funktion zum Erstellen von Badges möglicherweise deaktiviert.