

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.

# CloudFormation Referenz zu Konfigurationseigenschaften
<a name="continuous-delivery-codepipeline-action-reference"></a>

Wenn Sie eine CodePipeline Pipeline erstellen, fügen Sie der Pipeline eine `Deploy` Aktion mit CloudFormation als Anbieter hinzu. Anschließend müssen Sie angeben, welche CloudFormation Aktion die Pipeline aufruft und welche Einstellungen die Aktion hat. In diesem Thema werden die CloudFormation -Konfigurationseigenschaften beschrieben. Um Eigenschaften anzugeben, können Sie die CodePipeline Konsole verwenden oder ein JSON-Objekt erstellen, das für die AWS CLI, CodePipeline API oder CloudFormation Vorlagen verwendet werden soll.

**Topics**
+ [Konfigurationseigenschaften (Konsole)](#continuous-delivery-codepipeline-action-reference-console)
+ [Konfigurationseigenschaften (JSON-Objekt)](#continuous-delivery-codepipeline-action-reference-json)
+ [Weitere Informationen finden Sie auch unter](#continuous-delivery-codepipeline-action-reference-see-also)

## Konfigurationseigenschaften (Konsole)
<a name="continuous-delivery-codepipeline-action-reference-console"></a>

Die CodePipeline [Konsole](https://console.aws.amazon.com/codepipeline/) zeigt die Konfigurationseigenschaften und gibt die Eigenschaften an, die je nach dem von Ihnen ausgewählten Aktionsmodus erforderlich sind.

**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 bei CodePipeline der Verarbeitung der zugehörigen Phase aufgerufen wird. 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 vorhanden ist, CloudFormation wird er gelöscht und anschließend ein neuer erstellt.
+ **Create or update a stack** erstellt oder aktualisiert einen Stack, wenn der angegebene Stack nicht vorhanden ist. Wenn der Stapel vorhanden ist, wird der Stapel CloudFormation aktualisiert. Verwenden Sie diese Aktion, um bestehende Stacks zu aktualisieren. CodePipeline ersetzt den Stapel nicht.
+ **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. Wenn der Stapel existiert und sich in einem ausgefallenen Zustand befindet (gemeldet als `ROLLBACK_COMPLETE` `ROLLBACK_FAILED``CREATE_FAILED`,`DELETE_FAILED`,, oder`UPDATE_ROLLBACK_FAILED`), CloudFormation wird der Stapel gelöscht und anschließend ein neuer erstellt. Wenn sich der Stack nicht in einem ausgefallenen Zustand befindet, wird er 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.

**Stack name**  
Der Name, der einem vorhandenen Stack oder einem Stack zugeordnet ist, den Sie erstellen möchten. Der Name muss in der AWS Region, in der Sie den Stack erstellen, eindeutig sein.  
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, die dem Format folgt`{{ArtifactName}}::{{TemplateFileName}}`.

**Vorlagenkonfiguration**  
Der Speicherort einer Vorlagenkonfigurationsdatei im Format `{{ArtifactName}}::{{TemplateConfigurationFileName}}`. 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](continuous-delivery-codepipeline-cfn-artifacts.md).

**Funktionen**  
Bei Stacks, die bestimmte Ressourcen enthalten, ausdrückliche Bestätigung, dass diese Ressourcen CloudFormation möglicherweise erstellt oder aktualisiert werden. Sie müssen beispielsweise `CAPABILITY_IAM` angeben, wenn die Stack-Vorlage AWS Identity and Access Management (IAM)-Ressourcen enthält. Weitere Informationen finden Sie unter [https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html) 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.

**Name der Rolle**  
Der Name der IAM-Dienstrolle, die CloudFormation annimmt, wenn sie mit Ressourcen im angegebenen Stack arbeitet.

**Ausgabedateiname**  
Im Abschnitt „**Erweitert**“ können Sie einen Namen für die Ausgabedatei angeben, z. B. den Namen`CreateStackOutput.json`, der dem [Ausgabeartefakt CodePipeline ](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-artifacts) hinzugefügt wird, nachdem es die angegebene Aktion ausgeführt hat. Das Ausgabeartefakt enthält eine JSON-Datei mit dem Inhalt des `Outputs` Abschnitts der CloudFormation Vorlage.  
Wenn Sie keinen Namen angeben, wird CodePipeline kein Ausgabeartefakt generiert.

**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 ParametersVorlagensyntax](parameters-section-structure.md).  
Für das JSON-Objekt, das in der Eigenschaft `ParameterOverrides` gespeichert 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 aus einem CodePipeline Eingabeartefakt ab. Weitere Informationen zu Parameterüberschreibungsfunktionen finden Sie unter [Verwenden von Funktionen zum Überschreiben von Parametern mit CodePipeline Pipelines](continuous-delivery-codepipeline-parameter-override-functions.md).  

```
{
  "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]}
}
```

## Konfigurationseigenschaften (JSON-Objekt)
<a name="continuous-delivery-codepipeline-action-reference-json"></a>

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 AWS CLI, CodePipeline API oder CloudFormation Vorlagen. Beispiele finden Sie unter [Walkthrough: Erstellen einer Pipeline für Test- und Produktions-Stacks](continuous-delivery-codepipeline-basic-walkthrough.md) und [CloudFormation Referenz zu Konfigurationseigenschaften](#continuous-delivery-codepipeline-action-reference).

`ActionMode`  
Die CloudFormation Aktion, die CodePipeline aufgerufen wird, wenn sie die zugehörige Phase verarbeitet. Geben Sie nur einen der folgenden Aktionsmodi an:  
+ `CHANGE_SET_EXECUTE` führt einen Änderungssatz aus.
+ `CHANGE_SET_REPLACE` erstellt den Änderungssatz, falls er noch nicht existiert, basierend auf dem Stack-Namen und der Vorlage, die Sie übermitteln. Wenn der Änderungssatz vorhanden ist, CloudFormation wird er gelöscht und anschließend ein neuer erstellt.
+ `CREATE_UPDATE` erstellt 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, um bestehende Stapel zu aktualisieren. CodePipeline ersetzt den Stapel nicht.
+ `DELETE_ONLY` löscht einen Stack. Wenn Sie einen Stack angeben, der nicht vorhanden ist, wird die Aktion ohne Löschen eines Stacks erfolgreich abgeschlossen.
+ `REPLACE_ON_FAILURE` erstellt einen Stack, wenn der angegebene Stack noch nicht vorhanden ist. Wenn der Stapel existiert und sich in einem ausgefallenen Zustand befindet (gemeldet als `ROLLBACK_COMPLETE``ROLLBACK_FAILED`,`CREATE_FAILED`,`DELETE_FAILED`, oder`UPDATE_ROLLBACK_FAILED`), CloudFormation wird der Stapel gelöscht und anschließend ein neuer Stapel erstellt. Wenn sich der Stack nicht in einem ausgefallenen Zustand befindet, wird er 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, die bestimmte Ressourcen enthalten, ausdrückliche Bestätigung, dass diese Ressourcen CloudFormation möglicherweise erstellt oder aktualisiert werden. Sie müssen beispielsweise `CAPABILITY_IAM` angeben, wenn die Stack-Vorlage AWS Identity and Access Management (IAM)-Ressourcen enthält. Weitere Informationen finden Sie unter [https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html) 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_IAM` und `CAPABILITY_AUTO_EXPAND` hinzu:  

```
configuration:
  ActionMode: CHANGE_SET_REPLACE
  {{Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND}}
  ChangeSetName: pipeline-changeset
  RoleArn: CloudFormation_Role_ARN
  StackName: my-pipeline-stack
  TemplateConfiguration: 'my-pipeline-stack::template-configuration.json'
  TemplatePath: 'my-pipeline-stack::template-export.yml'
```

```
 "configuration": {
        "ActionMode": "CHANGE_SET_REPLACE",
        {{"Capabilities": "CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND",}}
        "ChangeSetName": "pipeline-changeset",
        "RoleArn": "CloudFormation_Role_ARN",
        "StackName": "my-pipeline-stack",
        "TemplateConfiguration": "my-pipeline-stack::template-configuration.json",
        "TemplatePath": "my-pipeline-stack::template-export.yml"
    }
```

`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_REPLACE` und `CHANGE_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](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-artifacts) hinzu, nachdem es die angegebene Aktion ausgeführt hat. Das Ausgabeartefakt enthält eine JSON-Datei mit dem Inhalt des `Outputs` Abschnitts der CloudFormation Vorlage.  
Diese Eigenschaft ist optional. Wenn Sie keinen Namen angeben, wird CodePipeline kein Ausgabeartefakt generiert.

`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 ParametersVorlagensyntax](parameters-section-structure.md).  
Im folgenden Beispiel werden die Parameterüberschreibungen `InstanceType` und `KeyName` zur Vorlage hinzugefügt:  

```
configuration:
  ActionMode: CHANGE_SET_REPLACE
  Capabilities: CAPABILITY_NAMED_IAM
  ChangeSetName: pipeline-changeset
  {{ParameterOverrides: '{"InstanceType": "t2.small","KeyName": "my-keypair"}'}}
  RoleArn: CloudFormation_Role_ARN
  StackName: my-pipeline-stack
  TemplateConfiguration: 'my-pipeline-stack::template-configuration.json'
  TemplatePath: 'my-pipeline-stack::template-export.yml'
```

```
"configuration": {
        "ActionMode": "CHANGE_SET_REPLACE",
        "Capabilities": "CAPABILITY_NAMED_IAM",
        "ChangeSetName": "pipeline-changeset",
        {{"ParameterOverrides": "{\"InstanceType\": \"t2.small\",\"KeyName\": \"my-keypair\"}",}}
        "RoleArn": "CloudFormation_Role_ARN",
        "StackName": "my-pipeline-stack",
        "TemplateConfiguration": "my-pipeline-stack::template-configuration.json",
        "TemplatePath": "my-pipeline-stack::template-export.yml"
    }
```
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 aus einem CodePipeline Eingabeartefakt ab. Weitere Informationen zu Parameterüberschreibungsfunktionen finden Sie unter [Verwenden von Funktionen zum Überschreiben von Parametern mit CodePipeline Pipelines](continuous-delivery-codepipeline-parameter-override-functions.md).  

```
{
  "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]}
}
```
Diese Eigenschaft ist optional.

`RoleArn`  
Der Amazon-Ressourcenname (ARN) der IAM-Servicerolle, die CloudFormation annimmt, wenn sie mit Ressourcen in einem Stack arbeitet.  
Diese Eigenschaft ist für die folgenden Aktionsmodi erforderlich: `CREATE_UPDATE`, `REPLACE_ON_FAILURE`, `DELETE_ONLY` und `CHANGE_SET_REPLACE`. `RoleArn` wird nicht angewendet, wenn ein Änderungssatz ausgeführt wird. Wenn Sie den Änderungssatz nicht CodePipeline zur Erstellung verwenden, stellen Sie sicher, dass dem Änderungssatz oder Stack eine zugeordnete Rolle zugeordnet ist.

`StackName`  
Der Name eines vorhandenen Stacks oder eines Stacks, den Sie erstellen möchten.  
Die Eigenschaft ist für alle Aktionsmodi erforderlich.

`TemplateConfiguration`  
`TemplateConfiguration` ist die Vorlagenkonfigurationsdatei. Sie schließen die Datei in ein Eingabeartefakt für diese Aktion ein. Der Dateiname der Vorlagenkonfiguration hat das folgende Format:   
`{{Artifactname}}::{{TemplateConfigurationFileName}}`  
`Artifactname`ist der Name des Eingabeartefakts, wie er in CodePipeline erscheint. So erstellt eine Quellstufe mit dem Artefaktnamen `SourceArtifact` und dem Dateinamen `test-configuration.json` einen `TemplateConfiguration`-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. Für eine Beispiel-Vorlagenkonfigurationsdatei siehe [CloudFormation Artefakte](continuous-delivery-codepipeline-cfn-artifacts.md).  
Diese Eigenschaft ist optional.

`TemplatePath`  
`TemplatePath`steht für die CloudFormation Vorlagendatei. Sie schließen die Datei in ein Eingabeartefakt für diese Aktion ein. Der Dateiname folgt diesem Format:  
`{{Artifactname}}::{{TemplateFileName}}`  
`Artifactname`ist der Name des Eingabeartefakts, wie er in CodePipeline erscheint. So erstellt eine Quellstufe mit dem Artefaktnamen `SourceArtifact` und dem Dateinamen `template.yaml` einen `TemplatePath`-Namen, wie in diesem Beispiel gezeigt:  

```
"TemplatePath": "SourceArtifact::template.yaml"
```
Die Eigenschaft wird für die folgenden Aktionsmodi benötigt: `CREATE_UPDATE`, `REPLACE_ON_FAILURE` und `CHANGE_SET_REPLACE`. Bei allen anderen Aktionsmodi wird die Eigenschaft ignoriert.

## Weitere Informationen finden Sie auch unter
<a name="continuous-delivery-codepipeline-action-reference-see-also"></a>

Die folgenden verwandten Ressourcen unterstützen Sie bei der Arbeit mit diesen Parametern.
+ Weitere Informationen zu den CloudFormation Aktionsparametern in CodePipeline finden Sie in der [Konfigurationsreferenz für CloudFormation Bereitstellungsaktionen](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CloudFormation.html) im *AWS CodePipeline Benutzerhandbuch*.
+ Beispiels-Vorlagenwerte nach Aktionsanbietern, wie etwa für das `Owner`-Feld oder die `configuration`-Felder, finden Sie in der [Referenz zur Aktionsstruktur](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) 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](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-cloudformation.html) im *AWS CodePipeline -Benutzerhandbuch*.