View a markdown version of this page

CodeStarSourceConnection für Bitbucket Cloud GitHub, GitHub Enterprise Server und GitLab.com GitLab selbstverwaltete Aktionen - 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.

CodeStarSourceConnection für Bitbucket Cloud GitHub, GitHub Enterprise Server und GitLab.com GitLab selbstverwaltete Aktionen

Quellaktionen für Verbindungen werden unterstützt von. AWS CodeConnections CodeConnections ermöglicht es Ihnen, Verbindungen zwischen AWS Ressourcen und Repositorys von Drittanbietern zu erstellen und zu verwalten, z. GitHub Startet eine Pipeline, wenn ein neuer Commit in einem Quellcode-Repository eines Drittanbieters erfolgt. Die Quellaktion ruft Codeänderungen ab, wenn eine Pipeline manuell ausgeführt wird oder wenn ein Webhook-Ereignis vom Quellanbieter gesendet wird.

Sie können Aktionen in Ihrer Pipeline so konfigurieren, dass sie eine Git-Konfiguration verwenden, mit der Sie Ihre Pipeline mit Triggern starten können. Weitere Informationen zur Konfiguration der Pipeline-Trigger-Konfiguration zum Filtern nach Triggern finden Sie unterTrigger mit Code-Push- oder Pull-Request-Ereignistypen hinzufügen.

Anmerkung

Diese Funktion ist in den Regionen Asien-Pazifik (Hongkong), Asien-Pazifik (Hyderabad), Asien-Pazifik (Jakarta), Asien-Pazifik (Melbourne), Asien-Pazifik (Osaka), Afrika (Kapstadt), Naher Osten (Bahrain), Naher Osten (VAE), Europa (Spanien), Europa (Zürich), Israel (Tel Aviv) oder AWS GovCloud (US-West) nicht verfügbar. Informationen zu anderen verfügbaren Aktionen finden Sie unter. Produkt- und Serviceintegrationen mit CodePipeline Überlegungen zu dieser Aktion in der Region Europa (Mailand) finden Sie im Hinweis unterCodeStarSourceConnection für Bitbucket Cloud GitHub, GitHub Enterprise Server und GitLab.com GitLab selbstverwaltete Aktionen.

Verbindungen können Ihre AWS Ressourcen den folgenden Repositorys von Drittanbietern zuordnen:

  • Bitbucket Cloud (über die Bitbucket-Provider-Option in der CodePipeline Konsole oder den Bitbucket Anbieter in der CLI)

    Anmerkung

    Sie können Verbindungen mit einem Bitbucket-Cloud-Repository erstellen. Installierte Bitbucket-Anbietertypen wie Bitbucket Server werden nicht unterstützt.

  • Anmerkung

    Wenn du einen Bitbucket-Workspace verwendest, benötigst du Administratorzugriff, um die Verbindung herzustellen.

  • GitHub und GitHub Enterprise Cloud (über die Provider-Option GitHub (via GitHub App) in der CodePipeline Konsole oder den GitHub Anbieter in der CLI)

    Anmerkung

    Wenn sich Ihr Repository in einer GitHub Organisation befindet, müssen Sie der Eigentümer der Organisation sein, um die Verbindung herstellen zu können. Wenn Sie ein Repository verwenden, das sich nicht in einer Organisation befindet, müssen Sie der Repository-Besitzer sein.

  • GitHub Enterprise Server (über die GitHub Enterprise Server-Provider-Option in der CodePipeline Konsole oder den GitHub Enterprise Server Anbieter in der CLI)

  • GitLab.com (über die GitLab Provider-Option in der CodePipeline Konsole oder den GitLab Provider in der CLI)

    Anmerkung

    Sie können Verbindungen zu einem Repository herstellen GitLab, in dem Sie die Eigentümerrolle haben, und dann kann die Verbindung mit dem Repository mit Ressourcen wie verwendet werden CodePipeline. Bei Repositorys in Gruppen müssen Sie nicht der Gruppenbesitzer sein.

  • Self-managed Installation für GitLab (Enterprise Edition oder Community Edition) (über die Option für GitLab selbstverwaltete Anbieter in der CodePipeline Konsole oder den GitLabSelfManaged Anbieter in der CLI)

