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", # required, accepts nodejs, nodejs4.3, nodejs6.10, nodejs8.10, java8, python2.7, python3.6, python3.7, dotnetcore1.0, dotnetcore2.0, dotnetcore2.1, nodejs4.3-edge, go1.x
  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",
  },
}

Instance Attribute Summary collapse

Instance Attribute Details

#codeTypes::FunctionCode

The code for the function.

Returns:



578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  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/dlq.html



578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#descriptionString

A description of the function.

Returns:

  • (String)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#environmentTypes::Environment

Environment variables that are accessible from function code during execution.

Returns:



578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#function_nameString

The name of the lambda function.

**Name formats**

  • **Function name** - ‘MyFunction`.

  • **Function ARN** - ‘arn:aws:lambda:us-west-2:123456789012:function:MyFunction`.

  • **Partial ARN** - ‘123456789012:function:MyFunction`.

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)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#handlerString

The name of the method within your code that Lambda calls to execute your function. For more information, see [Programming Model].

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

Returns:

  • (String)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#kms_key_arnString

The ARN of the KMS key used to encrypt your function’s environment variables. If not provided, AWS Lambda will use a default service key.

Returns:

  • (String)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#memory_sizeInteger

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

Returns:

  • (Integer)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#publishBoolean

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

Returns:

  • (Boolean)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#roleString

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

[1]: docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role

Returns:

  • (String)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#runtimeString

The runtime version for the function.

Returns:

  • (String)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#tagsHash<String,String>

The list of tags (key-value pairs) assigned to the new function. For more information, see [Tagging Lambda Functions] in the **AWS Lambda Developer Guide**.

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

Returns:

  • (Hash<String,String>)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#timeoutInteger

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

Returns:

  • (Integer)


578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#tracing_configTypes::TracingConfig

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



578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end

#vpc_configTypes::VpcConfig

If your Lambda function accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and one subnet ID.

Returns:



578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
# File 'lib/aws-sdk-lambda/types.rb', line 578

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)
  include Aws::Structure
end