Tutorial: Vollständigen Klon mit einer CodeCommit Pipeline-Quelle verwenden - AWS CodePipeline

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.

Tutorial: Vollständigen Klon mit einer CodeCommit Pipeline-Quelle verwenden

Sie können die Option „Vollständiges Klonen“ für Ihre CodeCommit Quellaktion unter auswählen CodePipeline. Verwenden Sie diese Option, um den Zugriff CodeBuild auf Git-Metadaten in Ihrer Pipeline-Build-Aktion zu ermöglichen.

In diesem Tutorial erstellen Sie eine Pipeline, die auf Ihr CodeCommit Repository zugreift, die Option Full Clone für Quelldaten verwendet und einen CodeBuild Build ausführt, der Ihr Repository klont und Git-Befehle für das Repository ausführt.

Anmerkung

CodeBuild Aktionen sind die einzigen Downstream-Aktionen, die die Verwendung von Git-Metadaten unterstützen, die mit der Git-Clone-Option verfügbar sind. Außerdem kann deine Pipeline kontoübergreifende Aktionen enthalten, aber die CodeCommit Aktion und die CodeBuild Aktion müssen sich im selben Konto befinden, damit die Option „Vollständiges Klonen“ erfolgreich ist.

Wichtig

Im Rahmen der Erstellung einer Pipeline wird ein vom Kunden bereitgestellter S3-Artefakt-Bucket von CodePipeline for Artifacts verwendet. (Dies unterscheidet sich von dem Bucket, der für eine S3-Quellaktion verwendet wird.) Wenn sich der S3-Artefakt-Bucket in einem anderen Konto befindet als das Konto für Ihre Pipeline, stellen Sie sicher, dass der S3-Artefakt-Bucket denjenigen gehört AWS-Konten , die sicher und zuverlässig sind.

Voraussetzungen

Bevor Sie beginnen, müssen Sie ein CodeCommit Repository in demselben AWS Konto und derselben Region wie Ihre Pipeline erstellen.

Schritt 1: Erstellen Sie eine README Datei

Gehen Sie wie folgt vor, um Ihrem Quell-Repository eine README Datei hinzuzufügen. Die README Datei enthält ein Beispiel für eine Quelldatei, die von der CodeBuild nachgeschalteten Aktion gelesen werden kann.

Um eine README Datei hinzuzufügen
  1. Loggen Sie sich in Ihr Repository ein und wählen Sie Ihr Repository aus.

  2. Um eine neue Datei zu erstellen, wähle Datei hinzufügen > Datei erstellen. Benennen Sie die DateiREADME.md. Datei und fügen Sie den folgenden Text hinzu.

    This is a CodeCommit repository!
  3. Wählen Sie Commit changes (Änderungen übernehmen) aus.

    Die Datei README.md muss sich im Stammverzeichnis Ihres Repositorys befinden.

Schritt 2: Erstellen Sie Ihre Pipeline und erstellen Sie ein Projekt

In diesem Abschnitt erstellen Sie eine Pipeline mit den folgenden Aktionen:

  • Eine Quellphase mit einer CodeCommit Quellaktion.

  • Eine Build-Phase mit einer AWS CodeBuild Build-Aktion.

