本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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 SAM 轉換為 AWS CloudFormation 資源。如需詳細資訊,請參閱產生的 AWS CloudFormation 資源 AWS SAM。
語法
若要在 AWS Serverless Application Model (AWS SAM) 範本中宣告此實體,請使用下列語法。
YAML
Type: AWS::Serverless::Function Properties: Architectures:ListAssumeRolePolicyDocument:JSONAutoPublishAlias:StringAutoPublishAliasAllProperties:BooleanAutoPublishCodeSha256:StringCodeSigningConfigArn:StringCodeUri:String | FunctionCodeDeadLetterQueue:Map | DeadLetterQueueDeploymentPreference:DeploymentPreferenceDescription:StringEnvironment:EnvironmentEphemeralStorage:EphemeralStorageEventInvokeConfig:EventInvokeConfigurationEvents:EventSourceFileSystemConfigs:ListFunctionName:StringFunctionUrlConfig:FunctionUrlConfigHandler:StringImageConfig:ImageConfigImageUri:StringInlineCode:StringKmsKeyArn:StringLayers:ListLoggingConfig:LoggingConfigMemorySize:IntegerPackageType:StringPermissionsBoundary:StringPolicies:String | List | MapPropagateTags:BooleanProvisionedConcurrencyConfig:ProvisionedConcurrencyConfigRecursiveLoop:StringReservedConcurrentExecutions:IntegerRole:StringRolePath:StringRuntime:StringRuntimeManagementConfig:RuntimeManagementConfigSnapStart:SnapStartSourceKMSKeyArn:StringTags:MapTimeout:IntegerTracing:StringVersionDescription:StringVpcConfig:VpcConfig
屬性
- 
					Architectures
- 
					函數的指示集架構。 如需此屬性的詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的 Lambda 指令集架構。 有效值: x86_64或 之一arm64類型:列出 必要:否 預設: x86_64AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的Architectures屬性。
- 
					AssumeRolePolicyDocument
- 
					為此 Role函數建立的預設 新增 AssumeRolePolicyDocument。如果未指定此屬性, 會為此函數 AWS SAM 新增預設擔任角色。類型:JSON 必要:否 AWS CloudFormation 相容性:此屬性類似於 AWS::IAM::Role資源的AssumeRolePolicyDocument屬性。 會將此屬性 AWS SAM 新增至此函數產生的 IAM 角色。如果此函數提供角色的 Amazon Resource Name (ARN),則此屬性不會執行任何動作。
- 
					AutoPublishAlias
- 
					Lambda 別名的名稱。如需 Lambda 別名的詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的 Lambda 函數別名。如需使用此屬性的範例,請參閱 使用 逐步部署無伺服器應用程式 AWS SAM。 AWS SAM 會在設定此屬性時產生 AWS::Lambda::Alias AWS::Lambda::Version和資源。如需此案例的資訊,請參閱 已指定 AutoPublishAlias 屬性。如需所產生 AWS CloudFormation 資源的一般資訊,請參閱 產生的 AWS CloudFormation 資源 AWS SAM。 類型:字串 必要:否 AWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 
- 
					AutoPublishAliasAllProperties
- 
					指定何時建立新的 AWS::Lambda::Version。當 時true,會在修改 Lambda 函數中的任何屬性時建立新的 Lambda 版本。當 時false,只有在修改下列任何屬性時,才會建立新的 Lambda 版本:- 
							Environment,MemorySize, 或SnapStart.
- 
							導致 Code屬性更新的任何變更,例如CodeDict、ImageUri或InlineCode。
 此屬性 AutoPublishAlias需要定義。如果也指定 AutoPublishCodeSha256,則其行為優先於AutoPublishAliasAllProperties: true。類型:布林值 必要:否 預設值: falseAWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 
- 
							
- 
					AutoPublishCodeSha256
- 
					使用時,此字串會與 CodeUri值搭配使用,以判斷是否需要發佈新的 Lambda 版本。此屬性通常用於解決下列部署問題:部署套件會存放在 Amazon S3 位置,並以具有更新 Lambda 函數程式碼的新部署套件取代,但CodeUri屬性保持不變 (而不是將新的部署套件上傳至新的 Amazon S3 位置,並將CodeUri變更為新的位置)。此問題由具有下列特性的 AWS SAM 範本標記: - DeploymentPreference物件已設定為逐步部署 (如中所述使用 逐步部署無伺服器應用程式 AWS SAM)
- AutoPublishAlias屬性已設定,不會在部署之間變更
- CodeUri屬性已設定,不會在部署之間變更。
 在此案例中,更新 AutoPublishCodeSha256會導致新的 Lambda 版本成功建立。不過,部署到 Amazon S3 的新函數程式碼將無法辨識。若要辨識新的函數程式碼,請考慮在 Amazon S3 儲存貯體中使用版本控制。為您的 Lambda 函數指定Version屬性,並將儲存貯體設定為一律使用最新的部署套件。在此案例中,若要成功觸發逐步部署,您必須提供 的唯一值 AutoPublishCodeSha256。類型:字串 必要:否 AWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 
