AWS SAM 模板元数据分节属性 - AWS Serverless Application Model
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

AWS SAM 模板元数据分节属性

AWS::ServerlessRepo::Application 是元数据密钥,可用于指定要发布到 AWS Serverless Application Repository.

注意

AWS CloudFormation 内在功能 不受 AWS::ServerlessRepo::Application 元数据密钥。

Properties

此表提供了有关 Metadata 部分 AWS SAM 模板。此部分是将应用程序发布到 AWS Serverless Application Repository 使用 AWS SAM CLI。

Property Type 必填 Description
Name String TRUE

应用程序的名称。

最小长度 = 1。最大长度 = 140。

模式:"[a-zA-Z0-9\\-]+";

Description String TRUE

关于应用程序的描述。

最小长度 = 1。最大长度 = 256。

Author String TRUE

发布应用程序的作者的姓名。

最小长度 = 1。最大长度 = 127。

模式:"^[a-z0-9](([a-z0-9]|-(?!-))*[a-z0-9])?$";

SpdxLicenseId String FALSE 有效的许可证标识符。要查看有效的许可证标识符列表,请参阅 SPDX许可证列表软件包数据交换(SPDX) 网站。
LicenseUrl String FALSE

对本地许可证文件的引用,或 Amazon S3 链接到与 spdxLicenseID 价值。

一种 AWS SAM 尚未使用进行打包的模板文件 sam package 命令可以引用此属性的本地文件。但是,要使用 sam publish 命令,此属性必须是对 Amazon S3 桶。

最大尺寸: 5MB。

您必须为此属性提供一个值,才能使您的应用程序变为公有的。请注意,在应用程序发布后,您无法更新此属性。因此,要向应用程序添加许可证,您必须先将其删除,或者发布具有不同名称的新应用程序。

ReadmeUrl String FALSE

对本地自述文件或 Amazon S3 链接至自述文件,该文件包含有关应用程序及其工作方式的详细说明。

一种 AWS SAM 尚未使用进行打包的模板文件 sam package 命令可以引用此属性的本地文件。但是,要使用 sam publish 命令,此属性必须是对 Amazon S3 桶。

最大尺寸: 5MB。

Labels String FALSE

改善搜索结果中应用程序发现的标签。

最小长度 = 1。最大长度 = 127。最大标签数: 10.

模式:"^[a-zA-Z0-9+\\-_:\\/@]+$";

HomePageUrl String FALSE 包含有关应用程序的更多信息的URL—例如,您的 GitHub 应用程序的存储库。
SemanticVersion String FALSE

应用程序的语义版本。有关语义版本控制规范,请参见 语义版本控制 网站。

您必须为此属性提供一个值,才能使您的应用程序变为公有的。

SourceCodeUrl String FALSE 指向应用程序源代码的公共存储库的链接。

使用案例

本部分列出了发布应用程序的用例,以及 Metadata 为该使用案例处理的属性。为以下项的属性: 已为给定的用例列出。

  • 创建新应用程序 – 如果在 AWS Serverless Application Repository 具有帐户的匹配名称。

    • Name

    • SpdxLicenseId

    • LicenseUrl

    • Description

    • Author

    • ReadmeUrl

    • Labels

    • HomePageUrl

    • SourceCodeUrl

    • SemanticVersion

    • 的 AWS SAM 模板(例如,任何活动来源、资源和Lambda功能代码)

     

  • 创建应用程序版本 – 如果 AWS Serverless Application Repository 具有帐户的匹配名称 是 SemanticVersion 更改。

    • Description

    • Author

    • ReadmeUrl

    • Labels

    • HomePageUrl

    • SourceCodeUrl

    • SemanticVersion

    • 的 AWS SAM 模板(例如,任何活动来源、资源和Lambda功能代码)

     

  • 更新应用程序 – 如果 AWS Serverless Application Repository 具有帐户的匹配名称 是 SemanticVersion 不是 更改。

    • Description

    • Author

    • ReadmeUrl

    • Labels

    • HomePageUrl

Example

以下是一个示例 Metadata 部分:

Metadata: AWS::ServerlessRepo::Application: Name: my-app Description: hello world Author: user1 SpdxLicenseId: Apache-2.0 LicenseUrl: LICENSE.txt ReadmeUrl: README.md Labels: ['tests'] HomePageUrl: https://github.com/user1/my-app-project SemanticVersion: 0.0.1 SourceCodeUrl: https://github.com/user1/my-app-project