AWS::Serverless::Function - AWS Serverless Application Model

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

AWS::Serverless::Function

AWS Lambda 関数、 AWS Identity and Access Management (IAM) 実行ロール、および関数をトリガーするイベントソースマッピングを作成します。

AWS::Serverless::Function リソースはMetadataリソース属性もサポートしているため、アプリケーションに必要なカスタムランタイムを構築する AWS SAM ように指示できます。カスタムランタイムの構築の詳細については、「でのカスタムランタイムを使用した Lambda 関数の構築 AWS SAM」を参照してください。

注記

にデプロイすると AWS CloudFormation、 は AWS SAM リソースを AWS CloudFormation リソース AWS SAM に変換します。詳細については、「AWS SAM 向けに生成された AWS CloudFormation リソース」を参照してください。

構文

AWS Serverless Application Model (AWS SAM) テンプレートでこのエンティティを宣言するには、次の構文を使用します。

プロパティ

Architectures

関数の命令セットアーキテクチャ。

このプロパティの詳細については、AWS Lambda デベロッパーガイドの「Lambda 命令セットアーキテクチャ」を参照してください。

有効な値: x86_64 または arm64 のいずれか。

タイプ: リスト

必須: いいえ

デフォルト: x86_64

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Architecturesプロパティに直接渡されます。

AssumeRolePolicyDocument

この関数 AssumeRolePolicyDocument 用に作成されたデフォルトRoleに を追加します。このプロパティが指定されていない場合、 は、この関数のデフォルトの引き受けロール AWS SAM を追加します。

タイプ : JSON

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは AWS::IAM::Role resource の AssumeRolePolicyDocument プロパティに似ています。 は、このプロパティをこの関数用に生成されたIAMロール AWS SAM に追加します。この関数にロールの Amazon リソースネーム (ARN) が指定されている場合、このプロパティは何もしません。

AutoPublishAlias

Lambda エイリアスの名前です。Lambda エイリアスの詳細については、AWS Lambda デベロッパーガイドの「Lambda 関数のエイリアス」を参照してください。このプロパティを使用する例については、「AWS SAM を使用したサーバーレスアプリケーションの段階的なデプロイ」を参照してください。

AWS SAM 生成 AWS::Lambda::Version および AWS::Lambda::Alias このプロパティが設定されている場合の リソース。このシナリオの詳細については、「AutoPublishAlias プロパティが指定されている」を参照してください。生成された AWS CloudFormation リソースの一般的な情報については、「」を参照してくださいAWS SAM 向けに生成された AWS CloudFormation リソース

型: 文字列

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

AutoPublishAliasAllProperties

新しい AWS::Lambda::Version が作成されるタイミングを指定します。true の場合、 Lambda 関数のプロパティが変更されると、新しい Lambda バージョンが作成されます。false の場合、次のプロパティのいずれかが変更された場合にのみ、新しい Lambda バージョンが作成されます。

  • EnvironmentMemorySizeSnapStart

  • Code プロパティの更新を伴う変更 (CodeDictImageUriInlineCode など)。

このプロパティでは AutoPublishAlias を定義する必要があります。

AutoPublishSha256 も指定されている場合、その動作は AutoPublishAliasAllProperties: true よりも優先されます。

タイプ: ブール

必須: いいえ

デフォルト値: false

AWS CloudFormation 互換性: このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

AutoPublishCodeSha256

使用した場合、CodeUri 値とともに機能し、新しい Lambda バージョンを発行する必要があるかどうかを判断します。このプロパティは、しばしば次のようなデプロイの問題を解決するために使用されます: Amazon S3 のロケーションに保存されているデプロイパッケージが更新済みの Lambda 関数コードを使用する新しいデプロイパッケージに置き換えられたものの (新しいデプロイパッケージが新しい Amazon S3 のロケーションにアップロードされていて、CodeUri が新しい場所に変更されるのと反対に)、CodeUri プロパティがそのまま変更されていない。

この問題は、次の特徴を持つ AWS SAM テンプレートによってマークされます。

このシナリオでは、AutoPublishCodeSha256 を更新することで新しい Lambda バージョンが正常に作成されます。ただし、Amazon S3 にデプロイされた新しい関数コードは認識されません。新しい関数コードを認識するには、Amazon S3 バケットのバージョニングを使用することを検討してください。Lambda 関数の Version プロパティを指定し、常に最新のデプロイパッケージを使用するようにバケットを設定します。

このシナリオで段階的なデプロイを正常にトリガーするには、AutoPublishCodeSha256 に一意の値を提供する必要があります。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