So erstellen Sie mit dem Assistenten eine Pipeline
  1. Melden Sie sich bei der CodePipeline Konsole an unter https://console.aws.amazon.com/codepipeline/.

  2. Wählen Sie auf der Seite Welcome (Willkommen) die Option Getting started (Erste Schritte) oder auf der Seite Pipelines die Option Create pipeline (Pipeline erstellen).

  3. Geben Sie unter Step 1: Choose pipeline settings (Schritt 1: Auswahl der Pipeline-Einstellungen) unter Pipeline name (Pipeline-Name) MyCodeCommitPipeline ein.

  4. Wählen Sie im Feld Pipeline-Typ die Option V1 für die Zwecke dieses Tutorials aus. Sie können auch V2 wählen. Beachten Sie jedoch, dass sich die Pipeline-Typen in ihren Eigenschaften und im Preis unterscheiden. Weitere Informationen finden Sie unter Arten von Pipelines.

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

    • Wählen Sie Existing service role (Vorhandene Servicerolle).

    • Wählen Sie Ihre bestehende CodePipeline Servicerolle aus. Diese Rolle muss über die entsprechenden codecommit:GetRepository IAM Berechtigungen gemäß Ihrer Richtlinie für Servicerollen verfügen. Weitere Informationen finden Sie unter Hinzufügen von Berechtigungen zur CodePipeline Servicerolle.

  6. Lassen Sie die Standardwerte bei Erweiterte Einstellungen unverändert. Wählen Sie Weiter.

  7. Gehen Sie auf der Seite Schritt 2: Quellstufe hinzufügen wie folgt vor:

    1. Wählen Sie unter Source provider (Quell-Anbieter) die Option CodeCommit.

    2. Wählen Sie unter Repository-Name den Namen Ihres Repositorys aus.

    3. Wählen Sie unter Branch-Name Ihren Branchennamen aus.

    4. Stellen Sie sicher, dass die Option Starten der Pipeline bei Änderung des Quellcodes ausgewählt ist.

    5. Wählen Sie unter Ausgabeartefaktformat die Option Vollständiger Klon aus, um die Git-Clone-Option für das Quell-Repository zu aktivieren. Nur Aktionen, die von bereitgestellt werden, CodeBuild können die Git-Clone-Option verwenden.

    Wählen Sie Weiter.

  8. Gehen Sie in der Phase Build hinzufügen wie folgt vor:

    1. Wählen Sie unter Build provider (Build-Anbieter) die Option AWS CodeBuild aus. Belassen Sie unter Region als Standardeinstellung die Pipeline-Region.

    2. Wählen Sie Create project (Projekt erstellen) aus.

    3. Geben Sie unter Project name (Projektname) einen Namen für dieses Build-Projekt ein.

    4. Wählen Sie für Environment image (Umgebungs-Image) die Option Managed image (Verwaltetes Image) aus. Wählen Sie für Operating system (Betriebssystem) die Option Ubuntu aus.

    5. Wählen Sie unter Runtime (Laufzeit) die Option Standard aus. Wählen Sie für Image (Abbild) die Option aws/codebuild/standard:5.0 aus.

    6. Wählen Sie unter Service role (Servicerolle) die Option New service role (Neue Servicerolle) aus.

      Anmerkung

      Notieren Sie sich den Namen Ihrer CodeBuild Servicerolle. Sie benötigen den Rollennamen für den letzten Schritt in diesem Tutorial.

    7. Wählen Sie unter BuildSpec bei Build specifications (Build-Spezifikationen) die Option Insert build commands (Build-Befehle einfügen) aus. Wählen Sie Zum Editor wechseln und fügen Sie dann unter Build-Befehle den folgenden Code ein.

      version: 0.2 env: git-credential-helper: yes phases: install: #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions. #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails. runtime-versions: nodejs: 12 # name: version #commands: # - command # - command pre_build: commands: - ls -lt - cat README.md build: commands: - git log | head -100 - git status - ls - git describe --all #post_build: #commands: # - command # - command #artifacts: #files: # - location #name: $(date +%Y-%m-%d) #discard-paths: yes #base-directory: location #cache: #paths: # - paths
    8. Wählen Sie Weiter zu CodePipeline. Dadurch kehren Sie zur CodePipeline Konsole zurück und erstellen ein CodeBuild Projekt, das Ihre Build-Befehle für die Konfiguration verwendet. Das Build-Projekt verwendet eine Servicerolle zur Verwaltung von AWS-Service Berechtigungen. Dieser Vorgang kann einige Minuten dauern.

    9. Wählen Sie Weiter.

  9. Wählen Sie auf der Seite Step 4: Add deploy stage (Schritt 4: Bereitstellungsstufe hinzufügen) die Option Skip deploy stage (Bereitstellungsstufe überspringen) aus und akzeptieren Sie anschließend die Warnmeldung, indem Sie erneut Skip (Überspringen) auswählen. Wählen Sie Weiter.

  10. Wählen Sie unter Step 5: Review (Schritt 5: Überprüfen) die Option Create pipeline (Pipeline erstellen) aus.

Schritt 3: Aktualisieren Sie die CodeBuild Servicerollenrichtlinie, um das Repository zu klonen

Der erste Pipeline-Lauf schlägt fehl, da Sie die CodeBuild Servicerolle mit den Berechtigungen zum Abrufen aus Ihrem Repository aktualisieren müssen.

Fügen Sie die codecommit:GitPull IAM Berechtigung zu Ihrer Servicerollenrichtlinie hinzu. Anweisungen zum Aktualisieren der Richtlinie in der IAM Konsole finden Sie unterFügen Sie CodeBuild GitClone Berechtigungen für CodeCommit Quellaktionen hinzu.

Schritt 4: Repository-Befehle in der Build-Ausgabe anzeigen

Um die Build-Ausgabe anzuzeigen
  1. Wenn Ihre Servicerolle erfolgreich aktualisiert wurde, wählen Sie in der CodeBuild Phase „Fehlgeschlagen“ die Option „Erneut versuchen“.

  2. Wenn die Pipeline erfolgreich ausgeführt wurde, wählen Sie in der erfolgreichen Buildphase die Option Details anzeigen aus.

    Wählen Sie auf der Detailseite die Registerkarte Protokolle aus. Sehen Sie sich die CodeBuild Build-Ausgabe an. Die Befehle geben den Wert der eingegebenen Variablen aus.

    Die Befehle geben den README.md Dateiinhalt aus, listen die Dateien im Verzeichnis auf, klonen das Repository, zeigen das Protokoll an und werden ausgeführtgit describe --all.