如何解决CloudFormation条件问题
我有一个CloudFormation模板,我想在AutoScale结构中使用一个条件,但是出现错误。我想知道我是否想念什么?
我的状况:
Conditions:
CreateLBResources: !Equals
- !Ref LB
- true
AutoScale中的负载均衡器:
LoadBalancerNames:
!If [CreateLBResources,!Ref LoadBalancer,!Ref "AWS::Novalue"]
错误:
属性LoadBalancerNames的值必须为字符串列表类型
我想做什么?
如果输入“ true”,请添加负载均衡器的名称,如果输入“ false”,则将其保留为空白。
感谢帮助。
解决方法
在LoadBalancerNames
中,您不需要任何!If
条件。您只需在ASG块中使用Condition
。
myASG:
Condition: CreateLBResources
Type: AWS::AutoScaling::AutoScalingGroup
Properties:
LoadBalancerNames: [<LBName>]
...
根据条件CreateLBResources
,它将完成工作(创建或不创建ASG)。
我解决了我的问题。
LoadBalancerNames:
- !If [CreateLBResources,!Ref LoadBalancer,!Ref "AWS::NoValue"]
我忘记添加-字符。
谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。