- 
					CodeSigningConfigArn
- 
					AWS::Lambda::CodeSigningConfig 資源的 ARN,用於啟用此函數的程式碼簽署。如需程式碼簽署的詳細資訊,請參閱 為您的 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 SAMCLI 在部署時上傳本機檔案。如需詳細資訊,請參閱 如何在部署時 AWS SAM 上傳本機檔案。 如果您在 CodeUri屬性中使用內部函數, AWS SAM 將無法正確剖析值。請考慮改用 AWS::LanguageExtensions 轉換。類型:【 String | FunctionCode 】 必要:有條件限制。當 PackageType設定為 時Zip,InlineCode需要其中一個CodeUri或 。AWS CloudFormation 相容性:此屬性類似於 AWS::Lambda::Function資源的Code屬性。巢狀 Amazon S3 屬性的名稱不同。
- 
							
- 
					DeadLetterQueue
- 
					設定 Amazon Simple Notification Service (Amazon SNS) 主題或 Amazon Simple Queue Service (Amazon SQS) 佇列,其中 Lambda 會傳送無法處理的事件。如需無效字母佇列功能的詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的無效字母佇列。 注意如果您的 Lambda 函數的事件來源是 Amazon SQS 佇列,請為來源佇列設定無效字母佇列,而非 Lambda 函數。您為函數設定的無效字母佇列用於函數的非同步呼叫佇列,而不是事件來源佇列。 類型:映射 | DeadLetterQueue 必要:否 AWS CloudFormation 相容性:此屬性類似於 AWS::Lambda::Function資源的DeadLetterConfig屬性。在 AWS CloudFormation 類型衍生自TargetArn,而在 中 AWS SAM ,您必須將 類型與 一起傳遞TargetArn。
- 
					DeploymentPreference
- 
					啟用逐步 Lambda 部署的設定。 如果指定 DeploymentPreference物件, 會 AWS SAM 建立AWS::CodeDeploy::Application稱為 的ServerlessDeploymentApplication(每個堆疊一個)<function-logical-id>DeploymentGroupCodeDeployServiceRole。必要:否 AWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 另請參閱:如需此屬性的詳細資訊,請參閱 使用 逐步部署無伺服器應用程式 AWS SAM。 
- 
					Description
- 
					函數的敘述。 類型:字串 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的Description屬性。
- 
					Environment
- 
					執行時間環境的組態。 類型:Environment 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的Environment屬性。
- 
					EphemeralStorage
- 
					指定 中 Lambda 函數可用磁碟空間的物件,以 MB 為單位 /tmp。如需此屬性的詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的 Lambda 執行環境。 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的EphemeralStorage屬性。
- 
					EventInvokeConfig
- 
					描述事件在 Lambda 函數上叫用組態的物件。 必要:否 AWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 
- 
					Events
- 
					指定觸發此函數的事件。事件由類型和一組屬性組成,這些屬性取決於類型。 類型︰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 端點,可用來叫用函數。 如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的函數 URLs。 必要:否 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 函數容器映像的 Amazon Elastic Container Registry (Amazon ECR) 儲存庫的 URI。此屬性僅適用於 PackageType屬性設為 時Image,否則會予以忽略。如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的搭配 Lambda 使用容器映像。注意如果 PackageType屬性設定為Image,則ImageUri為必要項目,或者您必須使用 AWS SAM 範本檔案中的必要Metadata項目來建置應用程式。如需詳細資訊,請參閱使用 的預設建置 AWS SAM。使用必要 Metadata項目建置應用程式優先於ImageUri,因此如果您指定兩者,ImageUri則會忽略 。類型:字串 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::FunctionCode資料類型的ImageUri屬性。
- 
					InlineCode
- 
					直接寫入範本中的 Lambda 函數程式碼。此屬性僅適用於 PackageType屬性設為 時Zip,否則會予以忽略。注意如果 PackageType屬性設定為Zip(預設),InlineCode則需要其中一個CodeUri或 。類型:字串 必要:有條件 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::FunctionCode資料類型的ZipFile屬性。
- 
					KmsKeyArn
- 
					Lambda 用來加密和解密函數環境變數之 AWS Key Management Service (AWS KMS) 金鑰的 ARN。 類型:字串 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的KmsKeyArn屬性。
- 
					Layers
- 
					此函數應使用的 LayerVersionARNs 清單。此處指定的順序是在執行 Lambda 函數時匯入的順序。版本是完整的 ARN,包括版本或 LayerVersion 資源的參考。例如, 的參考LayerVersion將是 ,!Ref MyLayer而包含 版本的完整 ARN 將是arn:aws:lambda:。region:account-id:layer:layer-name:version類型:清單 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的Layers屬性。
- 
					LoggingConfig
