Transform
可选的 Transform
部分指定 CloudFormation 用来以某种方式处理模板的一个或多个宏。
宏可以执行查找和替换文本等简单任务,也可以对整个模板进行更广泛的转换。CloudFormation 按照指定的顺序执行宏。当您创建更改集时,CloudFormation 会生成一个包含已处理模板内容的更改集。然后,您可以查看更改并执行更改集。有关宏工作原理的更多信息,请参阅使用模板宏对 CloudFormation 模板执行自定义处理。
CloudFormation 还支持转换,后者是由 CloudFormation 托管的宏。在执行顺序和范围方面,CloudFormation 以相同的方法处理转换以及您创建的任何宏。有关更多信息,请参阅 转换参考。
要声明多个宏,请使用列表格式并指定一个或多个宏。
例如,在下面的模板示例中,CloudFormation 会首先评估 MyMacro
,然后再评估 AWS::Serverless
,并且两者都可以处理整个模板的内容,因为它们包含在 Transform
部分中。
# Start of processable content for MyMacro and AWS::Serverless Transform: - MyMacro - 'AWS::Serverless' Resources: WaitCondition: Type: 'AWS::CloudFormation::WaitCondition' MyBucket: Type: 'AWS::S3::Bucket' Properties: BucketName:
amzn-s3-demo-bucket
Tags:[{"key":"value"}]
CorsConfiguration:[]
MyEc2Instance: Type: 'AWS::EC2::Instance' Properties: ImageId:ami-1234567890abcdef0
# End of processable content for MyMacro and AWS::Serverless