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]]