CodeSigningConfigArn

ARN の 。 AWS::Lambda::CodeSigningConfig リソース。この関数のコード署名を有効にするために使用されます。コード署名の詳細については、「AWS SAM アプリケーションのコード署名を設定する」を参照してください。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの CodeSigningConfigArnプロパティに直接渡されます。

CodeUri

関数のコード 以下のような値を設定できます。

  • 関数の Amazon S3 URI。例えば、s3://bucket-123456789/sam-app/1234567890abcdefg と指定します。

  • 関数へのローカルパス。例えば、hello_world/ と指定します。

  • FunctionCode オブジェクト。

注記

関数の Amazon S3 URIまたはFunctionCodeオブジェクトを指定する場合は、有効な Lambda デプロイパッケージ を参照する必要があります。

ローカルファイルパスを指定する場合は、 AWS SAM CLI デプロイ時にローカルファイルをアップロードします。詳細については、「デプロイ時にローカルファイル AWS SAM をアップロードする方法」を参照してください。

CodeUri プロパティで組み込み関数を使用すると、 AWS SAM は値を正しく解析できなくなります。代わりに AWS::LanguageExtensions transform の使用を検討してください。

タイプ: [ 文字列 | FunctionCode ]

必須: 条件的。PackageTypeZip に設定されている場合、CodeUri または InlineCode のいずれかが必須です。

AWS CloudFormation 互換性 : このプロパティは、AWS::Lambda::Functionリソースの Codeプロパティに似ています。ネストされた Amazon S3 プロパティには異なる名前が付けられています。

DeadLetterQueue

Lambda が処理できないイベントを送信する Amazon Simple Notification Service (Amazon SNS) トピックまたは Amazon Simple Queue Service (Amazon SQS) キューを設定します。デッドレターキュー機能の詳細については、「AWS Lambda デベロッパーガイド」の「デッドレターキュー」を参照してください。

注記

Lambda 関数のイベントソースが Amazon SQSキューの場合は、Lambda 関数ではなく、ソースキューにデッドレターキューを設定します。関数用に設定するデッドレターキューは、イベントソースキューではなく、関数の非同期呼び出しキューに使用されます。

タイプ : Map | DeadLetterQueue

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの DeadLetterConfigプロパティに似ています。 AWS CloudFormation タイプ は から派生しますがTargetArn、 では AWS SAM タイプを と一緒に渡す必要がありますTargetArn

DeploymentPreference

段階的な Lambda デプロイを有効にする設定です。

DeploymentPreference オブジェクトが指定されている場合、 は AWS SAM を作成します。 AWS::CodeDeploy::Application と呼ばれる ServerlessDeploymentApplication (スタックごとに 1 つ)、 AWS::CodeDeploy::DeploymentGroup <function-logical-id>DeploymentGroupと呼ばれ、 AWS::IAM::Role という名前の CodeDeployServiceRole

タイプ : DeploymentPreference

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

その他の参照資料: このプロパティの詳細については、「AWS SAM を使用したサーバーレスアプリケーションの段階的なデプロイ」を参照してください。

Description

関数の説明です。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Descriptionプロパティに直接渡されます。

Environment

ランタイム環境の設定です。

タイプ: Environment

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Environmentプロパティに直接渡されます。

EphemeralStorage

/tmp の Lambda 関数で使用可能なディスク容量を MB 単位で指定するオブジェクト。

このプロパティの詳細については、「AWS Lambda デベロッパーガイド」の「Lambda 実行環境」を参照してください。

タイプ : EphemeralStorage

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの EphemeralStorageプロパティに直接渡されます。

EventInvokeConfig

Lambda 関数でのイベントの呼び出し設定を説明するオブジェクトです。

タイプ : EventInvokeConfiguration

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

Events

この関数をトリガーするイベントを指定します。イベントは、1 つのタイプと、そのタイプに依存する一連のプロパティで構成されます。

タイプ : EventSource

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

FileSystemConfigs

Amazon Elastic File System (Amazon EFS) ファイルシステムの接続設定を指定するFileSystemConfigオブジェクトのリスト。

テンプレートに が含まれている場合 AWS::EFS::MountTarget リソースでは、マウントターゲットが関数の前に作成または更新されるように、DependsOnリソース属性を指定する必要があります。

タイプ: リスト

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの FileSystemConfigsプロパティに直接渡されます。

FunctionName

関数の名前です。名前を指定しない場合は、一意の名前が生成されます。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの FunctionNameプロパティに直接渡されます。

FunctionUrlConfig

