Cloudformation init - 安装多个包
Cloudformation init - install multiple packages
我有以下参数询问用户要安装哪些包:
Packages:
Description: A SPACE seperated list of packages that you want installed on this instance.
Type: String
Default: None
然后在我的 EC2 实例资源定义中,我有:
WebServerHost:
Type: AWS::EC2::Instance
Metadata:
Comment: Install HTTP server
AWS::CloudFormation::Init:
config:
packages:
yum:
Fn::Join: [ ' ', [ !Ref Packages ] ]
但这不起作用!请有人告诉我我做错了什么,或者我是否采取了错误的方法?
谢谢
Packages 采用 对象,而不是列表 。所以你不能按照你想要的方式动态地做到这一点。您必须 明确指定 yum
的正确值,因为在这种情况下,它们不能作为参数传递给。
解决这个问题的唯一方法是通过 CloudFormation macro,您必须开发它并且正确地将 yum
属性 设置为对象,而不是列表。
我有以下参数询问用户要安装哪些包:
Packages:
Description: A SPACE seperated list of packages that you want installed on this instance.
Type: String
Default: None
然后在我的 EC2 实例资源定义中,我有:
WebServerHost:
Type: AWS::EC2::Instance
Metadata:
Comment: Install HTTP server
AWS::CloudFormation::Init:
config:
packages:
yum:
Fn::Join: [ ' ', [ !Ref Packages ] ]
但这不起作用!请有人告诉我我做错了什么,或者我是否采取了错误的方法? 谢谢
Packages 采用 对象,而不是列表 。所以你不能按照你想要的方式动态地做到这一点。您必须 明确指定 yum
的正确值,因为在这种情况下,它们不能作为参数传递给。
解决这个问题的唯一方法是通过 CloudFormation macro,您必须开发它并且正确地将 yum
属性 设置为对象,而不是列表。