Anmerkung

Jede Verbindung unterstützt alle Repositorys, die Sie bei diesem Anbieter haben. Sie müssen nur für jeden Anbietertyp eine neue Verbindung erstellen.

Verbindungen ermöglichen es Ihrer Pipeline, Quellenänderungen über die Installations-App des Drittanbieters zu erkennen. Webhooks werden beispielsweise zum Abonnieren von GitHub Ereignistypen verwendet und können in einer Organisation, einem Repository oder einer GitHub App installiert werden. Ihre Verbindung installiert einen Repository-Webhook in Ihrer GitHub App, der Ereignisse vom Typ Push GitHub abonniert.

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

  • Standard: CodeStarSourceConnection Kann wie bei anderen vorhandenen CodePipeline Quellaktionen eine ZIP-Datei mit einer flachen Kopie deines Commits ausgeben.

  • Vollständiger Klon: CodeStarSourceConnection kann auch so konfiguriert werden, dass für nachfolgende Aktionen eine URL-Referenz auf das Repo ausgegeben wird.

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

CodePipeline fordert Sie auf, die AWS Connector-Installations-App zu Ihrem Drittanbieterkonto hinzuzufügen, wenn Sie eine Verbindung herstellen. Sie müssen Ihr Drittanbieter-Konto und Ihr Repository bereits erstellt haben, bevor Sie über die CodeStarSourceConnection Aktion eine Verbindung herstellen können.

Anmerkung

Informationen zum Erstellen oder Anhängen einer Richtlinie mit den für die Verwendung von AWS CodeStar Verbindungen erforderlichen Berechtigungen an Ihre Rolle finden Sie unter Referenz zu Verbindungsberechtigungen. Je nachdem, wann Ihre CodePipeline Servicerolle erstellt wurde, müssen Sie möglicherweise ihre Berechtigungen aktualisieren, um AWS CodeStar Verbindungen zu unterstützen. Detaillierte Anweisungen finden Sie unter Fügen Sie der CodePipeline Servicerolle Berechtigungen hinzu.

Anmerkung

Um Verbindungen in Europa (Mailand) nutzen zu können AWS-Region, müssen Sie:

  1. Installieren Sie eine Region-specific App

  2. Region aktivieren

Diese Region-specific App unterstützt Verbindungen in der Region Europa (Mailand). Sie ist auf der Website des Drittanbieters veröffentlicht und von der bestehenden App getrennt, die Verbindungen für andere Regionen unterstützt. Durch die Installation dieser App autorisieren Sie Drittanbieter, Ihre Daten nur für diese Region an den Dienst weiterzugeben, und Sie können diese Autorisierung jederzeit widerrufen, indem Sie die App deinstallieren.

Der Dienst verarbeitet oder speichert Ihre Daten nicht, es sei denn, Sie aktivieren die Region. Durch die Aktivierung dieser Region gewähren Sie unserem Dienst die Erlaubnis, Ihre Daten zu verarbeiten und zu speichern.

Auch wenn die Region nicht aktiviert ist, können Drittanbieter deine Daten trotzdem mit unserem Service teilen, sofern die Region-specific App weiterhin installiert ist. Stelle also sicher, dass du die App deinstallierst, sobald du die Region deaktivierst. Weitere Informationen finden Sie unter Aktivieren einer Region.

Aktionstyp

  • Kategorie: Source

  • Eigentümer: AWS

  • Anbieter: CodeStarSourceConnection

  • Version: 1

Konfigurationsparameter

ConnectionArn

Erforderlich: Ja

Der Verbindungs-ARN, der für den Quellanbieter konfiguriert und authentifiziert ist.

FullRepositoryId

Erforderlich: Ja

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

Beispiel: some-user/my-repo

Wichtig

Sie müssen die korrekte Groß- und Kleinschreibung für den FullRepositoryId Wert beibehalten. Wenn Ihr Benutzername beispielsweise some-user und der Repo-Name lautetMy-Repo, lautet der empfohlene Wert von FullRepositoryId. some-user/My-Repo

BranchName

Erforderlich: Ja

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

OutputArtifactFormat

Erforderlich: Nein

Gibt das Format des Ausgabeartefakt an. Kann 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 nachgeschalteten Aktionen verwendet werden.

