本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS::Serverless::Application
从Amazon Serverless Application Repository
语法
要在您的中声明此实体Amazon Serverless Application Model(Amazon SAM) 模板,请使用以下语法。
YAML
Type: AWS::Serverless::Application Properties: Location:String | ApplicationLocationObjectNotificationARNs:ListParameters:MapTags:MapTimeoutInMinutes:Integer
属性
-
Location -
嵌套应用程序的模板 URL、文件路径或位置对象。
如果提供了模板 URL,则它必须遵循CloudFormation TemplateUrl 文档并包含有效的 CloudFormation 或 SAM 模板。网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的ApplicationLocationObject可用于指定已发布到Amazon Serverless Application Repository.
如果提供了本地文件路径,则模板必须通过包含
sam deploy要么sam package命令,以便正确转换应用程序。类型:字符串 |应用位置对象
必需:是
Amazon CloudFormation兼容性:此属性类似于
TemplateURL的财产AWS::CloudFormation::Stack资源。CloudFormation 版本不需要ApplicationLocationObject从中检索应用程序Amazon Serverless Application Repository. -
NotificationARNs -
将发送有关堆栈事件的通知的现有 Amazon SNS 主题的列表。
类型:List
必需:否
Amazon CloudFormation兼容性:此属性将直接传递给
NotificationARNs的财产AWS::CloudFormation::Stack资源。 -
Parameters -
应用程序参数值。
类型:Map
必需:否
Amazon CloudFormation兼容性:此属性将直接传递给
Parameters的财产AWS::CloudFormation::Stack资源。 -
Tags -
一个映射(字符串到字符串),指定要添加到此应用程序的标签。键和值只能包含字母数字字字字符。密钥的长度可以为 1 到 127 个 Unicode 字符并且不能带有前缀 aws:。该值的长度可以为 1 到 255 个 Unicode 字符。
类型:Map
必需:否
Amazon CloudFormation兼容性:此属性类似于
Tags的财产AWS::CloudFormation::Stack资源。SAM 中的 Tags 属性由键:Value 对组成;在 CloudFormation 中,它由标签对象的列表组成。创建堆栈时,SAM 将自动添加lambda:createdBy:SAM标签到此应用程序。此外,如果此应用程序来自Amazon Serverless Application Repository,那么 SAM 还会自动添加两个额外的标签serverlessrepo:applicationId:和ApplicationIdserverlessrepo:semanticVersion:.SemanticVersion -
TimeoutInMinutes -
Amazon CloudFormation 等待嵌套堆栈达到
CREATE_COMPLETE状态的时间长度(以分钟为单位)。默认值为无超时。在 Amazon CloudFormation 检测到嵌套堆栈已达到CREATE_COMPLETE状态时,它在父堆栈中将嵌套堆栈资源标记为CREATE_COMPLETE,然后继续创建父堆栈。如果在嵌套堆栈达到CREATE_COMPLETE之前超时期限过期,则 Amazon CloudFormation 将嵌套堆栈标记为失败并回滚嵌套堆栈和父堆栈。类型:整数
必需:否
Amazon CloudFormation兼容性:此属性将直接传递给
TimeoutInMinutes的财产AWS::CloudFormation::Stack资源。
返回值
Ref
当该资源的逻辑 ID 提供给Ref内在函数,它返回底层的资源名称AWS::CloudFormation::Stack资源。
有关如何使用的更多信息Ref函数,请参阅Ref中的Amazon CloudFormation用户指南.
Fn::GetAtt
Fn::GetAtt 返回一个此类型指定属性的值。以下为可用属性和示例返回值。
有关使用的更多信息Fn::GetAtt,请参阅Fn::GetAtt中的Amazon CloudFormation用户指南.
示例
SAR 申请
使用无服务器应用程序存储库中的模板的应用程序
YAML
Type: AWS::Serverless::Application Properties: Location: ApplicationId: 'arn:aws:serverlessrepo:us-east-1:012345678901:applications/my-application' SemanticVersion: 1.0.0 Parameters: StringParameter: parameter-value IntegerParameter: 2
普通应用程序
来自 S3 网址的应用程序
YAML
Type: AWS::Serverless::Application Properties: Location: https://s3.amazonaws.com/demo-bucket/template.yaml