Class: Aws::GreengrassV2::Types::LambdaExecutionParameters

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb

Overview

Note:

When making an API call, you may pass LambdaExecutionParameters data as a hash:

{
  event_sources: [
    {
      topic: "TopicString", # required
      type: "PUB_SUB", # required, accepts PUB_SUB, IOT_CORE
    },
  ],
  max_queue_size: 1,
  max_instances_count: 1,
  max_idle_time_in_seconds: 1,
  timeout_in_seconds: 1,
  status_timeout_in_seconds: 1,
  pinned: false,
  input_payload_encoding_type: "json", # accepts json, binary
  exec_args: ["LambdaExecArg"],
  environment_variables: {
    "NonEmptyString" => "String",
  },
  linux_process_params: {
    isolation_mode: "GreengrassContainer", # accepts GreengrassContainer, NoContainer
    container_params: {
      memory_size_in_kb: 1,
      mount_ro_sysfs: false,
      volumes: [
        {
          source_path: "FileSystemPath", # required
          destination_path: "FileSystemPath", # required
          permission: "ro", # accepts ro, rw
          add_group_owner: false,
        },
      ],
      devices: [
        {
          path: "FileSystemPath", # required
          permission: "ro", # accepts ro, rw
          add_group_owner: false,
        },
      ],
    },
  },
}

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

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#environment_variablesHash<String,String>

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

Returns:

  • (Hash<String,String>)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#event_sourcesArray<Types::LambdaEventSource>

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 Amazon Web Services IoT Core MQTT messages.

Returns:



2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#exec_argsArray<String>

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

Returns:

  • (Array<String>)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#input_payload_encoding_typeString

The encoding type that the Lambda function supports.

Default: json

Returns:

  • (String)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#linux_process_paramsTypes::LambdaLinuxProcessParams

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



2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#max_idle_time_in_secondsInteger

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

Returns:

  • (Integer)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#max_instances_countInteger

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

Returns:

  • (Integer)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#max_queue_sizeInteger

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

Returns:

  • (Integer)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#pinnedBoolean

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

  • A pinned Lambda function starts when IoT Greengrass 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 IoT Greengrass Core software creates multiple instances of the function.

Default: true

Returns:

  • (Boolean)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#status_timeout_in_secondsInteger

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

Returns:

  • (Integer)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end

#timeout_in_secondsInteger

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

Returns:

  • (Integer)


2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
# File 'gems/aws-sdk-greengrassv2/lib/aws-sdk-greengrassv2/types.rb', line 2371

class LambdaExecutionParameters < Struct.new(
  :event_sources,
  :max_queue_size,
  :max_instances_count,
  :max_idle_time_in_seconds,
  :timeout_in_seconds,
  :status_timeout_in_seconds,
  :pinned,
  :input_payload_encoding_type,
  :exec_args,
  :environment_variables,
  :linux_process_params)
  SENSITIVE = []
  include Aws::Structure
end