- 
					該功能的 Amazon CloudWatch Logs 組態設定。 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的LoggingConfig屬性。
- 
					MemorySize
- 
					每次叫用函數時配置的記憶體大小,以 MB 為單位。 類型:整數 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的MemorySize屬性。
- 
					PackageType
- 
					Lambda 函數的部署套件類型。如需詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的 Lambda 部署套件。 備註: 1. 如果此屬性設為 Zip(預設),則會InlineCode套用CodeUri或 ,並ImageUri忽略 。2. 如果此屬性設定為 Image,則只會ImageUri套用 ,並且InlineCode會忽略CodeUri和 。儲存函數容器映像所需的 Amazon ECR 儲存庫可由 自動建立 AWS SAMCLI。如需詳細資訊,請參閱sam deploy。有效值: Zip或Image類型:字串 必要:否 預設: ZipAWS 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屬性。
- 
					指出是否要將標籤從 Tags屬性傳遞至您AWS::Serverless::Function產生的資源。指定True在產生的資源中傳播標籤。類型:布林值 必要:否 預設: FalseAWS CloudFormation 相容性:此屬性對 是唯一的 AWS SAM ,並且沒有 AWS CloudFormation 同等的。 
- 
					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。如果未指定角色,則會為您建立邏輯 ID 為 的角色<function-logical-id>Role
- 
					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 執行時間更新。 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的RuntimeManagementConfig屬性。
- 
					SnapStart
- 
					建立任何新 Lambda 函數版本的快照。快照是初始化函數的快取狀態,包括其所有相依性。函式只會初始化一次,快取狀態會重複使用於所有未來的調用,藉由減少函式必須初始化的次數來改善應用程式效能。若要進一步了解,請參閱《 AWS Lambda 開發人員指南》中的使用 Lambda SnapStart 改善啟動效能。 類型:SnapStart 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的SnapStart屬性。
- 
					SourceKmsKeyArn
- 
					代表用來加密客戶 ZIP 函數程式碼的 KMS 金鑰 ARN。 類型:字串 必要:否 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::FunctionCode資料類型的SourceKmsKeyArn屬性。
- 
					指定新增至此函數之標籤的映射 (字串到字串)。如需標籤有效金鑰和值的詳細資訊,請參閱《 AWS Lambda 開發人員指南》中的標籤金鑰和值要求。 建立堆疊時, AWS SAM 會自動將 lambda:createdBy:SAM標籤新增至此 Lambda 函數,以及此函數產生的預設角色。類型:映射 必要:否 AWS CloudFormation 相容性:此屬性類似於 AWS::Lambda::Function資源的Tags屬性。中的Tags屬性 AWS SAM 包含鍵值對 (而 AWS CloudFormation 此屬性包含Tag物件清單)。此外, AWS SAM 自動將lambda:createdBy:SAM標籤新增至此 Lambda 函數,以及新增至為此函數產生的預設角色。
- 
					Timeout
- 
					函數在停止之前可以執行的時間上限,以秒為單位。 類型:整數 必要:否 預設:3 AWS CloudFormation 相容性:此屬性會直接傳遞至 AWS::Lambda::Function資源的Timeout屬性。
- 
					Tracing
- 
					指定函數 X-Ray 追蹤模式的字串。 - 
							Active– 啟用函數的 X-Ray 追蹤。
- 
							Disabled– 停用函數的 X-Ray。
- 
							PassThrough– 啟用函數的 X-Ray 追蹤。抽樣決策會委派給下游服務。
 如果指定為 Active或PassThrough且未設定Role屬性, 會將arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess政策 AWS SAM 新增至其為您建立的 Lambda 執行角色。如需 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屬性。
傳回值
Ref
當將此資源的邏輯 ID 提供給Ref內部 函數時,它會傳回基礎 Lambda 函數的資源名稱。
如需使用 Ref函數的詳細資訊,請參閱AWS CloudFormation 《 使用者指南Ref》中的 。
Fn::GetAtt
Fn::GetAtt 會傳回此類型之指定屬性的值。以下為可用屬性及傳回值的範例。
如需使用 的詳細資訊Fn::GetAtt,請參閱AWS CloudFormation 《 使用者指南Fn::GetAtt》中的 。
- Arn
- 
						基礎 Lambda 函數的 ARN。 
範例
簡單函數
以下是 Amazon S3 儲存貯體中套件類型 Zip(預設) 和函數程式碼 AWS::Serverless::Function 資源的基本範例。
YAML
Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://bucket-name/key-name
函數屬性範例
以下是使用 InlineCode、Layers、、Amazon EFS、 和 Api事件來源AWS::Serverless::Function的套件類型 Zip(預設) Tracing Policies的範例。
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:::sam-s3-demo-bucket/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get
ImageConfig 範例
以下是套件類型 之 ImageConfig Lambda 函數的 範例Image。
YAML
HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri:account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-nameImageConfig: 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