本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
生成的Amazon CloudFormation资源
当 Amazon Serverless Application Model (Amazon SAM) 处理您的Amazon SAM模板文件时,它会生成一个或多个Amazon CloudFormation资源。根据您指定的方案,Amazon SAM生成的Amazon CloudFormation资源集会有所不同。场景是模板文件中指定的Amazon SAM资源和属性的组合。您可以在模板文件中的其他地方引用生成的Amazon CloudFormation资源,类似于引用在模板文件中明确声明的资源。
例如,如果您在Amazon SAM模板文件中指定AWS::Serverless::Function
资源,则Amazon SAM始终会生成AWS::Lambda::Function
基础资源。如果您还指定了可选AutoPublishAlias
属性,则Amazon SAM还会生成AWS::Lambda::Alias
和AWS::Lambda::Version
资源。
本节列出了场景及其生成的Amazon CloudFormation资源,并说明如何在Amazon SAM模板文件中引用生成的Amazon CloudFormation资源。
引用生成的资源 Amazon CloudFormation
您可以通过两种方式在Amazon SAM模板文件中引用生成的Amazon CloudFormation资源,即通过引用LogicalId
或按可引用属性引用。
引用生成的Amazon CloudFormation资源由 LogicalId
Amazon SAM生成的每个Amazon CloudFormation资源都有一个,这是一个字母数字(A-Z LogicalId
、a-z、0-9)标识符,在模板文件中是唯一的。 Amazon SAM使用模板文件LogicalIds
中的Amazon SAM资源来构造它生LogicalIds
成的Amazon CloudFormation资源。您可以使用生LogicalId
成的Amazon CloudFormation资源在模板文件中访问该资源的属性,就像访问已明确声明的Amazon CloudFormation资源一样。有关输入Amazon CloudFormation和Amazon SAM模板LogicalIds
的更多信息,请参阅《Amazon CloudFormation用户指南》中的资源。
注意
一些生成的资源包含唯一的哈希值,以避免命名空间冲突。LogicalIds
这些LogicalIds
资源是在创建堆栈时派生的。只有在使用、或其中一个 Amazon SDK 创建堆栈后 Amazon Web Services Management ConsoleAmazon CLI,才能检索它们。我们不建议通过引用这些资源,LogicalId
因为哈希值可能会发生变化。
通过可引用属性引用生成的Amazon CloudFormation资源
对于某些生成的资源,Amazon SAM提供该资源的可引用属性。Amazon SAM您可以使用此属性在Amazon SAM模板文件中引用生成的Amazon CloudFormation资源及其属性。
注意
并非所有生成的Amazon CloudFormation资源都有可引用的属性。对于这些资源,必须使用LogicalId
。
生成的Amazon CloudFormation资源场景
下表汇总了构成生成Amazon SAM资源的方案的Amazon CloudFormation资源和属性。“方案” 列中的主题提供有关为该方案Amazon SAM生成的其他Amazon CloudFormation资源的详细信息。
Amazon SAM 资源 | 基础Amazon CloudFormation资源 | 场景 |
---|---|---|
AWS::Serverless::Api
|
AWS::ApiGateway::RestApi |
|
Amazon:: 无服务器:: 应用
|
AWS::CloudFormation::Stack |
|
AWS::Serverless::Function |
AWS::Lambda::Function |
|
AWS::Serverless::HttpApi |
AWS::ApiGatewayV2::Api |
|
AWS::Serverless::LayerVersion
|
AWS::Lambda::LayerVersion |
|
AWS::Serverless::SimpleTable
|
AWS::DynamoDB::Table |
|
AWS::Serverless::StateMachine
|
AWS::StepFunctions::StateMachine |
主题
- Amazon CloudFormation指定 Amazon:: Serverless:: Api 时生成的资源
- Amazon CloudFormation指定 Amazon:: Serverless:: 应用程序时生成的资源
- Amazon CloudFormation指定时生成的资源AWS::Serverless::Connector
- Amazon CloudFormation生成的资源时间AWS::Serverless::Function已指定
- Amazon CloudFormation资源在何时生成AWS::Serverless::GraphQLApi已指定
- Amazon CloudFormation指定 Amazon:: Serverless:: HTTPAPI 时生成的资源
- Amazon CloudFormation当时生成的资源AWS::Serverless::LayerVersion已指定
- Amazon CloudFormation当时生成的资源AWS::Serverless::SimpleTable已指定
- Amazon CloudFormation生成的资源AWS::Serverless::StateMachine已指定