Class: Aws::Lambda::Types::CreateFunctionRequest

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

Overview

Note:

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

{
  function_name: "FunctionName", # required
  runtime: "nodejs", # required, accepts nodejs, nodejs4.3, nodejs6.10, nodejs8.10, nodejs10.x, nodejs12.x, java8, java11, python2.7, python3.6, python3.7, python3.8, dotnetcore1.0, dotnetcore2.0, dotnetcore2.1, dotnetcore3.1, nodejs4.3-edge, go1.x, ruby2.5, ruby2.7, provided
  role: "RoleArn", # required
  handler: "Handler", # required
  code: { # required
    zip_file: "data",
    s3_bucket: "S3Bucket",
    s3_key: "S3Key",
    s3_object_version: "S3ObjectVersion",
  },
  description: "Description",
  timeout: 1,
  memory_size: 1,
  publish: false,
  vpc_config: {
    subnet_ids: ["SubnetId"],
    security_group_ids: ["SecurityGroupId"],
  },
  dead_letter_config: {
    target_arn: "ResourceArn",
  },
  environment: {
    variables: {
      "EnvironmentVariableName" => "EnvironmentVariableValue",
    },
  },
  kms_key_arn: "KMSKeyArn",
  tracing_config: {
    mode: "Active", # accepts Active, PassThrough
  },
  tags: {
    "TagKey" => "TagValue",
  },
  layers: ["LayerVersionArn"],
  file_system_configs: [
    {
      arn: "FileSystemArn", # required
      local_mount_path: "LocalMountPath", # required
    },
  ],
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#codeTypes::FunctionCode

The code for the function.

Returns:



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#dead_letter_configTypes::DeadLetterConfig

A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see Dead Letter Queues.



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#descriptionString

A description of the function.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#environmentTypes::Environment

Environment variables that are accessible from function code during execution.

Returns:



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#file_system_configsArray<Types::FileSystemConfig>

Connection settings for an Amazon EFS file system.

Returns:



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#function_nameString

The name of the Lambda function.

Name formats

  • Function name - my-function.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#handlerString

The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see Programming Model.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#kms_key_arnString

The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#layersArray<String>

A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

Returns:

  • (Array<String>)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#memory_sizeInteger

The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB.

Returns:

  • (Integer)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#publishBoolean

Set to true to publish the first version of the function during creation.

Returns:

  • (Boolean)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#roleString

The Amazon Resource Name (ARN) of the function's execution role.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#runtimeString

The identifier of the function's runtime.

Returns:

  • (String)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

A list of tags to apply to the function.

Returns:

  • (Hash<String,String>)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#timeoutInteger

The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds.

Returns:

  • (Integer)


732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#tracing_configTypes::TracingConfig

Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray.



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end

#vpc_configTypes::VpcConfig

For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can only access resources and the internet through that VPC. For more information, see VPC Settings.

Returns:



732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 732

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs)
  SENSITIVE = []
  include Aws::Structure
end