2016-10-03 73 views
1

我有一個模板,它是我們產品的主堆棧。我正在將所有模板從JSON更改爲YAML,並使用新的「!if」類型功能。我本來有我的模板樣子的麻煩的部分如下(此作品在JSON):AWS CloudFormation鏈接功能

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

我想改變這YAML,所以模板的這個部分現在看起來是這樣的:

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

雲形成拋出YAML沒有良好形成的錯誤,因爲鏈接!函數集內。

回答

1

要鏈YAML AWS CloudFormation功能,只是如下:

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

[這](http://www.yamllint.com/),[此](HTTP:// YAML-online- parser.appspot.com/)和[this](http://codebeautify.org/yaml-validator)在線YAML解析器/檢查器以及我的Python解析器表明這是無效的YAML。你確定你不錯過第二行的縮進嗎? – Anthon

+0

「CreteProdResources」行下的所有內容應該在右側超過兩個空格。 – troz