AWS::GreengrassV2::ComponentVersion LambdaExecutionParameters - AWS CloudFormation
Services or capabilities described in AWS documentation might vary by Region. To see the differences applicable to the AWS European Sovereign Cloud Region, see the AWS European Sovereign Cloud User Guide.

This is the new CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.

AWS::GreengrassV2::ComponentVersion LambdaExecutionParameters

Contains parameters for a Lambda function that runs on AWS IoT Greengrass.

Syntax

To declare this entity in your CloudFormation template, use the following syntax:

JSON

{ "EnvironmentVariables" : {Key: Value, ...}, "EventSources" : [ LambdaEventSource, ... ], "ExecArgs" : [ String, ... ], "InputPayloadEncodingType" : String, "LinuxProcessParams" : LambdaLinuxProcessParams, "MaxIdleTimeInSeconds" : Integer, "MaxInstancesCount" : Integer, "MaxQueueSize" : Integer, "Pinned" : Boolean, "StatusTimeoutInSeconds" : Integer, "TimeoutInSeconds" : Integer }

Properties

EnvironmentVariables

The map of environment variables that are available to the Lambda function when it runs.

Required: No

Type: Object of String

Pattern: .+

Update requires: Replacement

EventSources

The list of event sources to which to subscribe to receive work messages. The Lambda function runs when it receives a message from an event source. You can subscribe this function to local publish/subscribe messages and AWS IoT Core MQTT messages.

Required: No

Type: Array of LambdaEventSource

Update requires: Replacement

ExecArgs

The list of arguments to pass to the Lambda function when it runs.

Required: No

Type: Array of String

Update requires: Replacement

InputPayloadEncodingType

The encoding type that the Lambda function supports.

Default: json

Required: No

Type: String

Allowed values: json | binary

Update requires: Replacement

LinuxProcessParams

The parameters for the Linux process that contains the Lambda function.

Required: No

Type: LambdaLinuxProcessParams

Update requires: Replacement

MaxIdleTimeInSeconds

The maximum amount of time in seconds that a non-pinned Lambda function can idle before the AWS IoT Greengrass Core software stops its process.

Required: No

Type: Integer

Update requires: Replacement

MaxInstancesCount

The maximum number of instances that a non-pinned Lambda function can run at the same time.

Required: No

Type: Integer

Update requires: Replacement

MaxQueueSize

The maximum size of the message queue for the Lambda function component. The AWS IoT Greengrass core device stores messages in a FIFO (first-in-first-out) queue until it can run the Lambda function to consume each message.

Required: No

Type: Integer

Update requires: Replacement

Pinned

Whether or not the Lambda function is pinned, or long-lived.

  • A pinned Lambda function starts when the AWS IoT Greengrass Core starts and keeps running in its own container.

  • A non-pinned Lambda function starts only when it receives a work item and exists after it idles for maxIdleTimeInSeconds. If the function has multiple work items, the AWS IoT Greengrass Core software creates multiple instances of the function.

Default: true

Required: No

Type: Boolean

Update requires: Replacement

StatusTimeoutInSeconds

The interval in seconds at which a pinned (also known as long-lived) Lambda function component sends status updates to the Lambda manager component.

Required: No

Type: Integer

Update requires: Replacement

TimeoutInSeconds

The maximum amount of time in seconds that the Lambda function can process a work item.

Required: No

Type: Integer

Update requires: Replacement