Pipeline-Erklärung - 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.

Pipeline-Erklärung

Die Pipeline- und Metadatenebene einer Pipeline hat eine grundlegende Struktur, die die folgenden Parameter und die folgende Syntax umfasst. Der Pipeline-Parameter stellt die Struktur der Aktionen und Phasen dar, die in der Pipeline ausgeführt werden sollen.

Weitere Informationen finden Sie unter dem PipelineDeclarationObjekt im CodePipeline APIHandbuch.

Das folgende Beispiel zeigt die Pipeline- und Metadatenebene der Pipeline-Struktur JSON sowohl in als auch YAML für eine Pipeline vom Typ V2.

YAML
pipeline: name: MyPipeline roleArn: >- arn:aws:iam::ACCOUNT_ID:role/service-role/AWSCodePipelineServiceRole-us-west-2-MyPipeline artifactStore: type: S3 location: amzn-s3-demo-bucket stages: ... version: 6 executionMode: SUPERSEDED pipelineType: V2 variables: - name: MyVariable defaultValue: '1' triggers: - providerType: CodeStarSourceConnection gitConfiguration: sourceActionName: Source push: - branches: includes: - main excludes: - feature-branch pullRequest: - events: - CLOSED branches: includes: - main* metadata: pipelineArn: 'arn:aws:codepipeline:us-west-2:ACCOUNT_ID:MyPipeline' created: '2019-12-12T06:49:02.733000+00:00' updated: '2020-09-10T06:34:07.447000+00:00'
JSON
{ "pipeline": { "name": "MyPipeline", "roleArn": "arn:aws:iam::ACCOUNT_ID:role/service-role/AWSCodePipelineServiceRole-us-west-2-MyPipeline", "artifactStore": { "type": "S3", "location": "amzn-s3-demo-bucket" }, "stages": { ... }, "version": 6, "executionMode": "SUPERSEDED", "pipelineType": "V2", "variables": [ { "name": "MyVariable", "defaultValue": "1" } ], "triggers": [ { "providerType": "CodeStarSourceConnection", "gitConfiguration": { "sourceActionName": "Source", "push": [ { "branches": { "includes": [ "main" ], "excludes": [ "feature-branch" ] } } ], "pullRequest": [ { "events": [ "CLOSED" ], "branches": { "includes": [ "main*" ] } } ] } } ] }, "metadata": { "pipelineArn": "arn:aws:codepipeline:us-west-2:ACCOUNT_ID:MyPipeline", "created": "2019-12-12T06:49:02.733000+00:00", "updated": "2020-09-10T06:34:07.447000+00:00" } }

name

Der Name der Pipeline. Wenn Sie eine Pipeline bearbeiten oder aktualisieren, kann der Pipelinename nicht geändert werden.

Anmerkung

Wenn Sie eine bestehende Pipeline umbenennen möchten, können Sie den CLI get-pipeline Befehl verwenden, um eine JSON Datei zu erstellen, die die Struktur Ihrer Pipeline enthält. Anschließend können Sie den CLI create-pipeline Befehl verwenden, um eine Pipeline mit dieser Struktur zu erstellen und ihr einen neuen Namen zu geben.

roleArn

Die IAM ARN für die CodePipeline Servicerolle, z. B. arn:aws:iam: :80398:role/ _Service_Role. EXAMPLE CodePipeline

Um die Konsole zum Anzeigen der Pipeline-Servicerolle ARN anstelle der Struktur zu verwenden, wählen Sie Ihre Pipeline in der Konsole aus und klicken Sie dann auf JSON Einstellungen. Auf der Registerkarte Allgemein wird das ARN Feld Servicerolle angezeigt.

artifactStoreODER artifactStores

Das artifactStore Feld enthält den Typ und die Position des Artefakt-Buckets für eine Pipeline mit allen Aktionen in derselben AWS Region. Wenn Sie Aktionen in einer anderen Region als Ihrer Pipeline hinzufügen, wird das artifactStores Mapping verwendet, um den Artefakt-Bucket für jede AWS Region aufzulisten, in der Aktionen ausgeführt werden. Wenn Sie eine Pipeline erstellen oder bearbeiten, müssen Sie einen Artefakt-Bucket in der Pipelineregion haben, sowie einen Artefakt-Bucket für jede Region, in der Sie eine Aktion ausführen möchten.

Anmerkung

In der Pipeline-Struktur müssen Sie entweder artifactStore oder artifactStores in Ihre Pipeline aufnehmen, aber Sie können nicht beide verwenden. Wenn Sie eine regionsübergreifende Aktion in Ihrer Pipeline erstellen, müssen Sie artifactStores verwenden.

Das folgende Beispiel zeigt die grundlegende Struktur für eine Pipeline mit regionsübergreifenden Aktionen, die den artifactStores-Parameter verwendet:

