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.
Anhang A: Quellaktionen für GitHub Version 1
Dieser Anhang enthält Informationen zu Version 1 der GitHub Aktion in CodePipeline.
Anmerkung
Wir empfehlen zwar nicht, die Aktion GitHub Version 1 zu verwenden, aber bestehende Pipelines mit der Aktion GitHub Version 1 funktionieren weiterhin ohne Auswirkungen. CodePipeline Verwendet bei einer Pipeline mit einer Aktion der GitHub Version 1 OAuth basierte Token, um eine Verbindung zu Ihrem GitHub Repository herzustellen. Im Gegensatz dazu verwendet die GitHub Aktion (Version 2) eine Verbindungsressource, um AWS
Ressourcen mit Ihrem GitHub Repository zu verknüpfen. Die Verbindungsressource verwendet App-basierte Token, um eine Verbindung herzustellen. Weitere Informationen zur Aktualisierung Ihrer Pipeline auf die empfohlene GitHub Aktion, die eine Verbindung verwendet, finden Sie unterAktualisieren Sie eine Quellaktion von GitHub Version 1 auf eine Quellaktion GitHub von Version 2. Weitere Informationen zum OAuth basierten GitHub Zugriff im Gegensatz zum appbasierten GitHub Zugriff finden Sie unterhttps://docs.github.com/en/developers/apps/differences-between-github-apps-and-oauth-apps
Für die Integration GitHub CodePipeline verwendet eine GitHub OAuth Anwendung für Ihre Pipeline. CodePipelineverwendet Webhooks, um die Änderungserkennung für Ihre Pipeline mit der Quellaktion der GitHub Version 1 zu verwalten.
Anmerkung
Wenn Sie eine Quellaktion der GitHub Version 2 in konfigurieren AWS CloudFormation, fügen Sie keine GitHub Token-Informationen hinzu und fügen keine Webhook-Ressource hinzu. Sie konfigurieren eine Verbindungsressource wie unter AWS:CodeStarConnections: :Connection im AWS CloudFormation Benutzerhandbuch beschrieben.
Diese Referenz enthält die folgenden Abschnitte für die Aktion GitHub Version 1:
-
Informationen zum Hinzufügen einer Quellaktion und eines Webhooks der GitHub Version 1 zu einer Pipeline finden Sie unterEine Quellaktion der GitHub Version 1 hinzufügen.
-
Informationen zu den Konfigurationsparametern und zum Beispiel für YAML JSON /-Snippets für eine Quellaktion der GitHub Version 1 finden Sie unter. GitHub Referenz zur Quellaktion von Version 1
Wichtig
Verwenden Sie beim Erstellen von CodePipeline Webhooks nicht Ihre eigenen Anmeldeinformationen und verwenden Sie nicht dasselbe geheime Token für mehrere Webhooks. Generieren Sie für optimale Sicherheit für jeden Webhook, den Sie erstellen, ein eindeutiges geheimes Token. Das geheime Token ist eine willkürliche Zeichenfolge, die Sie angeben und die zur Berechnung und Signierung der gesendeten Webhook-Payloads GitHub verwendet wird CodePipeline, um die Integrität und Authentizität der Webhook-Payloads zu schützen. Die Verwendung Ihrer eigenen Anmeldeinformationen oder die Wiederverwendung desselben Tokens in mehreren Webhooks kann zu Sicherheitslücken führen.
Anmerkung
Wenn ein geheimes Token bereitgestellt wurde, wird es in der Antwort redigiert.
Eine Quellaktion der GitHub Version 1 hinzufügen
Sie fügen Quellaktionen der GitHub Version 1 hinzu, CodePipeline indem Sie:
-
Verwenden Sie die CodePipeline Konsole, um den Assistenten zum Erstellen von Pipelines (Erstellen Sie eine benutzerdefinierte Pipeline (Konsole)) oder die Aktionsseite Bearbeiten zu verwenden, um die GitHubAnbieteroption auszuwählen. Die Konsole erstellt einen Webhook, der Ihre Pipeline startet, wenn sich die Quelle ändert.
-
Verwenden vonCLI, um die Aktionskonfiguration für die
GitHub
Aktion hinzuzufügen und zusätzliche Ressourcen wie folgt zu erstellen:-
Verwenden Sie die
GitHub
Beispiel-Aktionskonfiguration inGitHub Referenz zur Quellaktion von Version 1, um die Aktion zu erstellen, wie unter gezeigtErstellen Sie eine Pipeline (CLI). -
Regelmäßige Prüfungen werden deaktiviert und die Änderungserkennung manuell erstellt, da die Methode zur Änderungserkennung standardmäßig die Pipeline durch Abfragen der Quelle startet. Sie migrieren Ihre Polling-Pipeline für Aktionen der Version 1 auf Webhooks. GitHub
-
GitHub Referenz zur Quellaktion von Version 1
Anmerkung
Wir empfehlen zwar nicht, die Aktion GitHub Version 1 zu verwenden, aber bestehende Pipelines mit der Aktion GitHub Version 1 funktionieren weiterhin ohne Auswirkungen. CodePipeline Verwendet bei einer Pipeline mit einer Quellaktion der GitHub GitHub Version 1 OAuth basierte Token, um eine Verbindung zu Ihrem GitHub Repository herzustellen. Im Gegensatz dazu verwendet die neue GitHub Aktion (Version 2) eine Verbindungsressource, um AWS Ressourcen mit Ihrem GitHub Repository zu verknüpfen. Die Verbindungsressource verwendet App-basierte Token, um eine Verbindung herzustellen. Weitere Informationen zur Aktualisierung Ihrer Pipeline auf die empfohlene GitHub Aktion, die eine Verbindung verwendet, finden Sie unterAktualisieren Sie eine Quellaktion von GitHub Version 1 auf eine Quellaktion GitHub von Version 2.
Löst die Pipeline aus, wenn ein neuer Commit für das konfigurierte GitHub Repository und den Branch vorgenommen wird.
CodePipeline Verwendet zur Integration GitHub eine OAuth Anwendung oder ein persönliches Zugriffstoken für Ihre Pipeline. Wenn Sie die Konsole verwenden, um Ihre Pipeline zu erstellen oder zu bearbeiten, CodePipeline erstellt sie einen GitHub Webhook, der Ihre Pipeline startet, wenn eine Änderung im Repository erfolgt.
Sie müssen bereits ein GitHub Konto und ein Repository erstellt haben, bevor Sie die Pipeline über eine GitHub Aktion verbinden können.
Wenn Sie den Zugriff auf CodePipeline Repositorys einschränken möchten, erstellen Sie ein GitHub Konto und gewähren Sie dem Konto nur Zugriff auf die Repositorys, in die Sie integrieren möchten. CodePipeline Verwenden Sie dieses Konto, wenn Sie die Verwendung von GitHub Repositorys für Quellstufen in Pipelines konfigurieren CodePipeline .
Weitere Informationen finden Sie in der GitHub Entwicklerdokumentation
Themen
Aktionstyp
-
Kategorie:
Source
-
Eigentümer:
ThirdParty
-
Anbieter:
GitHub
-
Version:
1
Konfigurationsparameter
- Eigentümer
-
Erforderlich: Ja
Der Name des GitHub Benutzers oder der Organisation, dem das GitHub Repository gehört.
- Repo
-
Erforderlich: Ja
Der Name des Repositorys, in dem Quelländerungen erkannt werden sollen.
- Verzweigung
-
Erforderlich: Ja
Der Name des Zweigs, in dem Quelländerungen erkannt werden sollen.
- OAuthToken
-
Erforderlich: Ja
Stellt das GitHub Authentifizierungstoken dar, das CodePipeline die Ausführung von Vorgängen in Ihrem GitHub Repository ermöglicht. Die Eingabe wird stets als Maske mit vier Sternchen angezeigt. Sie stellt einen der folgenden Werte dar:
-
Wenn Sie die Konsole verwenden, um die Pipeline zu erstellen, CodePipeline verwendet ein OAuth Token, um die GitHub Verbindung zu registrieren.
-
Wenn Sie die Pipeline AWS CLI zum Erstellen der Pipeline verwenden, können Sie in diesem Feld Ihr GitHub persönliches Zugriffstoken übergeben. Ersetzen Sie die Sternchen (****) durch Ihr persönliches Zugriffstoken, von dem Sie kopiert wurden. GitHub Wenn Sie
get-pipeline
ausführen, um die Aktionskonfiguration anzuzeigen, wird dieser Wert durch vier Sternchen maskiert angezeigt. -
Wenn Sie eine AWS CloudFormation Vorlage verwenden, um die Pipeline zu erstellen, müssen Sie das Token zunächst als Secret in speichern. AWS Secrets Manager Sie fügen den Wert für dieses Feld als dynamischen Verweis auf das gespeicherte Geheimnis in Secrets Manager ein, z.
{{resolve:secretsmanager:MyGitHubSecret:SecretString:token}}
B.
Weitere Informationen zu GitHub Bereichen finden Sie in der GitHub APIEntwicklerreferenz
auf der GitHub Website. -
- PollForSourceChanges
-
Erforderlich: Nein
PollForSourceChanges
steuert, ob das GitHub Repository nach Quellenänderungen CodePipeline abfragt. Es wird empfohlen, stattdessen Webhooks zu verwenden, um Quelländerungen zu erkennen. Weitere Informationen zum Konfigurieren von Webhooks finden Sie unter Migrieren Sie Polling-Pipelines zu Webhooks (Quellaktionen der GitHub Version 1) () CLI oder Aktualisieren Sie die Pipelines für Push-Ereignisse (Quellaktionen der GitHub Version 1) (AWS CloudFormation Vorlage).Wichtig
Wenn Sie Webhooks konfigurieren möchten, müssen Sie
PollForSourceChanges
auffalse
festlegen, um doppelte Pipeline-Ausführungen zu vermeiden.Gültige Werte für diesen Parameter sind:
-
True
: Falls gesetzt, CodePipeline fragt dein Repository nach Quelländerungen ab.Anmerkung
Wenn Sie diese Option weglassen
PollForSourceChanges
, wird CodePipeline standardmäßig Ihr Repository nach Quelländerungen abgefragt. Dieses Verhalten ist das gleiche, als obPollForSourceChanges
auftrue
festgelegt würde. -
False
: Falls gesetzt, fragt dein Repository CodePipeline nicht nach Quelländerungen ab. Sie verwenden diese Einstellung, wenn Sie einen Webhook konfigurieren möchten, um Quelländerungen zu erkennen.
-
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 GitHub 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 Hinweise zu Variablen in CodePipeline finden Sie unterVariablen-Referenz.
- CommitId
-
Die GitHub 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.
- CommitUrl
-
Die URL Adresse für den Commit, der die Pipeline ausgelöst hat.
- RepositoryName
-
Der Name des GitHub Repositorys, in dem der Commit, der die Pipeline ausgelöst hat, vorgenommen wurde.
- BranchName
-
Der Name des Branches für das GitHub Repository, in dem die Quellenänderung vorgenommen wurde.
- AuthorDate
-
Das Datum im Zeitstempelformat, an dem der Commit erstellt wurde.
- CommitterDate
-
Das Datum im Zeitstempelformat, an dem der Commit durchgeführt wurde.
Aktionsdeklaration (GitHub-Beispiel)
Verbindung herstellen zu GitHub (OAuth)
Wenn Sie die Konsole zum ersten Mal verwenden, um einer Pipeline ein GitHub Repository hinzuzufügen, werden Sie aufgefordert, den CodePipeline Zugriff auf Ihre Repositorys zu autorisieren. Das Token erfordert die folgenden Bereiche: GitHub
-
Den
repo
- Umfang, der für die volle Kontrolle verwendet wird, um Artefakte aus öffentlichen und privaten Repositorys in eine Pipeline zu lesen und einzufügen. -
Den
admin:repo_hook
Umfang, der für die volle Kontrolle über Repository-Hooks verwendet wird.
Wenn Sie die Vorlage CLI oder eine AWS CloudFormation Vorlage verwenden, müssen Sie den Wert für ein persönliches Zugriffstoken angeben, das Sie bereits erstellt haben. GitHub
Weitere Informationen finden Sie auch unter
Die folgenden verwandten Ressourcen bieten Ihnen nützliche Informationen für die Arbeit mit dieser Aktion.
-
Ressourcenreferenz für das AWS CloudFormation Benutzerhandbuch AWS::CodePipeline::Webhook — Dazu gehören Felddefinitionen, Beispiele und Ausschnitte für die Ressource in. AWS CloudFormation
-
Ressourcenreferenz für das AWS CloudFormation User Guide AWS::CodeStar::GitHub Repository — Dazu gehören Felddefinitionen, Beispiele und Ausschnitte für die Ressource in. AWS CloudFormation
-
Tutorial: Erstellen Sie eine Pipeline, die Ihre Android-App erstellt und testet mit AWS Device Farm— Dieses Tutorial enthält ein Beispiel für eine Build-Spezifikationsdatei und eine Beispielanwendung zum Erstellen einer Pipeline mit einer Quelle. GitHub Es erstellt und testet eine Android-App mit CodeBuild und AWS Device Farm.