関数 を記述するオブジェクトURL。関数URLは、関数を呼び出すために使用できるHTTPSエンドポイントです。

詳細については、「 デベロッパーガイド」の「関数URLs」を参照してください。 AWS Lambda

タイプ: FunctionUrlConfig

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

Handler

実行を開始するために呼び出されるコード内の関数です。このプロパティが必要になるのは、PackageType プロパティが Zip に設定されている場合のみです。

: 文字列

必須: 条件に応じて異なります

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Handlerプロパティに直接渡されます。

ImageConfig

Lambda のコンテナイメージ設定に使用されるオブジェクトです。詳細については、AWS Lambda デベロッパーガイドの「Lambda でのコンテナイメージの使用」を参照してください。

タイプ : ImageConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの ImageConfigプロパティに直接渡されます。

ImageUri

Lambda 関数URIのコンテナイメージの Amazon Elastic Container Registry (Amazon ECR) リポジトリの 。このプロパティは、PackageType プロパティが Image に設定されている場合にのみ適用され、それ以外の場合は無視されます。詳細については、AWS Lambda デベロッパーガイドの「Lambda でのコンテナイメージの使用」を参照してください。

注記

PackageType プロパティが に設定されている場合はImageImageUriが必要です。または、 AWS SAM テンプレートファイルに必要なMetadataエントリを使用してアプリケーションを構築する必要があります。詳細については、「AWS SAM を使用したデフォルトのビルド」を参照してください。

必要な Metadata エントリを使用してアプリケーションを構築することは、ImageUri よりも優先されるので、両方を指定すれば ImageUri は無視されます。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::FunctionCodeデータ型の ImageUri プロパティに直接渡されます。

InlineCode

テンプレートに直接記述された Lambda 関数コードです。このプロパティは、PackageType プロパティが Zip に設定されている場合にのみ適用され、それ以外の場合は無視されます。

注記

PackageTypeZip (デフォルト) に設定されていると、CodeUri または InlineCode のいずれかが必要になります。

型: 文字列

必須: 条件に応じて異なります

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::FunctionCodeデータ型の ZipFile プロパティに直接渡されます。

KmsKeyArn

Lambda が関数ARNの環境変数の暗号化と復号に使用する AWS Key Management Service (AWS KMS) キーの 。

型: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの KmsKeyArnプロパティに直接渡されます。

Layers

この関数LayerVersionARNsが使用する のリスト。ここで指定されている順序は、Lambda 関数の実行時にそれらがインポートされる順序です。

タイプ: リスト

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Layersプロパティに直接渡されます。

LoggingConfig

関数の Amazon CloudWatch Logs 設定。

タイプ: LoggingConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの LoggingConfigプロパティに直接渡されます。

MemorySize

関数の各呼び出しに割り当てられるメモリのサイズ (MB) です。

タイプ: 整数

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの MemorySizeプロパティに直接渡されます。

PackageType

Lambda 関数のデプロイパッケージタイプです。詳細については、AWS Lambda デベロッパーガイドの「Lambda デプロイパッケージ」を参照してください。

注意:

1. このプロパティが Zip (デフォルト) に設定されている場合は、CodeUri または InlineCode が適用され、ImageUri は無視されます。

2. このプロパティが Image に設定されている場合は、ImageUri のみが適用され、CodeUriInlineCode は無視されます。関数のコンテナイメージを保存するために必要な Amazon ECRリポジトリは、 によって自動的に作成できます。 AWS SAM CLI。 詳細については、「」を参照してくださいsam deploy

有効な値: Zip または Image

タイプ:文字列

必須: いいえ

デフォルト: Zip

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの PackageTypeプロパティに直接渡されます。

PermissionsBoundary

この関数の実行ロールに使用するアクセス許可境界ARNの 。このプロパティは、ユーザーのためにロールが生成される場合にのみ機能します。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::IAM::Roleリソースの PermissionsBoundaryプロパティに直接渡されます。

Policies

この関数の許可ポリシー。ポリシーは、関数のデフォルト AWS Identity and Access Management (IAM) 実行ロールに追加されます。

このプロパティは、単一の値または値のリストを受け入れます。使用できる値は次のとおりです。

注記

Role プロパティを設定する場合、このプロパティは無視されます。

タイプ: 文字列 | リスト | マップ

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは、AWS::IAM::Roleリソースの Policiesプロパティに似ています。

PropagateTags

AWS::Serverless::Function が生成したリソースに Tags プロパティからのタグを渡すかどうかを指定します。True を指定して、生成されたリソースにタグを伝播します。

タイプ: ブール

必須: いいえ

