转换 - Amazon CloudFormation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

转换

可选的 Transform 部分指定 Amazon CloudFormation 用于处理您的模板的一个或多个宏。Transform 部分基于 Amazon CloudFormation 的简单的声明性语言构建,并带有一个强大的宏系统。

您可以在模板中声明一个或多个宏。Amazon CloudFormation 按照指定的顺序执行宏。当您创建更改集时,Amazon CloudFormation 会生成一个包含已处理模板内容的更改集。然后,您可以查看更改并执行更改集。有关更多信息,请参阅 使用 Amazon CloudFormation 宏对模板执行自定义处理

Amazon CloudFormation 还支持转换,这些转换是由 Amazon CloudFormation 托管的宏。Amazon CloudFormation 在执行顺序和范围方面将这些转换视为与您创建的任何宏相同。有关特定转换的详细信息,请参阅转换参考

要声明多个宏,请使用列表格式并指定一个或多个宏。

例如,在下面的模板示例中,Amazon CloudFormation 先后评估 MyMacroAWS::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: MyBucket Tags: [{"key":"value"}] CorsConfiguration:[] MyEc2Instance: Type: 'AWS::EC2::Instance' Properties: ImageID: "ami-123" // End of processable content for MyMacro and AWS::Serverless