翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS::Serverless::LayerVersion
Lambda 関数に必要なライブラリまたはランタイムコードが含まれる Lambda LayerVersion を作成します。
AWS::Serverless::LayerVersion リソースは Metadata リソース属性もサポートするため、アプリケーションに含まれるレイヤーを構築するよう AWS SAM に指示できます。レイヤーの構築に関する詳細については、「での Lambda レイヤーの構築 AWS SAM」を参照してください。
重要な注意点: UpdateReplacePolicy リソース属性が CloudFormation でリリースされたため、AWS::Lambda::LayerVersion(推奨) には AWS::Serverless::LayerVersion と同じ利点があります。
サーバーレス LayerVersion が変換されると、SAM はリソースの論理 ID も変換し、リソースの更新時に CloudFormation によって古い LayerVersion が自動的に削除されないようにします。
注記
AWS CloudFormation にデプロイすると、AWS SAM は、AWS SAM リソースを CloudFormation リソースに変換します。詳細については、「AWS SAM 向けに生成された CloudFormation リソース」を参照してください。
構文
AWS Serverless Application Model (AWS SAM) テンプレートでこのエンティティを宣言するには、以下の構文を使用します。
YAML
Type: AWS::Serverless::LayerVersion Properties: CompatibleArchitectures:ListCompatibleRuntimes:ListContentUri:String | LayerContentDescription:StringLayerName:StringLicenseInfo:StringPublishLambdaVersion:BooleanRetentionPolicy:String
プロパティ
-
CompatibleArchitectures -
レイヤバージョンでサポートされる命令セットアーキテクチャを指定します。
このプロパティの詳細については、AWS Lambda デベロッパーガイドの「Lambda 命令セットアーキテクチャ」を参照してください。
有効な値:
x86_64、arm64タイプ: リスト
必須: いいえ
[Default] (デフォルト):
x86_64CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのCompatibleArchitecturesプロパティに直接渡されます。 -
CompatibleRuntimes -
この LayerVersion との互換性のあるランタイムのリストです。
タイプ: リスト
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのCompatibleRuntimesプロパティに直接渡されます。 -
ContentUri -
Amazon S3 URI、ローカルフォルダーへのパス、またはレイヤーコードの LayerContent オブジェクトです。
Amazon S3 URI または LayerContent オブジェクトが提供されている場合、参照される Amazon S3 オブジェクトは、Lambda レイヤーのコンテンツが含まれる有効な ZIP アーカイブである必要があります。
ローカルフォルダへのパスが提供されている場合は、コンテンツが適切に変換されるようにするために、sam build が含まれ、その後に sam deploy または sam package が続くワークフローをテンプレートが実行する必要があります。デフォルトで、相対パスは AWS SAM テンプレートの場所を基準にして解決されます。
タイプ: 文字列 | LayerContent
必須: はい
CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのContentプロパティに似ています。ネストされた Amazon S3 プロパティには異なる名前が付けられています。 -
Description -
このレイヤーの説明です。
タイプ: 文字列
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのDescriptionプロパティに直接渡されます。 -
LayerName -
レイヤーの名前または Amazon リソースネーム (ARN) です。
タイプ: 文字列
必須: いいえ
デフォルト: リソースの論理 ID
CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのLayerNameプロパティに似ています。名前を指定しない場合は、リソースの論理 ID が名前として使用されます。 -
LicenseInfo -
この LayerVersion のライセンスに関する情報です。
タイプ: 文字列
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::Lambda::LayerVersionリソースのLicenseInfoプロパティに直接渡されます。 -
PublishLambdaVersion -
参照される
LayerVersionリソースに変更があるたびに新しい Lambda バージョンを作成するオプトインプロパティ。接続された Lambda 関数 でAutoPublishAliasとAutoPublishAliasAllPropertiesを使用して有効にすると、LayerVersionリソースに行われる変更ごとに新しい Lambda バージョンが作成されます。タイプ: ブール
必須: いいえ
CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。
-
RetentionPolicy -
このプロパティは、リソースを削除するときに
LayerVersionの古いバージョンを保持するか削除するかを指定します。リソースを更新または置き換えるときにLayerVersionの古いバージョンを保持する必要がある場合は、UpdateReplacePolicy属性を有効にする必要があります。これを行う方法については、「AWS CloudFormation ユーザーガイド」の 「UpdateReplacePolicy属性」を参照してください。有効な値:
RetainまたはDelete型: 文字列
必須: いいえ
CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。
その他の注意点:
Retain指定すると、AWS SAM がDeletionPolicy: Retainの AWS SAM でサポートされているリソース属性 を変換されたAWS::Lambda::LayerVersionリソースに追加します。
戻り値
参照番号
このリソースの論理 ID が Ref 組み込み関数に提供されると、基盤となる Lambda LayerVersion のリソース ARN が返されます。
Ref 関数の使用方法の詳細については、AWS CloudFormation ユーザーガイドの「Ref」を参照してください。
例
LayerVersionExample
LayerVersion の例
YAML
Properties: LayerName: MyLayer Description: Layer description ContentUri: 's3://sam-s3-demo-bucket/my-layer.zip' CompatibleRuntimes: - nodejs10.x - nodejs12.x LicenseInfo: 'Available under the MIT-0 license.' RetentionPolicy: Retain