デフォルト: False

AWS CloudFormation 互換性 : このプロパティは に一意 AWS SAM であり、 AWS CloudFormation 同等の はありません。

ProvisionedConcurrencyConfig

関数のエイリアスのプロビジョニングされた同時実行設定です。

注記

ProvisionedConcurrencyConfig を指定できるのは、AutoPublishAlias が設定されている場合のみです。それ以外の場合は、エラーが発生します。

タイプ: ProvisionedConcurrencyConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Aliasリソースの ProvisionedConcurrencyConfigプロパティに直接渡されます。

ProvisionedConcurrencyConfig

関数のエイリアスのプロビジョニングされた同時実行設定です。

注記

ProvisionedConcurrencyConfig を指定できるのは、AutoPublishAlias が設定されている場合のみです。それ以外の場合は、エラーが発生します。

タイプ: ProvisionedConcurrencyConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Aliasリソースの ProvisionedConcurrencyConfigプロパティに直接渡されます。

RecursiveLoop

関数の再帰的ループ検出設定のステータス。

この値が Allow に設定されている場合、Lambda が再帰的ループの一部として呼び出されている関数を検出しても、いずれのアクションも実行されません。

この値が Terminate に設定されている場合、Lambda が再帰的ループの一部として呼び出されている関数を検出すると、その関数の呼び出しが停止され通知が送信されます。

型: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの RecursiveLoopプロパティに直接渡されます。

ReservedConcurrentExecutions

関数用に予約する同時実行の最大数です。

このプロパティの詳細については、AWS Lambda デベロッパーガイドの「Lambda 関数スケーリング」を参照してください。

タイプ: 整数

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの ReservedConcurrentExecutionsプロパティに直接渡されます。

Role

この関数の実行IAMロールとして使用するロールARNの 。

型: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Roleプロパティに似ています。これは では必要です AWS CloudFormation が、 では必須ではありません AWS SAM。ロールが指定されていない場合は、<function-logical-id>Role の論理 ID を持つロールが作成されます。

RolePath

関数IAMの実行ロールへのパス。

このプロパティは、ユーザーのためにロールが生成される場合にのみ機能します。Role プロパティでロールが指定されている場合は使用しないでください。

型: 文字列

必須: 条件に応じて異なります

AWS CloudFormation 互換性: このプロパティは、AWS::IAM::Roleリソースの Pathプロパティに直接渡されます。

Runtime

関数のランタイムの識別子です。このプロパティが必要になるのは、PackageType プロパティが Zip に設定されている場合のみです。

注記

このプロパティのprovided識別子を指定する場合は、Metadataリソース属性を使用して、この関数に必要なカスタムランタイムを構築する AWS SAM ように指示できます。カスタムランタイムの構築の詳細については、「でのカスタムランタイムを使用した Lambda 関数の構築 AWS SAM」を参照してください。

: 文字列

必須: 条件に応じて異なります

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Runtimeプロパティに直接渡されます。

RuntimeManagementConfig

ランタイム環境の更新、ロールバック動作、特定のランタイムバージョンの選択など、Lambda 関数のランタイム管理オプションを設定します。詳細については、「AWS Lambda デベロッパーガイド」の「Lambda ランタイム更新」を参照してください。

タイプ : RuntimeManagementConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの RuntimeManagementConfigプロパティに直接渡されます。

SnapStart

新しい Lambda 関数バージョンのスナップショットを作成します。スナップショットは、すべての依存関係を含む、初期化された関数のキャッシュされた状態です。関数は一度だけ初期化され、キャッシュされた状態は将来の すべての呼び出しで再利用されるため、関数の初期化が必要な回数が減ることでアプリケーションのパフォーマンスが向上します。詳細については、「 AWS Lambda デベロッパーガイド」の「Lambda による起動パフォーマンスの向上SnapStart」を参照してください。

タイプ : SnapStart

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの SnapStartプロパティに直接渡されます。

SourceKmsKeyArn

顧客のZIP関数コードを暗号化するARNために使用されるKMSキーを表します。

型: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::FunctionCodeデータ型の SourceKmsKeyArn プロパティに直接渡されます。

Tags

この関数に追加されるタグを指定するマップ (文字列対文字列) です。タグの有効なキーと値の詳細については、「AWS Lambda デベロッパーガイド」の「タグのキーと値の要件」を参照してください。

スタックが作成されると、この Lambda 関数と、この関数用に生成されるデフォルトのロールにlambda:createdBy:SAMタグ AWS SAM が自動的に追加されます。

タイプ: マップ

必須: いいえ

