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::FindInMap enhancements
Wenn Sie die AWS::LanguageExtensions
Transformation zu einer AWS CloudFormation Vorlage hinzufügen, können Sie systeminterne Funktionen verwenden, um die Felder von zu definieren. Fn::FindInMap
Sie können auch ein neues optionales Feld verwenden, um einen Standardwert zurückzugeben, falls keine Zuordnung gefunden wird.
Weitere Informationen zu diesen AWS::LanguageExtensions
-Transformationen finden Sie unter AWS::LanguageExtensions-Transformation.
Weitere Informationen zu der intrinsischen Fn::FindInMap
-Funktion finden Sie unter Fn::FindInMap.
Deklaration
JSON
{ "Fn::FindInMap" : [ "
MapName
", "TopLevelKey
", "SecondLevelKey
", {"DefaultValue": "DefaultValue
"} ] }
YAML
Syntax für den vollständigen Funktionsnamen:
Fn::FindInMap:
- MapName
- TopLevelKey
- SecondLevelKey
- DefaultValue:DefaultValue
Syntax für die Kurzform:
!FindInMap
- MapName
- TopLevelKey
- SecondLevelKey
- DefaultValue:DefaultValue
Parameter
- DefaultValue
-
Der Wert, in den
Fn::FindInMap
aufgelöst wird, wennTopLevelKey
und/oderSecondLevelKey
nicht auf derMapName
-Karte gefunden werden können. Dies ist ein optionales Feld.
Alle Parameter MapName
, TopLevelKey
, SecondLevelKey
und DefaultValue
können eine intrinsische Funktion sein, sofern sie während der Transformation in einen gültigen Wert aufgelöst werden können.
Beispiel
Im Folgenden finden Sie ein Beispiel für die Verwendung intrinsischer Funktionen zur Definition des Schlüssels der obersten Ebene:
JSON
{ //... "Transform": "AWS::LanguageExtensions", //... "Fn::FindInMap": [ "MyMap", { "Fn::Select": [ 0, { "Fn::Split": [ "|", { "Ref": "InputKeys" } ] } ] }, "SecondKey" ] //... }
YAML
Transform: 'AWS::LanguageExtensions' #... !FindInMap: [MyMap, !Select [0, !Split [|, !Ref InputKeys]], SecondKey] #...
Der folgende Code ist ein Beispiel für die Verwendung von Standardwerten:
JSON
{ //... "Transform": "AWS::LanguageExtensions", //... "Fn::FindInMap": [ "InstanceConfiguration", { "Ref": "AWS::Region" }, "Type", { "DefaultValue": "m5.small" } ] //... }
YAML
Transform: 'AWS::LanguageExtensions' #... !FindInMap - 'InstanceConfiguration' - !Ref 'AWS::Region' - 'Type' - DefaultValue: m5.small #...
Unterstützte Funktionen
Sie können die folgenden Funktionen in den Fn::FindInMap:
-Bedingungen verwenden:
-
Fn::Split
– Sofern es nicht für den Standardwert verwendet wird, mussFn::Split
in Verbindung mit intrinsischen Funktionen verwendet werden, die eine Zeichenfolge erzeugen, z. B.Fn::Join
oderFn::Select
.