Dies ist der neue AWS CloudFormation Vorlagen-Referenzleitfaden. Bitte aktualisieren Sie Ihre Lesezeichen und Links. Hilfe zu den ersten CloudFormation Schritten finden Sie im AWS CloudFormation Benutzerhandbuch.
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.
Fn::ForEach
Die Fn::ForEach intrinsische Funktion nimmt eine Sammlung und ein Fragment und wendet die Elemente in der Sammlung auf den Bezeichner im bereitgestellten Fragment an. Fn::ForEachkann andere systeminterne Funktionen, einschließlich Fn::ForEach sich selbst, enthalten und in den Abschnitten, ConditionsOutputs, und Resources (einschließlich der Ressourceneigenschaften) verwendet werden. Es kann in keinem der folgenden Abschnitte,,,,AWSTemplateFormatVersion,Description, Metadata Transform Parameters MappingsRules, oder Hooks Abschnitten verwendet werden.
Wenn Sie die Fn::ForEach systeminterne Funktion in Ihrer Vorlage verwenden, müssen Sie auch die verwenden. AWS::LanguageExtensions-Transformation
Die Verwendung der intrinsischen Funktion Fn::ForEach hat keine Auswirkungen auf die geltenden Kontingente für die resultierende Vorlage. Kontingente beinhalten die maximale Größe einer Vorlage und die maximale Anzahl von Ressourcen in einer Vorlage. Weitere Informationen finden Sie im AWS CloudFormation Benutzerhandbuch unter Grundlegendes zu AWS CloudFormation Kontingenten.
Deklaration
JSON
"Fn::ForEach::LoopLogicalName": [
"Identifier",
["Value1","Value2"], // Collection
{"OutputKey": {OutputValue}}
]
YAML
'Fn::ForEach::LoopLogicalName':
- Identifier
- - Value1 # Collection
- Value2
- 'OutputKey':
OutputValue
Parameter
- Logischer Name der Schleife
-
Eine logische ID für die Schleife. Der Name muss innerhalb der Vorlage eindeutig sein und darf nicht mit logischen ID-Werten im
ResourcesAbschnitt der Vorlage in Konflikt stehen. Dieser Name ist nicht in der transformierten Ausgabe enthalten. Er wird als interne Referenz innerhalb der CloudFormation Vorlage selbst verwendet. - Kennung
-
Ein Bezeichner für den Platzhalter, der in den
OutputValueParameternOutputKeyund ersetzt wird. Alle Instanzen von${Identifier}oder&{Identifier}in denOutputValueParameternOutputKeyund werden durch die Werte aus demCollectionParameter ersetzt. - Sammlung
-
Die Sammlung von Werten, über die iteriert werden soll. Dies kann ein Array in diesem Parameter sein oder ein Ref zu einem
CommaDelimitedList. Bei der Verwendung&{Identifier}können nicht-alphanumerische Zeichen in den übergeben werden.Collection - Ausgabeschlüssel
-
Der Schlüssel in der transformierten Vorlage.
${Identifier}oder&{Identifier}muss imOutputKeyParameter enthalten sein. Wenn beispielsweise imResourcesAbschnitt der Vorlage verwendetFn::ForEachwird, ist dies die logische ID jeder Ressource.Die
&{}Syntax erlaubt die Verwendung von nicht-alphanumerischen Zeichen imOutputKeyParameter.CollectionEin Beispiel hierfür finden Sie unter. Übergeben von nicht-alphanumerischen Zeichen innerhalb von für CollectionFn::ForEach - Ausgabewert
-
Der Wert, der in der transformierten Vorlage für jedes Element im
CollectionParameter repliziert wird. Wenn beispielsweise imResourcesAbschnitt der Vorlage verwendetFn::ForEachwird, ist dies das Vorlagenfragment, das wiederholt wird, um jede Ressource zu konfigurieren.
Rückgabewert
Ein erweitertes Objekt, das das Objektfragment enthält, das für jedes Element in der Sammlung einmal wiederholt wird, wobei die Kennung im Fragment durch das Element aus der Sammlung ersetzt wird.
Unterstützte Funktionen
Sie können die folgenden Funktionen in Fn::ForEach verwenden.
-
Bedingungsfunktionen:
Beispiele
Beispiele für die Resources Abschnitte ConditionsOutputs, und finden Sie unterBeispiele.