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", # accepts nodejs, nodejs4.3, nodejs6.10, nodejs8.10, nodejs10.x, nodejs12.x, nodejs14.x, nodejs16.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
  ephemeral_storage: {
    size: 1, # required
  },
}

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>)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#codeTypes::FunctionCode

The code for the function.

Returns:



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#descriptionString

A description of the function.

Returns:

  • (String)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#environmentTypes::Environment

Environment variables that are accessible from function code during execution.

Returns:



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#ephemeral_storageTypes::EphemeralStorage

The size of the function’s /tmp directory in MB. The default value is 512, but can be any whole number between 512 and 10240 MB.



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#file_system_configsArray<Types::FileSystemConfig>

Connection settings for an Amazon EFS file system.

Returns:



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.

Returns:

  • (String)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#image_configTypes::ImageConfig

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

Returns:



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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>)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.

Returns:

  • (Integer)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#publishBoolean

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

Returns:

  • (Boolean)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#roleString

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

Returns:

  • (String)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.

Returns:

  • (String)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

A list of tags to apply to the function.

Returns:

  • (Hash<String,String>)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.

Returns:

  • (Integer)


1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end

#tracing_configTypes::TracingConfig

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



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  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.

Returns:



1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
# File 'gems/aws-sdk-lambda/lib/aws-sdk-lambda/types.rb', line 1167

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,
  :ephemeral_storage)
  SENSITIVE = []
  include Aws::Structure
end