Wenn Sie diese Option wählen, müssen Sie die Berechtigungen für Ihre CodeBuild Projektservice-Rolle aktualisieren, wie unter gezeigt. Füge CodeBuild GitClone Berechtigungen für Verbindungen zu Bitbucket, Enterprise Server oder hinzu GitHub GitHub GitLab.com Ein Tutorial, das Ihnen zeigt, wie Sie die Option „Vollständiger Klon“ verwenden, finden Sie unterTutorial: Vollständigen Klon mit einer GitHub Pipeline-Quelle verwenden.

DetectChanges

Erforderlich: Nein

Steuert das automatische Starten Ihrer Pipeline, wenn ein neuer Commit für das konfigurierte Repository und den Branch erfolgt. Wenn nicht angegeben, lautet der Standardwert und das Feld wird true standardmäßig nicht angezeigt. Gültige Werte für diesen Parameter sind:

  • true: startet deine Pipeline CodePipeline automatisch bei neuen Commits.

  • false: CodePipeline startet deine Pipeline nicht bei neuen Commits.

Input artifacts (Eingabeartefakte)

  • Anzahl der Artefakte: 0

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

Ausgabeartefakte

  • Anzahl der Artefakte: 1

  • Beschreibung: Die aus dem Repository generierten Artefakte sind die Ausgabeartefakte für die CodeStarSourceConnection-Aktion. Die Commit-ID des Quellcodes wird CodePipeline als Quellversion für die ausgelöste Pipeline-Ausführung angezeigt. Sie können das Ausgabeartefakt dieser Aktion konfigurieren in:

    • Eine ZIP-Datei, die den Inhalt des konfigurierten Repositorys und Zweigs beim Commit enthält, der als Quellrevision für die Pipeline-Ausführung angegeben wurde.

    • Eine JSON-Datei, die einen URL-Verweis auf das Repository enthält, damit nachgeschaltete Aktionen Git-Befehle direkt ausführen können.

      Wichtig

      Diese Option kann nur von CodeBuild nachgelagerten Aktionen verwendet werden.

      Wenn Sie diese Option wählen, müssen Sie die Berechtigungen für Ihre CodeBuild Projektservice-Rolle aktualisieren, wie unter gezeigtProblembehebung CodePipeline. Ein Tutorial, das Ihnen zeigt, wie Sie die Option „Vollständiger Klon“ verwenden, finden Sie unterTutorial: Vollständigen Klon mit einer GitHub Pipeline-Quelle verwenden.

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 Variablenreferenz.

AuthorDate

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

BranchName

Der Name des Zweigs für das -Repository, in dem die Quelländerung ausgeführt wurde.

CommitId

Die -Commit-ID, die die Pipeline-Ausführung ausgelöst hat.

CommitMessage

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

ConnectionArn

Der Verbindungs-ARN, der für den Quellanbieter konfiguriert und authentifiziert ist.

FullRepositoryName

Der Name des -Repositorys, in dem der Commit, der die Pipeline ausgelöst hat, ausgeführt wurde.

Berechtigungen für Servicerollen: CodeConnections Aktion

CodeConnectionsZum Erstellen von Pipelines mit einer Quelle, die eine Verbindung verwendet, wie z. B. Bitbucket Cloud, ist die folgende Berechtigung erforderlich.

{ "Effect": "Allow", "Action": [ "codeconnections:UseConnection", "codestar-connections:UseConnection" ], "Resource": "resource_ARN" },
Anmerkung

Beide Aktionen sind erforderlich. Operationen, die durch einen Anruf aufgerufen werdencodestar-connections:UseConnection, während Operationen, die außerhalb des Anrufs aufgerufen werden. codeconnections:UseConnection Wenn Sie beide Aktionen gewähren, wird sichergestellt, dass die Rolle für beide Codepfade funktioniert, unabhängig davon, ob der Ressourcen-ARN der Verbindung das codestar-connections Dienstpräfix codeconnections oder verwendet.

Weitere Informationen zu den IAM-Berechtigungen für Verbindungen finden Sie unter Referenz zu Verbindungsberechtigungen.

Aktionsdeklaration

