如何在UserData中的Cloudformation Fn::Sub中添加两个变量

2024-01-11

我可以添加 1 个变量,但无法添加第二个变量,我是系统管理员,对 YAML 不太了解

UserData:  
    Fn::Base64: !Sub  
       - |+  
        #!/bin/bash -xe  
        NEW_HOSTNAME=${test}  
       - test:   
             Fn::FindInMap: [Regions, !Ref "AWS::Region", Name]   

我想在测试后添加另一个 FindInMap 变量,但我无法这样做。


你可以这样做:

UserData:
  Fn::Base64: !Sub
    - |
      #!/bin/bash -xe
      foo=${foo}
      baz=${baz}
    - foo: !FindInMap [FooMap, Foo, Value]
      baz: !FindInMap [FooMap, Baz, Value]

也可以将其格式化为:

UserData:
  Fn::Base64: !Sub
    - |
      #!/bin/bash -xe
      foo=${foo}
      baz=${baz}
    - {
        foo: !FindInMap [FooMap, Foo, Value],
        baz: !FindInMap [FooMap, Baz, Value]
      }

另请参阅文档Fn::FindInMap https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html功能。

请注意,我删除了|+- 这是一个 YAML 功能,表示保留尾随换行符。这里其实并不需要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在UserData中的Cloudformation Fn::Sub中添加两个变量 的相关文章

随机推荐