2016-10-03 5 views
1

Ich habe eine Vorlage, die ein Master-Stack für unser Produkt ist. Ich bin dabei, alle Vorlagen von JSON zu YAML zu ändern, indem ich die neue Funktion "! If" verwende. Ich ursprünglich den lästigen Teil meiner Vorlage Blick hatte wie folgt (dies funktioniert in JSON):AWS CloudFormation Verkettung Funktionen

"CreateProdResources" : {"Fn::And" : [{"Fn::Not" : [{"Fn::Equals" : [{"Ref" : "Environment"}, "beta"]} ]}, {"Fn::Not" : [{"Fn::Equals" : [{"Ref" : "Environment"}, "eubeta"]} ]} ]} 

ich das YAML ändern will, so dass dieser Teil der Vorlage sieht nun wie folgt aus:

CreateProdResources: !And: - !Not: - !Equals: - Ref: Environment - beta - !Not: - !Equals: - Ref: Environment - eubeta

Wolke Bildung wirft einen YAML nicht wohlgeformten Fehler, wegen der Kette! Funktionen innerhalb eines Sets.

Antwort

1

Zur Kette YAML AWS Cloudformation-Funktionen, einfach wie folgt vorgehen:

CreateProdResources: 
    !And 
    - !Not 
    - !Equals [!Ref "Environment", "beta"] 
    - !Not 
    - !Equals [!Ref "Environment", "eubeta"] 
+0

[Dies] (http://www.yamllint.com/), [diese] (http: // yaml-online- parser.appspot.com/) und [dies] (http://codebeautify.org/yaml-validator) online YAML-Parser/Checker sowie mein Python-Parser zeigen an, dass dies ein ungültiger YAML ist. Sind Sie sicher, dass Sie keine Einrückung auf der vorletzten Zeile verpassen? – Anthon

+0

alles unter der Zeile "CreteProdResources" sollte mehr als zwei Felder auf der rechten Seite sein. – troz

Verwandte Themen