本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon CloudFormation 何时生成的资源 AWS::Serverless::Function 已指定
指定AWS::Serverless::Function
时, Amazon Serverless Application Model
(Amazon SAM) 始终会创建AWS::Lambda::Function
基础 Amazon CloudFormation 资源。
AWS::Lambda::Function
-
LogicalId
:<function‑LogicalId>
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
除此 Amazon CloudFormation 资源外,如果指定了AWS::Serverless::Function
此资源, Amazon SAM 还会生成用于以下场景的 Amazon CloudFormation 资源。
场景
AutoPublishAlias 属性已指定
当指定了的AutoPublishAlias
属性AWS::Serverless::Function
时, Amazon SAM 会生成以下 Amazon CloudFormation 资源:AWS::Lambda::Alias
和AWS::Lambda::Version
。
AWS::Lambda::Alias
-
LogicalId
:<function‑LogicalId>
Alias<alias‑name>
是<alias‑name>
AutoPublishAlias
将被设置为的字符串。例如,如果设置为AutoPublishAlias
live
,则LogicalId
为:MyFunction
别名live
。可引用属性:
<function‑LogicalId>
.Alias AWS::Lambda::Version
-
LogicalId
:<function‑LogicalId>
Version<sha>
是在创建堆栈时生成的唯一哈希值。例如,<sha>
MyFunction
版本926eeb5ff1
。可引用属性:
<function‑LogicalId>
.Version
有关该AutoPublishAlias
属性的更多信息,请参阅的 “属性” 部分 AWS::Serverless::Function。
未指定 Role 属性
如果未指定 a AWS::Serverless::Function
的Role
属性,则 Amazon SAM 会生成AWS::IAM::Role
Amazon CloudFormation 资源。
AWS::IAM::Role
-
LogicalId
:<function‑LogicalId>
Role可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
DeploymentPreference 属性已指定
当指定了的DeploymentPreference
属性AWS::Serverless::Function
时, Amazon SAM 会生成以下资源 Amazon CloudFormation 资源:AWS::CodeDeploy::Application
和AWS::CodeDeploy::DeploymentGroup
。此外,如果未指定DeploymentPreference
对象的Role
属性, Amazon SAM 还会生成AWS::IAM::Role
Amazon CloudFormation 资源。
AWS::CodeDeploy::Application
-
LogicalId
:ServerlessDeploymentApplication
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
AWS::CodeDeploy::DeploymentGroup
-
LogicalId
:<function‑LogicalId>
DeploymentGroup可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源) AWS::IAM::Role
-
LogicalId
:CodeDeployServiceRole
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
指定了 Api 事件源
如果的Event
属性设置AWS::Serverless::Function
为Api
,但未指定该RestApiId
属性,则 Amazon SAM 生成AWS::ApiGateway::RestApi
Amazon CloudFormation 资源。
AWS::ApiGateway::RestApi
-
LogicalId
:ServerlessRestApi
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
已指定 HttpApi事件源
如果的Event
属性设置AWS::Serverless::Function
为HttpApi
,但未指定该ApiId
属性,则 Amazon SAM 生成AWS::ApiGatewayV2::Api
Amazon CloudFormation 资源。
AWS::ApiGatewayV2::Api
-
LogicalId
:ServerlessHttpApi
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
指定了流式事件源
将的Event
属性设置AWS::Serverless::Function
为其中一种流媒体类型时, Amazon SAM 会生成AWS::Lambda::EventSourceMapping
Amazon CloudFormation 资源。这适用于以下类型:DynamoDB
、Kinesis
、MQ
、MSK
和 SQS
。
AWS::Lambda::EventSourceMapping
-
LogicalId
:<function‑LogicalId><event‑LogicalId>
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
指定了事件桥(或事件总线)事件源
将的Event
属性设置AWS::Serverless::Function
为事件桥(或事件总线)类型之一时, Amazon SAM 会生成AWS::Events::Rule
Amazon CloudFormation 资源。这适用于以下类型:EventBridgeRule
、Schedule
和 CloudWatchEvents
。
AWS::Events::Rule
-
LogicalId
:<function‑LogicalId><event‑LogicalId>
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
已指定 IotRule事件源
当的Event
属性设置AWS::Serverless::Function
为 Io 时TRule, Amazon SAM 会生成AWS::IoT::TopicRule
Amazon CloudFormation 资源。
AWS::IoT::TopicRule
-
LogicalId
:<function‑LogicalId><event‑LogicalId>
可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源)
OnSuccess(或 OnFailure)属性是为亚马逊 SNS 事件指定的
如果指定了属性的属性AWS::Serverless::Function
的OnSuccess
(或OnFailure
)EventInvokeConfig
属性,且目标类型为,SNS
但未指定目标 ARN,则 Amazon SAM 生成以下 Amazon CloudFormation 资源:AWS::Lambda::EventInvokeConfig
和。DestinationConfig
AWS::SNS::Topic
AWS::Lambda::EventInvokeConfig
-
LogicalId
:<function‑LogicalId>
EventInvokeConfig可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源) AWS::SNS::Topic
-
LogicalId
:
(或<function‑LogicalId>
OnSuccessTopic
)<function‑LogicalId>
OnFailureTopic可引用属性:
<function‑LogicalId>
.DestinationTopic如果为 Amazon SNS 事件指定了
OnSuccess
和OnFailure
,为了区分生成的资源,必须使用LogicalId
。
OnSuccess(或 OnFailure)属性是为亚马逊 SQS 事件指定的
如果指定了属性的属性AWS::Serverless::Function
的OnSuccess
(或OnFailure
)EventInvokeConfig
属性,且目标类型为,SQS
但未指定目标 ARN,则 Amazon SAM 生成以下 Amazon CloudFormation 资源:AWS::Lambda::EventInvokeConfig
和。DestinationConfig
AWS::SQS::Queue
AWS::Lambda::EventInvokeConfig
-
LogicalId
:<function‑LogicalId>
EventInvokeConfig可引用的属性:N/A(必须使用
LogicalId
来引用此 Amazon CloudFormation 资源) AWS::SQS::Queue
-
LogicalId
:
(或<function‑LogicalId>
OnSuccessQueue
)<function‑LogicalId>
OnFailureQueue可引用属性:
<function‑LogicalId>
.DestinationQueue如果为 Amazon SQS 事件指定了
OnSuccess
和OnFailure
,为了区分生成的资源,必须使用LogicalId
。