Amazon web services Cloudformation AWS::ElasticLoadBalancingV2::侦听器证书的任意列表
我正在尝试编写一个支持多个环境的CloudFormation模板,每个环境可以有2到3个证书,这些证书应该附加到负载平衡器侦听器 然而,由于Cloudformation不接受一个简单的证书arn()列表,因此我很难弄清楚如何使用参数传入一个对象列表。似乎:Amazon web services Cloudformation AWS::ElasticLoadBalancingV2::侦听器证书的任意列表,amazon-web-services,amazon-cloudformation,Amazon Web Services,Amazon Cloudformation,我正在尝试编写一个支持多个环境的CloudFormation模板,每个环境可以有2到3个证书,这些证书应该附加到负载平衡器侦听器 然而,由于Cloudformation不接受一个简单的证书arn()列表,因此我很难弄清楚如何使用参数传入一个对象列表。似乎: 每个参数必须有一个类型 “List”不是可接受的类型,它必须是“某物”的列表 Cloudformation没有“foreach”来动态地从每个证书arn创建“cert对象” 我遇到了这个示例模板(),但这里的问题是通过使用两个显式证书来解决的
证书:
-证书:Arn1
-证书:Arn2
-证书:Arn\n
其中,Arn1、Arn2、Arn来自“列表类型”参数
因此,我想问题是:Cloudformation中是否有任何“foreach”或其他任何东西可以帮助我在参数列表中为每个项目生成一个“object”,或者是否有任何方法可以传递“rich”参数对象?Cloudformation允许您使用
CommaDelimitedList
作为参数类型。然后,您可以以逗号分隔列表的形式提供:
arn1,arn2,arn3
这个列表是任意的。然后,您可以直接将其提供给侦听器的证书
属性:
"Certificates" : { "Ref" : "MyListParam" }
谢谢我已经更新了我的问题,让它更清楚的限制是什么。我看到了这个问题。所以这个解决方案不会直接起作用。CloudFormation没有foreach的
类型的结构。你可以用条件句做你想做的事。谢谢!我们使用Ansible应用cloudformation,因此我最终使用了一点Jinja2魔法。只是很惊讶它是这样实现的,当它产生限制时。