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.
Aktionsdeklaration
Die Aktionsebene einer Pipeline hat eine grundlegende Struktur, die die folgenden Parameter und Syntax umfasst. Weitere Informationen finden Sie im CodePipeline API-Handbuch zu dem ActionDeclaration Objekt.
Das folgende Beispiel zeigt die Aktionsebene der Pipeline-Struktur sowohl in JSON als auch in YAML.
Eine Liste der Beispiel-configuration Details für den jeweiligen Anbietertyp finden Sie unter Gültige Konfigurationsparameter für jeden Anbietertyp.
Die Aktionsstruktur hat folgende Anforderungen:
-
Alle Aktionsnamen in einer Phase müssen eindeutig sein.
-
Für jede Pipeline ist eine Quellaktion erforderlich.
-
Quellaktionen, die keine Verbindung verwenden, können für die Änderungserkennung oder zum Ausschalten der Änderungserkennung konfiguriert werden. Weitere Informationen finden Sie unter Methoden zur Änderungserkennung.
-
Dies trifft für alle Aktionen zu, unabhängig davon, ob sie in derselben Phase oder in folgenden Phasen enthalten sind. Das Eingabeartefakt muss aber nicht die nächste Aktion sein, die strikt auf die Aktion folgt, von der das Ausgabeartefakt bereitgestellt wurde. Parallele Aktionen können unterschiedliche Ausgabeartefaktpakete deklarieren, die im Gegenzug von verschiedenen Folgeaktionen genutzt werden.
-
Wenn Sie einen Amazon S3-Bucket als Bereitstellungsort verwenden, geben Sie auch einen Objektschlüssel an. Ein Objektschlüssel kann ein Dateiname (Objekt) oder eine Kombination aus Präfix (Ordnerpfad) und Dateiname sein. Sie können Variablen verwenden, um den Namen des Speicherorts anzugeben, der von der Pipeline verwendet werden soll. Für Amazon S3-Bereitstellungsaktionen werden in Amazon S3-Objektschlüsseln die folgenden Variablen unterstützt.
Verwenden von Variablen in Amazon S3 Variable Beispiel für Konsoleneingabe Ausgang datetime js-application/{datetime}.zip UTC-Zeitstempel im folgenden Format: <JJJJ>-<MM>-TT>_<HH>-<MM>-<SS> Beispiel:
js- application/2019 -01-10_07-39-57.zip
uuid js-application/{uuid}.zip Die UUID ist ein global eindeutiger Bezeichner, der garantiert mit keinem der vorhandenen Bezeichner identisch ist. Die UUID hat das Format (alle Ziffern im Hexadezimalformat): <8-Ziffern>-<4-Ziffern>-4-Ziffern>-<4-Ziffern>-<12-Ziffern> Beispiel:
js- application/54a60075 -b96a-4bf3-9013-db3a9 EXAMPLE.zip
Name
Den Namen der Aktion.
Region
Für Aktionen, bei denen der Anbieter ein ist, der der Ressource. AWS-Service AWS-Region
Cross-Region Aktionen verwenden Sie das Region Feld, um anzugeben AWS-Region , wo die Aktionen erstellt werden sollen. Die für diese Aktion erstellten AWS Ressourcen müssen in derselben Region erstellt werden, die im region Feld angegeben ist. Für die folgenden Aktionstypen können Sie keine regionsübergreifenden Aktionen erstellen:
-
Quellaktionen
-
Aktionen von Drittanbietern
-
Aktionen von benutzerdefinierten Anbietern
roleArn
Der ARN der IAM-Servicerolle, die die angegebene Aktion ausführt. Dies wird durch das RolEearn vorausgesetzt, das auf Pipeline-Ebene angegeben wird.
Namespace
Aktionen können mit Variablen konfiguriert werden. Sie legen die Namespace- und Variableninformationen für Ausführungsvariablen im Feld namespace fest. Referenzinformationen zu Ausführungsvariablen und Aktionsausgabevariablen finden Sie unter Variablenreferenz.
Anmerkung
Für Amazon ECR, Amazon S3 oder CodeCommit Quellen können Sie auch eine Quellüberschreibung mithilfe eines Eingabe-Transformationseintrags erstellen, um das revisionValue In EventBridge für Ihr Pipeline-Ereignis zu verwenden, wobei das von der Quellereignisvariablen für Ihren Objektschlüssel, Ihren Commit oder Ihre Bild-ID abgeleitet revisionValue wird. Weitere Informationen finden Sie in dem optionalen Schritt für die Eingabe der Eingabetransformation, der in den Verfahren unter Amazon ECR-Quellaktionen und Ressourcen EventBridgeHerstellen einer Verbindung zu Amazon S3-Quellaktionen mit einer für Ereignisse aktivierten Quelle, oder CodeCommit Quellaktionen und EventBridge enthalten ist.
Aktion TypeId
Die Aktionstyp-ID wird als Kombination der folgenden vier Felder identifiziert.
category
Die Art der Aktion oder des Schritts in der Pipeline, z. B. eine Quellaktion. Jeder Aktionstyp hat einen bestimmten Satz gültiger Aktionsanbieter. Eine Liste der gültigen Anbieter nach Aktionstyp finden Sie unterReferenz der Aktionsstruktur.
Dies sind die gültigen actionTypeId Kategorien (Aktionstypen) für CodePipeline:
-
Source -
Build -
Approval -
Deploy -
Test -
Invoke -
Compute
owner
Für alle derzeit unterstützten Aktionstypen ist die einzig gültige BesitzerzeichenfolgeAWS,ThirdParty, oderCustom. Die gültige Besitzerzeichenfolge für eine bestimmte Aktion finden Sie imReferenz der Aktionsstruktur.
Weitere Informationen finden Sie in der CodePipeline -API-Referenz.
version
Die Version der Aktion.
provider
Der Aktionsanbieter, z. CodeBuild B.
-
Welche Anbietertypen für eine Aktionskategorie gültig sind, hängt von der Kategorie ab. Für eine Quellaktionskategorie ist beispielsweise ein gültiger Anbietertyp
S3CodeStarSourceConnection,CodeCommit, oderAmazon ECR. Dieses Beispiel zeigt die Struktur für eine Quellaktion mit einemS3-Anbieter:"actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3"},
InputArtifacts
Dieses Feld enthält die Eingabe-Artefaktstruktur, sofern dies für die Aktionskategorie unterstützt wird. Das Eingabeartefakt einer Aktion muss genau mit dem Ausgabeartefakt übereinstimmen, das in einer vorangegangenen Aktion deklariert wurde. Wenn beispielsweise eine vorherige Aktion die folgende Erklärung enthält:
"outputArtifacts": [ { "MyApp" } ],
und keine anderen Ausgabeartefakte vorhanden sind, muss das Eingabeartefakt einer nachfolgenden Aktion folgendermaßen lauten:
"inputArtifacts": [ { "MyApp" } ],
Beispielsweise kann eine Quellaktion keine Eingabeartefakte haben, da es sich um die erste Aktion in der Pipeline handelt. Eine Quellaktion hat jedoch immer Ausgabeartefakte, die von der folgenden Aktion verarbeitet werden. Die Ausgabeartefakte für eine Quellaktion sind die Anwendungsdateien aus dem Quell-Repository, die gezippt und über den Artefakt-Bucket bereitgestellt werden. Sie werden von der folgenden Aktion verarbeitet, z. B. einer CodeBuild Aktion, die mit Build-Befehlen auf die Anwendungsdateien einwirkt.
Ein Beispiel für Aktionen, die keine Ausgabeartefakte haben können, sind Bereitstellungsaktionen, die keine Ausgabeartefakte haben, da es sich bei diesen Aktionen in der Regel um die letzte Aktion in einer Pipeline handelt.
Name
Der Artefaktname für die Eingabeartefakte der Aktion.
Ausgabe-Artefakte
Namen von Ausgabeartefakten müssen in einer Pipeline eindeutig sein. Eine Pipeline kann z. B. eine Aktion mit einem Ausgabeartefakt namens "MyApp" und eine weitere Aktion mit einem Ausgabeartefakt namens "MyBuiltApp" enthalten. Eine Pipeline kann jedoch nicht zwei Aktionen enthalten, die beide ein Ausgabeartefakt mit dem Namen "MyApp" haben.
Dieses Feld enthält die Ausgabe-Artefaktstruktur, sofern dies für die Aktionskategorie unterstützt wird. Das Ausgabeartefakt einer Aktion muss exakt mit dem Ausgabeartefakt übereinstimmen, das in einer vorangegangenen Aktion deklariert wurde. Wenn beispielsweise eine vorherige Aktion die folgende Erklärung enthält:
"outputArtifacts": [ { "MyApp" } ],
und keine anderen Ausgabeartefakte vorhanden sind, muss das Eingabeartefakt einer nachfolgenden Aktion folgendermaßen lauten:
"inputArtifacts": [ { "MyApp" } ],
Beispielsweise kann eine Quellaktion keine Eingabeartefakte haben, da es sich um die erste Aktion in der Pipeline handelt. Eine Quellaktion hat jedoch immer Ausgabeartefakte, die von der folgenden Aktion verarbeitet werden. Die Ausgabeartefakte für eine Quellaktion sind die Anwendungsdateien aus dem Quell-Repository, die gezippt und über den Artefakt-Bucket bereitgestellt werden. Sie werden von der folgenden Aktion verarbeitet, z. B. einer CodeBuild Aktion, die mit Build-Befehlen auf die Anwendungsdateien einwirkt.
Ein Beispiel für Aktionen, die keine Ausgabeartefakte haben können, sind Bereitstellungsaktionen, die keine Ausgabeartefakte haben, da es sich bei diesen Aktionen in der Regel um die letzte Aktion in einer Pipeline handelt.
Name
Der Artefaktname für die Ausgabeartefakte der Aktion.
Konfiguration (nach Aktionsanbieter)
Die Aktionskonfiguration enthält Details und Parameter, die dem Anbietertyp entsprechen. Im folgenden Abschnitt sind die Beispielparameter für die Aktionskonfiguration spezifisch für die S3-Quellaktion.
Die Aktionskonfiguration und die input/output Artefaktlimits können je nach Aktionsanbieter variieren. Eine Liste mit Beispielen für die Aktionskonfiguration nach Aktionsanbieter finden Sie unter Referenz der Aktionsstruktur und in Gültige Konfigurationsparameter für jeden Anbietertyp der Tabelle unter. Die Tabelle enthält einen Link zur Aktionsreferenz für jeden Anbietertyp, in der die Konfigurationsparameter für jede Aktion detailliert aufgeführt sind. Eine Tabelle mit den Grenzwerten für Eingabe- und Ausgabeartefakte für jeden Aktionsanbieter finden Sie unterGültige Eingabe- und Ausgabeartefakte für jeden Aktionstyp.
Die folgenden Überlegungen gelten für die Arbeit mit Aktionen:
-
Quellaktionen haben keine Eingabeartefakte, und Bereitstellungsaktionen haben keine Ausgabeartefakte.
-
Bei Anbietern von Quellaktionen, die keine Verbindung verwenden, wie S3, müssen Sie mithilfe des
PollForSourceChangesParameters angeben, ob Ihre Pipeline automatisch gestartet werden soll, wenn eine Änderung erkannt wird. Siehe Gültige Einstellungen für den PollForSourceChanges Parameter. -
Informationen zum Konfigurieren der automatischen Änderungserkennung zum Starten Ihrer Pipeline oder zum Deaktivieren der Änderungserkennung finden Sie unterQuellaktionen und Methoden zur Erkennung von Änderungen.
-
Um Trigger mit Filterung zu konfigurieren, verwenden Sie die Quellaktion für Verbindungen und finden Sie dann weitere Informationen unterAutomatisieren Sie das Starten von Pipelines mithilfe von Triggern und Filtern.
-
Die Ausgabevariablen für jede Aktion finden Sie unterVariablenreferenz.
Anmerkung
Für Amazon ECR, Amazon S3 oder CodeCommit Quellen können Sie auch eine Quellüberschreibung mithilfe eines Eingabe-Transformationseintrags erstellen, um das
revisionValueIn EventBridge für Ihr Pipeline-Ereignis zu verwenden, wobei das aus der Quellereignisvariablen für Ihren Objektschlüssel, Ihren Commit oder Ihre Bild-ID abgeleitetrevisionValuewird. Weitere Informationen finden Sie in dem optionalen Schritt für die Eingabe der Eingabetransformation, der in den Verfahren unter Amazon ECR-Quellaktionen und Ressourcen EventBridgeHerstellen einer Verbindung zu Amazon S3-Quellaktionen mit einer für Ereignisse aktivierten Quelle, oder CodeCommit Quellaktionen und EventBridge enthalten ist.Wichtig
Bei Pipelines, die länger als 30 Tage inaktiv sind, ist das Polling für die Pipeline deaktiviert. Weitere Informationen finden Sie unter Polling DisabledAt in der Pipeline-Strukturreferenz. Die Schritte zur Migration Ihrer Pipeline vom Polling zur ereignisbasierten Änderungserkennung finden Sie unter Methoden zur Änderungserkennung.
Anmerkung
Für die Aktionen „Quelle“ CodeCommit und „S3“ ist entweder eine konfigurierte Ressource zur Änderungserkennung (eine EventBridge Regel) erforderlich, oder Sie verwenden die Option, das Repository nach Quelländerungen abzufragen. Für Pipelines mit einer Bitbucket GitHub - oder GitHub Enterprise Server-Quellaktion müssen Sie keinen Webhook einrichten oder standardmäßig Polling verwenden. Die Aktion „Verbindungen“ verwaltet die Änderungserkennung für dich.
Bestellung ausführen
Eine positive Ganzzahl, die die Ausführungsreihenfolge der Aktion innerhalb der Phase angibt. Parallele Aktionen in der Phase werden so dargestellt, dass sie dieselbe Ganzzahl haben. Beispielsweise werden zwei Aktionen mit einer Ausführungsreihenfolge von zwei parallel ausgeführt, nachdem die erste Aktion in der Phase ausgeführt wird.
Der standardmäßige runOrder-Wert für eine Aktion ist 1. Der Wert muss eine positive Ganzzahl (natürliche Zahl) sein. Sie können keine Bruchzahlen, Dezimalzahlen, negative Zahlen oder Null verwenden. Für eine serielle Reihenfolge von Aktionen geben Sie die niedrigste Zahl für die erste Aktion und höhere Zahlen für jede der verbleibenden Aktionen in der Abfolge an. Parallele Aktionen geben Sie an, indem Sie dieselbe Ganzzahl für jede Aktion verwenden, die parallel ausgeführt werden soll. In der Konsole können Sie eine serielle Sequenz für eine Aktion angeben, indem Sie auf der Ebene in der Phase, auf der sie ausgeführt werden soll, die Option Aktionsgruppe hinzufügen auswählen. Sie können auch eine parallele Reihenfolge angeben, indem Sie Aktion hinzufügen wählen. Aktionsgruppe bezieht sich auf eine Ausführungsreihenfolge von einer oder mehreren Aktionen auf derselben Ebene.
Wenn Sie beispielsweise drei Aktionen der Reihe nach in einer Phase ausführen möchten, geben Sie der ersten Aktion den runOrder-Wert 1, der zweiten Aktion den runOrder-Wert 2 und der dritten den runOrder-Wert 3. Wenn Sie jedoch die zweite und dritte Aktion parallel ausführen möchten, geben Sie der ersten Aktion den runOrder-Wert 1 und sowohl der zweiten als auch der dritten Aktion den runOrder-Wert 2.
Anmerkung
Die Nummerierung von Serienaktionen muss nicht in strikter Reihenfolge erfolgen. Wenn Sie beispielsweise drei Aktionen in einer Reihenfolge haben und die zweite Aktion entfernen möchten, müssen Sie den runOrder-Wert der dritten Aktion nicht neu nummerieren. Da der runOrder-Wert dieser Aktion (3) höher ist als der runOrder-Wert der ersten Aktion (1), wird sie nach der ersten Aktion in der Phase ausgeführt.