AWS CloudFormation 互換性 : このプロパティは、AWS::Lambda::Functionリソースの Tagsプロパティに似ています。の Tagsプロパティ AWS SAM は、キーと値のペアで構成されます ( AWS CloudFormation このプロパティはTagオブジェクトのリストで構成されます)。また、この Lambda 関数と、この関数に対して生成されるデフォルトのロールにlambda:createdBy:SAMタグ AWS SAM を自動的に追加します。

Timeout

関数が停止されるまでの最大実行時間 (秒) です。

タイプ: 整数

必須: いいえ

デフォルト: 3

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの Timeoutプロパティに直接渡されます。

Tracing

関数の X-Ray トレーシングモードを指定する文字列です。

  • Active – 関数の X-Ray トレーシングを有効にします。

  • Disabled – 関数の X-Ray を無効にします。

  • PassThrough – 関数の X-Ray トレーシングを有効にします。サンプリングデシジョンはダウンストリームサービスに委任されます。

Active または PassThrough が指定されており、Role プロパティが設定されていない場合、 AWS SAM は、ユーザー用に作成する Lambda 実行ロールに arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess ポリシーを追加します。

X-Ray の詳細については、AWS Lambda 「 デベロッパーガイド」のAWS Lambda 「 で を使用する AWS X-Ray」を参照してください。

有効な値: [Active|Disabled|PassThrough]

型: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの TracingConfigプロパティに似ています。

VersionDescription

新しい Lambda バージョンリソースに追加される Description フィールドを指定します。

: 文字列

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Versionリソースの Descriptionプロパティに直接渡されます。

VpcConfig

この関数が仮想プライベートクラウド () 内のプライベートリソースにアクセスできるようにする設定VPC。

タイプ: VpcConfig

必須: いいえ

AWS CloudFormation 互換性: このプロパティは、AWS::Lambda::Functionリソースの VpcConfigプロパティに直接渡されます。

戻り値

参照番号

このリソースの論理 ID が Ref 組み込み関数に提供されると、基盤となる Lambda 関数のリソース名が返されます。

Ref 関数の使用方法の詳細については、「AWS CloudFormation ユーザーガイド」の「Ref」を参照してください。

Fn::GetAtt

Fn::GetAtt は、このタイプの指定された属性の値を返します。利用可能な属性とサンプル戻り値は以下のとおりです。

Fn::GetAtt の使用の詳細については、「AWS CloudFormation ユーザーガイド」の「Fn::GetAtt」を参照してください。

Arn

基盤となる Lambda 関数ARNの 。

シンプルな関数

以下は、AWS::Serverless::Function パッケージタイプ (デフォルト) の Zip リソースと、Amazon S3 バケット内にある関数コードの基本的な例です。

YAML

Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://bucket-name/key-name

関数プロパティの例

以下は、InlineCodeLayersTracingPoliciesAmazon EFS、および Api イベントソースを使用する、AWS::Serverless::Function パッケージタイプ (デフォルト) の Zip の例です。

YAML

Type: AWS::Serverless::Function DependsOn: MyMountTarget # This is needed if an AWS::EFS::MountTarget resource is declared for EFS Properties: Handler: index.handler Runtime: python3.9 InlineCode: | def handler(event, context): print("Hello, world!") ReservedConcurrentExecutions: 30 Layers: - Ref: MyLayer Tracing: Active Timeout: 120 FileSystemConfigs: - Arn: !Ref MyEfsFileSystem LocalMountPath: /mnt/EFS Policies: - AWSLambdaExecute - Version: '2012-10-17' Statement: - Effect: Allow Action: - s3:GetObject - s3:GetObjectACL Resource: 'arn:aws:s3:::amzn-s3-demo-bucket/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get

ImageConfig 例

以下は、Image パッケージタイプの Lambda 関数向けの ImageConfig の例です。

YAML

HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri: account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-name ImageConfig: Command: - "app.lambda_handler" EntryPoint: - "entrypoint1" WorkingDirectory: "workDir"

RuntimeManagementConfig 例

現在の動作に従ってランタイム環境を更新するように設定された Lambda 関数:

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: Auto

関数が更新されたときにランタイム環境を更新するように設定された Lambda 関数:

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: FunctionUpdate

ランタイム環境を手動で更新するように構成された Lambda 関数:

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e UpdateRuntimeOn: Manual

SnapStart 例

将来のバージョンで SnapStart がオンになっている Lambda 関数の例:

TestFunc Type: AWS::Serverless::Function Properties: ... SnapStart: ApplyOn: PublishedVersions