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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS::ServiceCatalog 转换

AWS::ServiceCatalog 转换使 Service Catalog 用户能够在其 CloudFormation 模板中引用来自已预置 Service Catalog 的现有产品的输出。

要引用来自现有预置产品的输出,必须在模板顶部包含 AWS::ServiceCatalog 转换。如果需要输出值,则需要提供预置产品的名称和输出键名称。

您可以在模板中引用多个预置产品和密钥名称,每个模板最多可引用 20 个预置产品和密钥名称。在预置过程中,转换操作会从每个引用的预置产品和密钥中检索值,并替换 CloudFormation 模板中的输出值。

用量

在模板的顶部使用 AWS::ServiceCatalog 转换。不能将 AWS::ServiceCatalog 用作嵌入在任何其他模板部分中的转换。

转换声明的值必须为文字字符串。您无法使用参数或函数来指定转换值。

模板顶层的语法

要在模板顶层的“转换”部分包含 AWS::ServiceCatalog 转换,请使用以下语法:

JSON

{ "Transform": "AWS::ServiceCatalog", . . . }

YAML

Transform: AWS::ServiceCatalog

参数

AWS::ServiceCatalog 转换不接受任何参数。

示例

下面的 JSON 和 YAML 示例展示了用户可以如何在 CloudFormation 模板中引用来自已预置 Service Catalog 的现有产品的输出。

在这些示例中,SampleProvisionedProduct 是先前创建的预置产品。SampleOutputKey 是此预置产品的输出键。

JSON

此示例为有效版本。

不将值包装为字符串文字的模板版本将会失败。

{ "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::ServiceCatalog", "Resources": { "ExampleParameter": { "Type": "AWS::SSM::Parameter", "Properties": { "Type": "String", "Value": "[[servicecatalog:provisionedproduct:SampleProvisionedProduct:SampleOutputKey]]" } } } }

YAML

示例 1-4 是有效模板。在示例 1 和 2 中,转换和值是字符串文字。

示例 5 是无效模板。值必须包装在字符串 ' 或 " 或 >- 中。否则,用户将收到错误提示消息。

// Example 1 AWSTemplateFormatVersion: 2010-09-09 Transform: 'AWS::ServiceCatalog' Resources: ExampleParameter: Type: 'AWS::SSM::Parameter' Properties: Type: String Value: '[[servicecatalog:provisionedproduct:SampleProvisionedProduct:SampleOutputKey]]' // Example 2 AWSTemplateFormatVersion: 2010-09-09 Transform: 'AWS::ServiceCatalog' Resources: ExampleParameter: Type: 'AWS::SSM::Parameter' Properties: Type: String Value: '[[servicecatalog:provisionedproduct:SampleProvisionedProduct:SampleOutputKey]]' // Example 3 AWSTemplateFormatVersion: 2010-09-09 Transform: AWS::ServiceCatalog Resources: ExampleParameter: Type: 'AWS::SSM::Parameter' Properties: Type: String Value: "[[servicecatalog:provisionedproduct:SampleProvisionedProduct:SampleOutputKey]]" // Example 4 AWSTemplateFormatVersion: 2010-09-09 Transform: AWS::ServiceCatalog Resources: ExampleParameter: Type: 'AWS::SSM::Parameter' Properties: Type: String Value: >- [[servicecatalog:provisionedproduct:SampleProvisionedProduct:SampleOutputKey]] // Example 5 AWSTemplateFormatVersion: 2010-09-09 Transform: AWS::ServiceCatalog Resources: ExampleParameter2: Type: 'AWS::SSM::Parameter' Properties: Type: String Value: [[servicecatalog:provisionedproduct:SSMProductProvisionedProduct:SampleOutputKey]]