

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS SAM テンプレートメタデータセクションのプロパティ
<a name="serverless-sam-template-publishing-applications-metadata-properties"></a>

`AWS::ServerlessRepo::Application` は、 AWS Serverless Application Repositoryに公開するアプリケーション情報を指定するために使用できるメタデータキーです。

**注記**  
CloudFormation [組み込み関数](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html)は、`AWS::ServerlessRepo::Application`メタデータキーではサポートされていません。

## プロパティ
<a name="serverless-sam-template-publishing-applications-metadata-properties-table"></a>

この表は、 AWS SAM テンプレートの `Metadata`セクションのプロパティに関する情報を示しています。このセクションは、 AWS Serverless Application Repository を使用してアプリケーションを に発行するために必要です AWS SAM CLI。


****  

| プロパティ | タイプ | 必須 | 説明 | 
| --- | --- | --- | --- | 
| Name | 文字列 | 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 | 有効なライセンス識別子。有効なライセンス識別子のリストを確認するには、Software Package Data Exchange (SPDX) ウェブサイトの「[SPDX License List](https://spdx.org/licenses/)」を参照してください。 | 
| LicenseUrl | String | FALSE |  アプリケーションの spdxLicenseID 値に一致する、ローカルライセンスファイルへの参照、またはライセンスファイルへの Amazon S3 リンク。 `sam package` コマンドを使用してパッケージ化されていない AWS SAM テンプレートファイルには、このプロパティのローカルファイルへの参照を含めることができます。`sam publish` コマンドを使用してアプリケーションを公開するには、このプロパティが Amazon S3 バケットへの参照である必要があります。 最大サイズ: 5 MB。 アプリケーションをパブリックにするには、このプロパティに値を指定する必要があります。アプリケーションが公開された後は、このプロパティを更新できないことに注意してください。このため、アプリケーションにライセンスを追加するには、まずライセンスを削除する、または別の名前で新しいアプリケーションを公開する必要があります。  | 
| ReadmeUrl | String | FALSE |  アプリケーションとその仕組みに関するより詳細な説明が含まれたローカル readme ファイルへの参照、またはその readme ファイルへの Amazon S3 リンク。 `sam package` コマンドを使用してパッケージ化されていない AWS SAM テンプレートファイルには、このプロパティのローカルファイルへの参照を含めることができます。`sam publish` コマンドを使用して公開するには、このプロパティが Amazon S3 バケットへの参照である必要があります。 最大サイズ: 5 MB。  | 
| Labels | String | FALSE |  検索結果でアプリケーションを発見しやすくするラベル。 最小長: 1 最大長 = 127。ラベルの最大数:10。 パターン: `"^[a-zA-Z0-9+\\-_:\\/@]+$";`  | 
| HomePageUrl | String | FALSE | アプリケーションに関する詳細情報が含まれた URL。例えば、アプリケーションの GitHub リポジトリの場所などです。 | 
| SemanticVersion | String | FALSE |  アプリケーションのセマンティックバージョンです。セマンティックバージョニングの仕様については、「[セマンティックバージョニング](https://semver.org/)」のウェブサイトを参照してください。 アプリケーションをパブリックにするには、このプロパティに値を指定する必要があります。  | 
| SourceCodeUrl | String | FALSE | アプリケーションのソースコードを含むパブリックリポジトリへのリンク。 | 

## ユースケース
<a name="serverless-sam-template-publishing-applications-metadata-properties-cases"></a>

このセクションでは、アプリケーション公開のユースケースと、そのユースケースで処理される `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`

## 例
<a name="serverless-sam-template-publishing-applications-metadata-properties-example"></a>

以下は、`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
```