翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS SAM でサポートされているリソース属性
リソース属性は、追加の動作と関係性を制御するために AWS SAM と CloudFormation のリソースに追加できる属性です。リソース属性の詳細については、AWS CloudFormation ユーザーガイドの「Resource Attribute Reference」を参照してください。
AWS SAM は、 によって定義されるリソース属性のサブセットをサポートします。CloudFormationサポートされているリソース属性には、対応する AWS SAM リソースから生成されたベース CloudFormation リソースのみにコピーされるものもあれば、対応する AWS SAM リソースから生成されたすべての CloudFormation リソースにコピーされるものもあります。対応する AWS SAM から生成された CloudFormation リソースの詳細については、「AWS SAM 向けに生成された CloudFormation リソース」を参照してください。
以下の表は、AWS SAM がサポートするリソース属性を要約したもので、下記の「例外」が適用されます。
| リソース属性 | 送信先で生成されるリソース |
|---|---|
|
Metadata 1、2 |
生成されたベース CloudFormation リソースのみ。AWS SAM リソースとベース CloudFormation リソース間のマッピングについては、「生成された CloudFormation リソースのシナリオ」を参照してください。 |
|
対応する AWS SAM リソースから生成されたすべての CloudFormation リソース。生成された CloudFormation リソースのシナリオについては、「生成された CloudFormation リソースのシナリオ」を参照してください。 |
注意:
-
AWS::Serverless::FunctionリソースタイプとのMetadataリソース属性の使用に関する詳細については、「AWS SAM でのカスタムランタイムを使用した Lambda 関数の構築」を参照してください。 -
AWS::Serverless::LayerVersionリソースタイプとのMetadataリソース属性の使用に関する詳細については、「での Lambda レイヤーの構築 AWS SAM」を参照してください。
例外
前述のリソース属性ルールには、いくつかの例外があります。
-
AWS::Lambda::LayerVersionについては、AWS SAM 限定のカスタムフィールドRetentionPolicyが、生成された CloudFormation リソースのDeletionPolicyを設定します。この設定は、DeletionPolicy自体よりも優先されます。どちらも設定されていない場合、DeletionPolicyはデフォルトでRetainに設定されます。 -
AWS::Lambda::Versionについては、DeletionPolicyが指定されていない場合のデフォルトはRetainです。 -
サーバーレス関数に
DeploymentPreferencesが指定されているシナリオでは、以下の生成された CloudFormation リソースにリソース属性がコピーされません。-
AWS::CodeDeploy::Application -
AWS::CodeDeploy::DeploymentGroup -
このシナリオ用に作成された、
CodeDeployServiceRoleという名前のAWS::IAM::Role
-
-
暗黙的に作成された API イベントソースを伴う複数の関数が AWS SAM テンプレートに含まれている場合、これらの関数は生成された
AWS::ApiGateway::RestApiリソースを共有します。このシナリオでは、関数に異なるリソース属性がある場合、生成されたAWS::ApiGateway::RestApiリソースに対し、AWS SAM が以下の優先リストに従ってリソース属性をコピーします。-
UpdateReplacePolicy:-
Retain -
Snapshot -
Delete
-
-
DeletionPolicy:-
Retain -
Delete
-
-