Im folgenden Beispiel ist das Ausgabeartefakt auf das Standard-ZIP-Format von CODE_ZIP für die Verbindung mit ARN festgelegt. arn:aws:codestar-connections:region:account-id:connection/connection-id

YAML
Name: Source Actions: - InputArtifacts: [] ActionTypeId: Version: '1' Owner: AWS Category: Source Provider: CodeStarSourceConnection OutputArtifacts: - Name: SourceArtifact RunOrder: 1 Configuration: ConnectionArn: "arn:aws:codestar-connections:region:account-id:connection/connection-id" FullRepositoryId: "some-user/my-repo" BranchName: "main" OutputArtifactFormat: "CODE_ZIP" Name: ApplicationSource
JSON
{ "Name": "Source", "Actions": [ { "InputArtifacts": [], "ActionTypeId": { "Version": "1", "Owner": "AWS", "Category": "Source", "Provider": "CodeStarSourceConnection" }, "OutputArtifacts": [ { "Name": "SourceArtifact" } ], "RunOrder": 1, "Configuration": { "ConnectionArn": "arn:aws:codestar-connections:region:account-id:connection/connection-id", "FullRepositoryId": "some-user/my-repo", "BranchName": "main", "OutputArtifactFormat": "CODE_ZIP" }, "Name": "ApplicationSource" } ] },

Installation der Installations-App und Herstellen einer Verbindung

Wenn Sie die Konsole zum ersten Mal verwenden, um eine neue Verbindung zu einem Drittanbieter-Repository hinzuzufügen, müssen Sie den CodePipeline Zugriff auf Ihre Repositorys autorisieren. Sie wählen oder erstellen eine Installations-App, mit der Sie eine Verbindung mit dem Konto herstellen können, in dem Sie das Code-Repository eines Drittanbieters erstellt haben.

Wenn Sie die AWS CLI oder eine CloudFormation Vorlage verwenden, müssen Sie den Verbindungs-ARN einer Verbindung angeben, die den Installationshandshake bereits durchlaufen hat. Andernfalls wird die Pipeline nicht ausgelöst.

Anmerkung

Für eine CodeStarSourceConnection Quellaktion müssen Sie keinen Webhook einrichten oder standardmäßig Polling verwenden. Die Aktion „Verbindungen“ verwaltet die Erkennung von Quellenänderungen für Sie.

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

  • AWS::CodeStarConnections: :Connection — Die CloudFormation Vorlagenreferenz für die AWS CodeStar Connections-Ressource enthält Parameter und Beispiele für Verbindungen in CloudFormation Vorlagen.

  • AWS CodeStarConnections-API-Referenz — Die AWS CodeStar Connections-API-Referenz enthält Referenzinformationen für die verfügbaren Verbindungsaktionen.

  • Die Schritte zum Erstellen einer Pipeline mit Quellaktionen, die von Verbindungen unterstützt werden, finden Sie im Folgenden:

    • Verwende für Bitbucket Cloud die Bitbucket-Option in der Konsole oder die CodestarSourceConnection Aktion in der CLI. Siehe Bitbucket Cloud-Verbindungen.

    • Verwende für GitHub GitHub Enterprise Cloud die GitHub Provider-Option in der Konsole oder die CodestarSourceConnection Aktion in der CLI. Siehe GitHub Verbindungen.

    • Verwenden Sie für GitHub Enterprise Server die GitHub Enterprise Server-Provider-Option in der Konsole oder die CodestarSourceConnection Aktion in der CLI. Siehe GitHub Enterprise Server-Verbindungen.

    • Verwenden Sie zum GitLab.com Beispiel die GitLab Provider-Option in der Konsole oder die CodestarSourceConnection Aktion mit dem GitLab Anbieter in der CLI. Siehe GitLab.com Verbindungen.

  • Ein Tutorial für die ersten Schritte, das eine Pipeline mit einer Bitbucket-Quelle und einer CodeBuild Aktion erstellt, findest du unter Erste Schritte mit Verbindungen.

  • Ein Tutorial, das dir zeigt, wie du eine Verbindung zu einem GitHub Repository herstellst und die Option „Vollständiger Klon“ mit einer CodeBuild Downstream-Aktion verwendest, findest du unterTutorial: Vollständigen Klon mit einer GitHub Pipeline-Quelle verwenden.