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

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
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", # accepts nodejs, nodejs4.3, nodejs6.10, nodejs8.10, nodejs10.x, nodejs12.x, nodejs14.x, java8, java8.al2, java11, python2.7, python3.6, python3.7, python3.8, python3.9, dotnetcore1.0, dotnetcore2.0, dotnetcore2.1, dotnetcore3.1, dotnet6, nodejs4.3-edge, go1.x, ruby2.5, ruby2.7, provided, provided.al2
  role: "RoleArn", # required
  handler: "Handler",
  code: { # required
    zip_file: "data",
    s3_bucket: "S3Bucket",
    s3_key: "S3Key",
    s3_object_version: "S3ObjectVersion",
    image_uri: "String",
  },
  description: "Description",
  timeout: 1,
  memory_size: 1,
  publish: false,
  vpc_config: {
    subnet_ids: ["SubnetId"],
    security_group_ids: ["SecurityGroupId"],
  },
  package_type: "Zip", # accepts Zip, Image
  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
    },
  ],
  image_config: {
    entry_point: ["String"],
    command: ["String"],
    working_directory: "WorkingDirectory",
  },
  code_signing_config_arn: "CodeSigningConfigArn",
  architectures: ["x86_64"], # accepts x86_64, arm64
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#architecturesArray<String>

The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is ‘x86_64`.

Returns:

  • (Array<String>)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#codeTypes::FunctionCode

The code for the function.

Returns:



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#code_signing_config_arnString

To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :package_type,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs,
  :image_config,
  :code_signing_config_arn,
  :architectures)
  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].

[1]: docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#descriptionString

A description of the function.

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#environmentTypes::Environment

Environment variables that are accessible from function code during execution.

Returns:



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#file_system_configsArray<Types::FileSystemConfig>

Connection settings for an Amazon EFS file system.

Returns:



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :package_type,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs,
  :image_config,
  :code_signing_config_arn,
  :architectures)
  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)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#handlerString

The name of the method within your code that Lambda calls to execute your function. Handler is required if the deployment package is a .zip file archive. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see [Programming Model].

[1]: docs.aws.amazon.com/lambda/latest/dg/programming-model-v2.html

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#image_configTypes::ImageConfig

Container image [configuration values] that override the values in the container image Dockerfile.

[1]: docs.aws.amazon.com/lambda/latest/dg/configuration-images.html#configuration-images-settings

Returns:



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#kms_key_arnString

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

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

class CreateFunctionRequest < Struct.new(
  :function_name,
  :runtime,
  :role,
  :handler,
  :code,
  :description,
  :timeout,
  :memory_size,
  :publish,
  :vpc_config,
  :package_type,
  :dead_letter_config,
  :environment,
  :kms_key_arn,
  :tracing_config,
  :tags,
  :layers,
  :file_system_configs,
  :image_config,
  :code_signing_config_arn,
  :architectures)
  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.

[1]: docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html

Returns:

  • (Array<String>)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#memory_sizeInteger

The amount of [memory available to the function] at runtime. Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB.

[1]: docs.aws.amazon.com/lambda/latest/dg/configuration-memory.html

Returns:

  • (Integer)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#package_typeString

The type of deployment package. Set to ‘Image` for container image and set `Zip` for ZIP archive.

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#publishBoolean

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

Returns:

  • (Boolean)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#roleString

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

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#runtimeString

The identifier of the function’s [runtime]. Runtime is required if the deployment package is a .zip file archive.

[1]: docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html

Returns:

  • (String)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#tagsHash<String,String>

A list of [tags] to apply to the function.

[1]: docs.aws.amazon.com/lambda/latest/dg/tagging.html

Returns:

  • (Hash<String,String>)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#timeoutInteger

The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For additional information, see [Lambda execution environment].

[1]: docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html

Returns:

  • (Integer)


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#tracing_configTypes::TracingConfig

Set ‘Mode` to `Active` to sample and trace a subset of incoming requests with [X-Ray].

[1]: docs.aws.amazon.com/lambda/latest/dg/services-xray.html



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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

#vpc_configTypes::VpcConfig

For network connectivity to Amazon Web Services 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].

[1]: docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html

Returns:



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
# File 'lib/aws-sdk-lambda/types.rb', line 1066

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