"pipeline": { "name": "YourPipelineName", "roleArn": "CodePipeline_Service_Role", "artifactStores": { "us-east-1": { "type": "S3", "location": "S3 artifact bucket name, such as amzn-s3-demo-bucket" }, "us-west-2": { "type": "S3", "location": "S3 artifact bucket name, such as amzn-s3-demo-bucket" } }, "stages": [ { ...

type

Der Standorttyp für den Artefakt-Bucket, angegeben als Amazon S3.

location

Der Name des Amazon S3 S3-Buckets, der automatisch für Sie generiert wird, wenn Sie zum ersten Mal eine Pipeline mithilfe der Konsole erstellen, z. B. codepipeline-us-east -2-1234567890, oder eines beliebigen Amazon S3 S3-Buckets, den Sie zu diesem Zweck bereitstellen

stages

Dieser Parameter enthält den Namen jeder Phase in der Pipeline. Weitere Informationen zu den Parametern und der Syntax auf der Stufenebene der Pipeline-Struktur finden Sie unter dem StageDeclarationObjekt im CodePipeline APIHandbuch.

Für die Pipeline-Struktur für Stufen gelten die folgenden Anforderungen:

  • Eine Pipeline muss mindestens zwei Phasen enthalten.

  • Die erste Phase einer Pipeline muss mindestens eine Quellaktion enthalten. Sie darf nur Quellaktionen enthalten.

  • Nur die erste Phase einer Pipeline kann Quellaktionen enthalten.

  • Mindestens eine Phase in jeder Pipeline muss eine Aktion enthalten, die keine Quellaktion ist.

  • Alle Namen von Phasen in einer Pipeline müssen eindeutig sein.

  • Phasennamen können in der CodePipeline Konsole nicht bearbeitet werden. Wenn Sie einen Phasennamen mithilfe von bearbeiten und die Phase eine Aktion mit einem oder mehreren geheimen Parametern (z. B. einem OAuth Token) enthält, wird der Wert dieser geheimen Parameter nicht beibehalten. AWS CLI Sie müssen den Wert der Parameter (die bei der JSON Rückgabe durch vier Sternchen maskiert sind AWS CLI) manuell eingeben und sie in die Struktur aufnehmen. JSON

version

Die Versionsnummer einer Pipeline wird bei jedem Pipeline-Update automatisch generiert und aktualisiert.

executionMode

Sie können den Pipeline-Ausführungsmodus so einstellen, dass Sie das Pipeline-Verhalten für aufeinanderfolgende Läufe angeben können, z. B. für Warteschlangen, Ablösen oder Parallelbetrieb. Weitere Informationen finden Sie unter Legen Sie den Pipeline-Ausführungsmodus fest oder ändern Sie ihn.

pipelineType

Der Pipeline-Typ gibt die verfügbare Struktur und die Funktionen in der Pipeline an, z. B. für eine Pipeline vom Typ V2. Weitere Informationen finden Sie unter Arten von Pipelines.

variables

Variablen auf Pipelineebene werden bei der Erstellung der Pipeline definiert und zur Laufzeit der Pipeline aufgelöst. Weitere Informationen finden Sie unter Variablen-Referenz. Ein Tutorial mit einer Variablen auf Pipelineebene, die bei der Ausführung der Pipeline übergeben wird, finden Sie unter. Tutorial: Variablen auf Pipeline-Ebene verwenden

triggers

Mit Triggern können Sie Ihre Pipeline so konfigurieren, dass sie bei einem bestimmten Ereignistyp oder einem gefilterten Ereignistyp startet, z. B. wenn eine Änderung an einem bestimmten Branch oder einer bestimmten Pull-Anforderung erkannt wird. Trigger können für Quellaktionen mit Verbindungen konfiguriert werden, die die CodeStarSourceConnection Aktion in verwenden CodePipeline GitHub, wie Bitbucket und GitLab. Weitere Informationen zu Quellaktionen, die Verbindungen verwenden, findest du unterStellen Sie mithilfe von Quellenanbietern eine Connect zu Drittanbietern her CodeConnections.

Weitere Informationen finden Sie unter Automatisieren Sie das Starten von Pipelines mithilfe von Triggern und Filtern.

Anmerkung

Die Quellaktionen CodeCommit und S3 erfordern entweder eine konfigurierte Ressource zur Änderungserkennung (eine EventBridge Regel) oder verwenden die Option, das Repository nach Quelländerungen abzufragen. Für Pipelines mit einer Bitbucket GitHub - oder GitHub Enterprise Server-Quellaktion musst du weder einen Webhook einrichten noch standardmäßig Polling verwenden. Die Aktion „Verbindungen“ verwaltet die Erkennung von Änderungen für dich.

metadata

Die Pipeline-Metadatenfelder unterscheiden sich von der Pipelinestruktur und können nicht bearbeitet werden. Wenn Sie eine Pipeline aktualisieren, wird das Datum im Metadatenfeld updated automatisch geändert.

pipelineArn

Der Amazon-Ressourcenname (ARN) der Pipeline.

Um die Konsole zur Anzeige der Pipeline ARN anstelle der JSON Struktur zu verwenden, wählen Sie Ihre Pipeline in der Konsole aus und wählen Sie dann Einstellungen. Auf der Registerkarte Allgemein wird das ARN Feld Pipeline angezeigt.

created

Datum und Uhrzeit der Erstellung der Pipeline.

updated

Datum und Uhrzeit der letzten Aktualisierung der Pipeline.