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.
CloudFormationReferenz der -Konfigurationseigenschaften
Wenn Sie eine CodePipeline erstellen, fügen Sie der Pipeline eine Deploy-Aktion mit CloudFormation als Anbieter hinzu. Anschließend müssen Sie die CloudFormation-Aktion, die die Pipeline aufruft, und die Einstellungen der Aktion angeben. In diesem Thema werden die CloudFormation-Konfigurationseigenschaften beschrieben. Zur Angabe von Eigenschaften können Sie die CodePipeline-Konsole verwenden oder ein JSON-Objekt erstellen, das Sie für die Vorlagen,AWS CLI CodePipeline API oder CloudFormation verwenden können.
Themen
Konfigurationseigenschaften (Konsole)
Die CodePipeline-Konsole
Anmerkung
Wenn Sie eine Pipeline erstellen, können Sie nur die Aktionsmodi Create or update a stack (Einen Stack erstellen oder aktualisieren) oder Create or replace a change set (Einen Änderungssatz erstellen oder ersetzen) angeben. Die Eigenschaften im Advanced (Eweitert)-Abschnitt sind nur verfügbar, wenn Sie eine Pipeline bearbeiten.
- Action-Modus
-
Die CloudFormation-Aktion, die CodePipeline beim Verarbeiten der zugehörigen Stufe aufruft. Wählen Sie einen der folgenden Aktionsmodi aus:
-
Create or replace a change set erstellt den Änderungssatz, falls er noch nicht existiert, basierend auf dem Stack-Namen und der Vorlage, die Sie übermitteln. Wenn der Änderungssatz bereits vorhanden ist, wird er von CloudFormation gelöscht und ein neuer erstellt.
-
Create or update a stack erstellt oder aktualisiert einen Stack, wenn der angegebene Stack nicht vorhanden ist. Wenn der Stack bereits vorhanden ist, wird er von CloudFormation aktualisiert. Verwenden Sie diese Aktion zum Aktualisieren von bestehenden Stacks. Der Stack wird von CodePipeline nicht ersetzt.
-
Delete a stack löscht einen Stack. Wenn Sie einen Stack angeben, der nicht vorhanden ist, wird die Aktion ohne Löschen eines Stacks erfolgreich abgeschlossen.
-
Execute a change set führt einen Änderungssatz aus.
-
Replace a failed stack erstellt oder aktualisiert einen Stack, wenn der angegebene Stack nicht vorhanden ist. Ist der Stack vorhanden und befindet sich in einem fehlerhaften Zustand (gemeldet als
ROLLBACK_COMPLETE,ROLLBACK_FAILED,CREATE_FAILED,DELETE_FAILEDoderUPDATE_ROLLBACK_FAILED), löscht CloudFormation den Stack und erstellt einen neuen. Befindet sich der Stack nicht in einem fehlerhaften Zustand, wird er von CloudFormation aktualisiert. Verwenden Sie diese Aktion, um fehlerhafte Stacks ohne Wiederherstellung oder Fehlerbehebung zu ersetzen. In der Regel wählen Sie diesen Modus für Tests.
-
- Stackname
-
Der Name, der einem vorhandenen Stack oder einem Stack zugeordnet ist, den Sie erstellen möchten. Der Name muss in der AWS-Region eindeutig sein, in der Sie den Stack erstellen.
Anmerkung
Ein Stack-Name darf nur alphanumerische Zeichen (wobei die Groß- und Kleinschreibung beachtet werden muss) und Bindestriche enthalten. Er muss mit einem alphabetischen Zeichen beginnen und darf nicht mehr als 128 Zeichen umfassen.
- Change set name (Name des Änderungssatzes
-
Der Name eines vorhandenen Änderungssatzes oder eines neuen Änderungssatzes, den Sie für den angegebenen Stack erstellen möchten.
- Vorlage
-
Der Speicherort einer CloudFormation-Vorlagendatei im Format
.ArtifactName::TemplateFileName - Vorlagenkonfiguration
-
Der Speicherort einer Vorlagenkonfigurationsdatei im Format
. Die Vorlagenkonfigurationsdatei kann Vorlagenparameterwerte, eine Stack-Richtlinie und Tags enthalten. Wenn Sie sensible Daten wie z. B. Passwörter einschließen, sollten Sie den Zugriff auf diese Datei beschränken. Weitere Informationen finden Sie unter CloudFormation Artefakte.ArtifactName::TemplateConfigurationFileName - Capabilities
-
Bei Stacks mit bestimmten Ressourcen ist die explizite Bestätigung erforderlich, dass CloudFormation diese Ressourcen erstellen oder aktualisieren kann. Sie müssen beispielsweise
CAPABILITY_IAMangeben, wenn die Stack-Vorlage AWS Identity and Access Management (IAM)-Ressourcen enthält. Weitere Informationen finden Sie unter CreateStack API-Operation Anfrageparameter.Wenn Sie IAM-Ressourcen in Ihrer Stack-Vorlage verwenden, müssen Sie diese Eigenschaft angeben.
Sie können mehr als eine Funktion angeben.
- Role name (Name der Rolle
-
Der Name der IAM-Servicerolle, die von CloudFormation angenommen wird, wenn Ressourcen im angegebenen Stack verarbeitet werden.
- Ausgabedateiname
-
Im Advanced (Erweitert)-Abschnitt können Sie einen Ausgabedateinamen wie z. B.
CreateStackOutput.jsonangeben, den CodePipeline dem Ausgabeartefakt nach der Ausführung der angegebenen Aktion hinzufügt. Das Ausgabeartefakt enthält eine JSON-Datei mit dem Inhalt desOutputs-Abschnitts der CloudFormation-Vorlage.Wenn Sie keinen Namen angeben, generiert CodePipeline kein Ausgabeartefakt.
- Parameter überschreiben
-
Parameter werden in Ihrer Vorlage definiert und ermöglichen Ihnen, benutzerdefinierte Werte einzugeben, wenn Sie einen Stack erstellen oder aktualisieren. Sie können ein JSON-Objekt angeben, das Parameterwerte für die Vorlage in der Vorlagenkonfigurationsdatei überschreibt. Alle Parameternamen müssen in der Stack-Vorlage vorhanden sein. Weitere Informationen finden Sie unter CloudFormation Vorlage Parameters-Syntax.
Anmerkung
Für das JSON-Objekt, das in der Eigenschaft
ParameterOverridesgespeichert werden kann, gilt eine Maximalgröße von 1 Kilobyte.Wir empfehlen, dass Sie die Vorlagenkonfigurationsdatei verwenden, um die meisten Ihrer Parameterwerte anzugeben. Verwenden Sie Parameterüberschreibungen, um nur dynamische Parameterwerte anzugeben. Dynamische Parameter sind unbekannt, bis Sie die Pipeline ausführen.
Das folgende Beispiel definiert einen Wert für den
ParameterName-Parameter mithilfe einer Parameterüberschreibungsfunktion. Die Funktion ruft einen Wert von einem CodePipeline-Eingabeartefakt ab. Weitere Informationen zu Parameterüberschreibungsfunktionen finden Sie unter Verwenden von Funktionen zum Überschreiben von Parametern mit CodePipeline Pipelines.{ "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]} }
Konfigurationseigenschaften (JSON-Objekt)
Wenn Sie CloudFormation als Anbieter für eine Phasenaktion angeben, definieren Sie die folgenden Eigenschaften in der Configuration-Eigenschaft. Verwenden Sie das JSON-Objekt für die Vorlagen,AWS CLI CodePipeline API oder CloudFormation . Beispiele finden Sie unter Walkthrough: Erstellen einer Pipeline für Test- und Produktions-Stacks und CloudFormationReferenz der -Konfigurationseigenschaften.
ActionMode-
Die CloudFormation-Aktion, die CodePipeline beim Verarbeiten der zugehörigen Stufe aufruft. Geben Sie nur einen der folgenden Aktionsmodi an:
-
CHANGE_SET_EXECUTEführt einen Änderungssatz aus. -
CHANGE_SET_REPLACEerstellt den Änderungssatz, falls er noch nicht existiert, basierend auf dem Stack-Namen und der Vorlage, die Sie übermitteln. Wenn der Änderungssatz bereits vorhanden ist, wird er von CloudFormation gelöscht und ein neuer erstellt. -
CREATE_UPDATEerstellt den Stack, wenn der angegebene Stack noch nicht vorhanden ist. Wenn der Stack bereits vorhanden ist, wird er von CloudFormation aktualisiert. Verwenden Sie diese Aktion zum Aktualisieren von bestehenden Stacks. Der Stack wird von CodePipeline nicht ersetzt. -
DELETE_ONLYlöscht einen Stack. Wenn Sie einen Stack angeben, der nicht vorhanden ist, wird die Aktion ohne Löschen eines Stacks erfolgreich abgeschlossen. -
REPLACE_ON_FAILUREerstellt einen Stack, wenn der angegebene Stack noch nicht vorhanden ist. Ist der Stack vorhanden und befindet sich in einem fehlerhaften Zustand (gemeldet alsROLLBACK_COMPLETE,ROLLBACK_FAILED,CREATE_FAILED,DELETE_FAILEDoderUPDATE_ROLLBACK_FAILED), löscht CloudFormation den Stack und erstellt einen neuen. Befindet sich der Stack nicht in einem fehlerhaften Zustand, wird er von CloudFormation aktualisiert. Verwenden Sie diese Aktion, um fehlerhafte Stacks automatisch ohne Wiederherstellung oder Fehlerbehebung zu ersetzen. In der Regel wählen Sie diesen Modus für Tests.
Diese Eigenschaft ist erforderlich.
-
Capabilities-
Bei Stacks mit bestimmten Ressourcen ist die explizite Bestätigung erforderlich, dass CloudFormation diese Ressourcen erstellen oder aktualisieren kann. Sie müssen beispielsweise
CAPABILITY_IAMangeben, wenn die Stack-Vorlage AWS Identity and Access Management (IAM)-Ressourcen enthält. Weitere Informationen finden Sie unter CreateStack API-Operation Anfrageparameter.Diese Eigenschaft ist bedingt erforderlich. Wenn Sie IAM-Ressourcen in Ihrer Stack-Vorlage verwenden, müssen Sie diese Eigenschaft angeben.
Sie können mehrere Funktionen angeben. Das folgende Beispiel fügt der Vorlage die Eigenschaften
CAPABILITY_IAMundCAPABILITY_AUTO_EXPANDhinzu: ChangeSetName-
Der Name eines vorhandenen Änderungssatzes oder eines neuen Änderungssatzes, den Sie für den angegebenen Stack erstellen möchten.
Die Eigenschaft ist für die folgenden Aktionsmodi erforderlich:
CHANGE_SET_REPLACEundCHANGE_SET_EXECUTE. Bei allen anderen Aktionsmodi wird die Eigenschaft ignoriert. OutputFileName-
Ein Name für die Ausgabedatei, z. B.
CreateStackOutput.json. CodePipeline fügt die Datei dem Ausgabeartefakt nach der Ausführung der angegebenen Aktion hinzu. Das Ausgabeartefakt enthält eine JSON-Datei mit dem Inhalt desOutputs-Abschnitts der CloudFormation-Vorlage.Diese Eigenschaft ist optional. Wenn Sie keinen Namen angeben, generiert CodePipeline kein Ausgabeartefakt.
ParameterOverrides-
Parameter werden in Ihrer Vorlage definiert und ermöglichen Ihnen, benutzerdefinierte Werte einzugeben, wenn Sie einen Stack erstellen oder aktualisieren. Sie können ein JSON-Objekt angeben, das Parameterwerte für die Vorlage in der Vorlagenkonfigurationsdatei überschreibt. Alle Parameternamen müssen in der Stack-Vorlage vorhanden sein. Weitere Informationen finden Sie unter CloudFormation Vorlage Parameters-Syntax.
Im folgenden Beispiel werden die Parameterüberschreibungen
InstanceTypeundKeyNamezur Vorlage hinzugefügt:Anmerkung
Die maximale Größe für das JSON-Objekt, das in der
ParameterOverrides-Eigenschaft gespeichert werden kann, beträgt 1 Kilobyte.Wir empfehlen, dass Sie die Vorlagenkonfigurationsdatei verwenden, um die meisten Ihrer Parameterwerte anzugeben. Verwenden Sie Parameterüberschreibungen, um nur dynamische Parameterwerte anzugeben. Dynamische Parameterwerte sind unbekannt, bis Sie die Pipeline ausführen.
Das folgende Beispiel definiert einen Wert für den
ParameterName-Parameter mithilfe einer Parameterüberschreibungsfunktion. Die Funktion ruft einen Wert von einem CodePipeline-Eingabeartefakt ab. Weitere Informationen zu Parameterüberschreibungsfunktionen finden Sie unter Verwenden von Funktionen zum Überschreiben von Parametern mit CodePipeline Pipelines.{ "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]} }Diese Eigenschaft ist optional.
RoleArn-
Der Amazon-Ressourcenname (ARN) der IAM-Servicerolle, die von CloudFormation angenommen wird, wenn Ressourcen in einem Stack verarbeitet werden.
Diese Eigenschaft ist für die folgenden Aktionsmodi erforderlich:
CREATE_UPDATE,REPLACE_ON_FAILURE,DELETE_ONLYundCHANGE_SET_REPLACE.RoleArnwird nicht angewendet, wenn ein Änderungssatz ausgeführt wird. Wenn Sie CodePipeline nicht verwenden, um den Änderungssatz zu erstellen, stellen Sie sicher, dass dem Änderungssatz oder dem Stack eine Rolle zugewiesen ist. StackName-
Der Name eines vorhandenen Stacks oder eines Stacks, den Sie erstellen möchten.
Die Eigenschaft ist für alle Aktionsmodi erforderlich.
TemplateConfiguration-
TemplateConfigurationist die Vorlagenkonfigurationsdatei. Sie schließen die Datei in ein Eingabeartefakt für diese Aktion ein. Der Dateiname der Vorlagenkonfiguration hat das folgende Format:Artifactname::TemplateConfigurationFileNameArtifactnameist der Name des Eingabeartefakts, wie er in CodePipeline angezeigt wird. So erstellt eine Quellstufe mit dem ArtefaktnamenSourceArtifactund dem Dateinamentest-configuration.jsoneinenTemplateConfiguration-Namen, wie in diesem Beispiel gezeigt:"TemplateConfiguration": "SourceArtifact::test-configuration.json"Die Vorlagenkonfigurationsdatei kann Vorlagenparameterwerte und eine Stack-Richtlinie enthalten. Wenn Sie sensible Daten wie z. B. Passwörter einschließen, sollten Sie den Zugriff auf diese Datei beschränken. Eine Beispiel-Vorlagen-Konfigurationsdatei finden Sie unter CloudFormation Artefakte.
Diese Eigenschaft ist optional.
TemplatePath-
TemplatePathrepräsentiert die CloudFormation-Vorlagendatei. Sie schließen die Datei in ein Eingabeartefakt für diese Aktion ein. Der Dateiname folgt diesem Format:Artifactname::TemplateFileNameArtifactnameist der Name des Eingabeartefakts, wie er in CodePipeline angezeigt wird. So erstellt eine Quellstufe mit dem ArtefaktnamenSourceArtifactund dem Dateinamentemplate.yamleinenTemplatePath-Namen, wie in diesem Beispiel gezeigt:"TemplatePath": "SourceArtifact::template.yaml"Die Eigenschaft wird für die folgenden Aktionsmodi benötigt:
CREATE_UPDATE,REPLACE_ON_FAILUREundCHANGE_SET_REPLACE. Bei allen anderen Aktionsmodi wird die Eigenschaft ignoriert.
Weitere Informationen finden Sie auch unter
Die folgenden verwandten Ressourcen unterstützen Sie bei der Arbeit mit diesen Parametern.
-
Weitere Informationen zu den Parametern der CloudFormation-Aktion in CodePipeline finden Sie in der CloudFormation Referenz zur Konfiguration der Bereitstellungsaktion im AWS CodePipeline Benutzerhandbuch.
-
Beispiels-Vorlagenwerte nach Aktionsanbietern, wie etwa für das
Owner-Feld oder dieconfiguration-Felder, finden Sie in der Referenz zur Aktionsstruktur im Benutzerhandbuch für AWS CodePipeline. -
Um Beispielvorlagen für Pipeline-Stacks im YAML- oder JSON-Format herunterzuladen, siehe Tutorial: Erstellen einer Pipeline mit CloudFormation im AWS CodePipeline Benutzerhandbuch.