CodeCommit Referenz zur Quellaktion - 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.

CodeCommit Referenz zur Quellaktion

Startet die Pipeline, wenn ein neuer Commit für das konfigurierte CodeCommit Repository und den Branch vorgenommen wird.

Wenn Sie die Konsole verwenden, um die Pipeline zu erstellen oder zu bearbeiten, CodePipeline erstellt sie eine CodeCommit CloudWatch Ereignisregel, die Ihre Pipeline startet, wenn eine Änderung im Repository erfolgt.

Sie müssen bereits ein CodeCommit Repository erstellt haben, bevor Sie die Pipeline über eine CodeCommit Aktion verbinden können.

Nachdem eine Codeänderung erkannt wurde, haben Sie die folgenden Optionen, um den Code an nachfolgende Aktionen zu übergeben:

  • Standard — Konfiguriert die CodeCommit Quellaktion so, dass sie eine ZIP Datei mit einer flachen Kopie Ihres Commits ausgibt.

  • Vollständiger Klon — Konfiguriert die Quellaktion so, dass sie für nachfolgende Aktionen eine URL Git-Referenz auf das Repository ausgibt.

    Derzeit kann die URL Git-Referenz nur von CodeBuild Downstream-Aktionen verwendet werden, um das Repo und die zugehörigen Git-Metadaten zu klonen. Der Versuch, eine URL Git-Referenz auf CodeBuild Nichtaktionen zu übergeben, führt zu einem Fehler.

Aktionstyp

  • Kategorie: Source

  • Eigentümer: AWS

  • Anbieter: CodeCommit

  • Version: 1

Konfigurationsparameter

RepositoryName

Erforderlich: Ja

Der Name des Repositorys, in dem Quelländerungen erkannt werden sollen.

BranchName

Erforderlich: Ja

Der Name des Zweigs, in dem Quelländerungen erkannt werden sollen.

PollForSourceChanges

Erforderlich: Nein

PollForSourceChangessteuert, ob das CodeCommit Repository nach Quellenänderungen CodePipeline abfragt. Wir empfehlen, stattdessen CloudWatch Ereignisse zu verwenden, um Quellenänderungen zu erkennen. Weitere Informationen zur Konfiguration von CloudWatch Ereignissen finden Sie unter Migrieren Sie Abfrage-Pipelines (CodeCommit Quelle) () CLI oderMigrieren Sie Abfrage-Pipelines (CodeCommit Quelle) (AWS CloudFormation Vorlage).

Wichtig

Wenn Sie beabsichtigen, eine CloudWatch Ereignisregel zu konfigurieren, müssen Sie „PollForSourceChangesauf“ festlegen, false um doppelte Pipeline-Ausführungen zu vermeiden.

Gültige Werte für diesen Parameter sind:

  • true: Wenn diese Option gesetzt ist, CodePipeline wird Ihr Repository nach Quellenänderungen abgefragt.

    Anmerkung

    Wenn Sie diese Option weglassenPollForSourceChanges, wird CodePipeline standardmäßig Ihr Repository nach Quelländerungen abgefragt. Dieses Verhalten ist das gleiche, als ob PollForSourceChanges enthalten wäre und auf true festgelegt würde.

  • false: Falls gesetzt, fragt dein Repository CodePipeline nicht nach Quellenänderungen ab. Verwenden Sie diese Einstellung, wenn Sie beabsichtigen, eine CloudWatch Ereignisregel zur Erkennung von Quelländerungen zu konfigurieren.

OutputArtifactFormat

Erforderlich: Nein

Das Format des Ausgabeartefakts. Werte können entweder CODEBUILD_CLONE_REF oder CODE_ZIP sein. Wenn dieser Parameter nicht angegeben wird, lautet der Standardwert CODE_ZIP.

Wichtig

Die CODEBUILD_CLONE_REF Option kann nur von CodeBuild nachgelagerten Aktionen verwendet werden.

Wenn Sie diese Option wählen, müssen Sie Ihrer codecommit:GitPull CodeBuild Servicerolle die Berechtigung hinzufügen, wie unter beschriebenFügen Sie CodeBuild GitClone Berechtigungen für CodeCommit Quellaktionen hinzu. Sie müssen Ihrer CodePipeline Servicerolle auch die codecommit:GetRepository Berechtigung hinzufügen, wie unter beschriebenHinzufügen von Berechtigungen zur CodePipeline-Servicerolle. Ein Tutorial, das Ihnen zeigt, wie Sie die Option Vollständiges Klonen verwenden, finden Sie unterTutorial: Vollständigen Klon mit einer CodeCommit Pipeline-Quelle verwenden.

Input artifacts (Eingabeartefakte)

  • Anzahl der Artefakte: 0

  • Beschreibung: Eingabe-Artefakte sind für diesen Aktionstyp nicht gültig.

Ausgabeartefakte

  • Anzahl der Artefakte: 1

  • Beschreibung: Das Ausgabeartefakt dieser Aktion ist eine ZIP Datei, die den Inhalt des konfigurierten Repositorys und den Branch im Commit enthält, der als Quellrevision für die Pipeline-Ausführung angegeben wurde. Die aus dem Repository generierten Artefakte sind die Ausgabeartefakte für die CodeCommit Aktion. Die Quellcode-Commit-ID wird CodePipeline als Quellrevision für die ausgelöste Pipeline-Ausführung angezeigt.

Ausgabevariablen

Wenn dies konfiguriert ist, werden durch diese Aktion Variablen erzeugt, die von der Aktionskonfiguration einer nachgeschalteten Aktion in der Pipeline referenziert werden können. Diese Aktion erzeugt Variablen, die als Ausgabevariablen angezeigt werden können, auch wenn die Aktion keinen Namespace hat. Sie konfigurieren eine Aktion mit einem Namespace, um diese Variablen für die Konfiguration nachgeschalteter Aktionen zur Verfügung zu stellen.

Weitere Informationen finden Sie unter Variablen-Referenz.

CommitId

Die CodeCommit Commit-ID, die die Pipeline-Ausführung ausgelöst hat. Commit IDs sind der vollständige SHA Teil des Commits.

CommitMessage

Die Beschreibungsmeldung (wenn vorhanden), die dem Commit zugeordnet ist, der die Pipeline-Ausführung ausgelöst hat.

RepositoryName

Der Name des CodeCommit Repositorys, in dem der Commit vorgenommen wurde, der die Pipeline ausgelöst hat.

BranchName

Der Name des Branches für das CodeCommit Repository, in dem die Quellenänderung vorgenommen wurde.

AuthorDate

Das Datum im Zeitstempelformat, an dem der Commit erstellt wurde.

Weitere Informationen zum Unterschied zwischen einem Autor und einem Committer in Git finden Sie unter Viewing the Commit History in Pro Git von Scott Chacon und Ben Straub.

CommitterDate

Das Datum im Zeitstempelformat, an dem der Commit durchgeführt wurde.

Weitere Informationen zum Unterschied zwischen einem Autor und einem Committer in Git finden Sie unter Viewing the Commit History in Pro Git von Scott Chacon und Ben Straub.

Beispielaktionskonfiguration

Beispiel für das Standardformat für Ausgabeartefakte

YAML
Actions: - OutputArtifacts: - Name: Artifact_MyWebsiteStack InputArtifacts: [] Name: source Configuration: RepositoryName: MyWebsite BranchName: main PollForSourceChanges: 'false' RunOrder: 1 ActionTypeId: Version: '1' Provider: CodeCommit Category: Source Owner: AWS Name: Source
JSON
{ "Actions": [ { "OutputArtifacts": [ { "Name": "Artifact_MyWebsiteStack" } ], "InputArtifacts": [], "Name": "source", "Configuration": { "RepositoryName": "MyWebsite", "BranchName": "main", "PollForSourceChanges": "false" }, "RunOrder": 1, "ActionTypeId": { "Version": "1", "Provider": "CodeCommit", "Category": "Source", "Owner": "AWS" } } ], "Name": "Source" },

Beispiel für das vollständige Clone-Ausgabeartefaktformat

YAML
name: Source actionTypeId: category: Source owner: AWS provider: CodeCommit version: '1' runOrder: 1 configuration: BranchName: main OutputArtifactFormat: CODEBUILD_CLONE_REF PollForSourceChanges: 'false' RepositoryName: MyWebsite outputArtifacts: - name: SourceArtifact inputArtifacts: [] region: us-west-2 namespace: SourceVariables
JSON
{ "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "provider": "CodeCommit", "version": "1" }, "runOrder": 1, "configuration": { "BranchName": "main", "OutputArtifactFormat": "CODEBUILD_CLONE_REF", "PollForSourceChanges": "false", "RepositoryName": "MyWebsite" }, "outputArtifacts": [ { "name": "SourceArtifact" } ], "inputArtifacts": [], "region": "us-west-2", "namespace": "SourceVariables" }

Die folgenden verwandten Ressourcen bieten Ihnen nützliche Informationen für die Arbeit mit dieser Aktion.

  • Tutorial: Erstellen Sie eine einfache Pipeline (CodeCommitRepository)— Dieses Tutorial enthält ein Beispiel für eine App-Spezifikationsdatei sowie eine CodeDeploy Beispielanwendung und eine Bereitstellungsgruppe. Verwenden Sie dieses Tutorial, um eine Pipeline mit einer CodeCommit Quelle zu erstellen, die auf EC2 Amazon-Instances bereitgestellt wird.