Class CfnFunction.Builder

java.lang.Object
software.amazon.awscdk.services.lambda.CfnFunction.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnFunction>
Enclosing class:
CfnFunction

@Stability(Stable) public static final class CfnFunction.Builder extends Object implements software.amazon.jsii.Builder<CfnFunction>
A fluent builder for CfnFunction.
  • Method Details

    • create

      @Stability(Stable) public static CfnFunction.Builder create(Construct scope, String id)
      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      Returns:
      a new instance of CfnFunction.Builder.
    • code

      @Stability(Stable) public CfnFunction.Builder code(IResolvable code)
      The code for the function.

      Parameters:
      code - The code for the function. This parameter is required.
      Returns:
      this
    • code

      @Stability(Stable) public CfnFunction.Builder code(CfnFunction.CodeProperty code)
      The code for the function.

      Parameters:
      code - The code for the function. This parameter is required.
      Returns:
      this
    • role

      @Stability(Stable) public CfnFunction.Builder role(String role)
      The Amazon Resource Name (ARN) of the function's execution role.

      Parameters:
      role - The Amazon Resource Name (ARN) of the function's execution role. This parameter is required.
      Returns:
      this
    • architectures

      @Stability(Stable) public CfnFunction.Builder architectures(List<String> architectures)
      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 .

      Parameters:
      architectures - The instruction set architecture that the function supports. This parameter is required.
      Returns:
      this
    • codeSigningConfigArn

      @Stability(Stable) public CfnFunction.Builder codeSigningConfigArn(String codeSigningConfigArn)
      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.

      Parameters:
      codeSigningConfigArn - To enable code signing for this function, specify the ARN of a code-signing configuration. This parameter is required.
      Returns:
      this
    • deadLetterConfig

      @Stability(Stable) public CfnFunction.Builder deadLetterConfig(IResolvable 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 .

      Parameters:
      deadLetterConfig - A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. This parameter is required.
      Returns:
      this
    • deadLetterConfig

      @Stability(Stable) public CfnFunction.Builder deadLetterConfig(CfnFunction.DeadLetterConfigProperty 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 .

      Parameters:
      deadLetterConfig - A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. This parameter is required.
      Returns:
      this
    • description

      @Stability(Stable) public CfnFunction.Builder description(String description)
      A description of the function.

      Parameters:
      description - A description of the function. This parameter is required.
      Returns:
      this
    • environment

      @Stability(Stable) public CfnFunction.Builder environment(IResolvable environment)
      Environment variables that are accessible from function code during execution.

      Parameters:
      environment - Environment variables that are accessible from function code during execution. This parameter is required.
      Returns:
      this
    • environment

      @Stability(Stable) public CfnFunction.Builder environment(CfnFunction.EnvironmentProperty environment)
      Environment variables that are accessible from function code during execution.

      Parameters:
      environment - Environment variables that are accessible from function code during execution. This parameter is required.
      Returns:
      this
    • ephemeralStorage

      @Stability(Stable) public CfnFunction.Builder ephemeralStorage(IResolvable ephemeralStorage)
      The size of the function's /tmp directory in MB.

      The default value is 512, but it can be any whole number between 512 and 10,240 MB.

      Parameters:
      ephemeralStorage - The size of the function's /tmp directory in MB. This parameter is required.
      Returns:
      this
    • ephemeralStorage

      @Stability(Stable) public CfnFunction.Builder ephemeralStorage(CfnFunction.EphemeralStorageProperty ephemeralStorage)
      The size of the function's /tmp directory in MB.

      The default value is 512, but it can be any whole number between 512 and 10,240 MB.

      Parameters:
      ephemeralStorage - The size of the function's /tmp directory in MB. This parameter is required.
      Returns:
      this
    • fileSystemConfigs

      @Stability(Stable) public CfnFunction.Builder fileSystemConfigs(IResolvable fileSystemConfigs)
      Connection settings for an Amazon EFS file system.

      To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function.

      For more information about using the DependsOn attribute, see DependsOn Attribute .

      Parameters:
      fileSystemConfigs - Connection settings for an Amazon EFS file system. This parameter is required.
      Returns:
      this
    • fileSystemConfigs

      @Stability(Stable) public CfnFunction.Builder fileSystemConfigs(List<? extends Object> fileSystemConfigs)
      Connection settings for an Amazon EFS file system.

      To connect a function to a file system, a mount target must be available in every Availability Zone that your function connects to. If your template contains an AWS::EFS::MountTarget resource, you must also specify a DependsOn attribute to ensure that the mount target is created or updated before the function.

      For more information about using the DependsOn attribute, see DependsOn Attribute .

      Parameters:
      fileSystemConfigs - Connection settings for an Amazon EFS file system. This parameter is required.
      Returns:
      this
    • functionName

      @Stability(Stable) public CfnFunction.Builder functionName(String functionName)
      The name of the Lambda function, up to 64 characters in length.

      If you don't specify a name, AWS CloudFormation generates one.

      If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.

      Parameters:
      functionName - The name of the Lambda function, up to 64 characters in length. This parameter is required.
      Returns:
      this
    • handler

      @Stability(Stable) public CfnFunction.Builder handler(String handler)
      The name of the method within your code that Lambda calls to run 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 Lambda programming model .

      Parameters:
      handler - The name of the method within your code that Lambda calls to run your function. This parameter is required.
      Returns:
      this
    • imageConfig

      @Stability(Stable) public CfnFunction.Builder imageConfig(IResolvable imageConfig)
      Configuration values that override the container image Dockerfile settings.

      For more information, see Container image settings .

      Parameters:
      imageConfig - Configuration values that override the container image Dockerfile settings. This parameter is required.
      Returns:
      this
    • imageConfig

      @Stability(Stable) public CfnFunction.Builder imageConfig(CfnFunction.ImageConfigProperty imageConfig)
      Configuration values that override the container image Dockerfile settings.

      For more information, see Container image settings .

      Parameters:
      imageConfig - Configuration values that override the container image Dockerfile settings. This parameter is required.
      Returns:
      this
    • kmsKeyArn

      @Stability(Stable) public CfnFunction.Builder kmsKeyArn(String kmsKeyArn)
      The ARN of the AWS Key Management Service ( AWS KMS ) customer managed key that's used to encrypt your function's environment variables . When Lambda SnapStart is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key.

      Parameters:
      kmsKeyArn - The ARN of the AWS Key Management Service ( AWS KMS ) customer managed key that's used to encrypt your function's environment variables . When Lambda SnapStart is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. This parameter is required.
      Returns:
      this
    • layers

      @Stability(Stable) public CfnFunction.Builder layers(List<String> layers)
      A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

      Parameters:
      layers - A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version. This parameter is required.
      Returns:
      this
    • memorySize

      @Stability(Stable) public CfnFunction.Builder memorySize(Number memorySize)
      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.

      Parameters:
      memorySize - 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. This parameter is required.
      Returns:
      this
    • packageType

      @Stability(Stable) public CfnFunction.Builder packageType(String packageType)
      The type of deployment package.

      Set to Image for container image and set Zip for .zip file archive.

      Parameters:
      packageType - The type of deployment package. This parameter is required.
      Returns:
      this
    • reservedConcurrentExecutions

      @Stability(Stable) public CfnFunction.Builder reservedConcurrentExecutions(Number reservedConcurrentExecutions)
      The number of simultaneous executions to reserve for the function.

      Parameters:
      reservedConcurrentExecutions - The number of simultaneous executions to reserve for the function. This parameter is required.
      Returns:
      this
    • runtime

      @Stability(Stable) public CfnFunction.Builder runtime(String runtime)
      The identifier of the function's runtime . Runtime is required if the deployment package is a .zip file archive.

      The following list includes deprecated runtimes. For more information, see Runtime deprecation policy .

      Parameters:
      runtime - The identifier of the function's runtime . Runtime is required if the deployment package is a .zip file archive. This parameter is required.
      Returns:
      this
    • runtimeManagementConfig

      @Stability(Stable) public CfnFunction.Builder runtimeManagementConfig(IResolvable runtimeManagementConfig)
      Sets the runtime management configuration for a function's version.

      For more information, see Runtime updates .

      Parameters:
      runtimeManagementConfig - Sets the runtime management configuration for a function's version. This parameter is required.
      Returns:
      this
    • runtimeManagementConfig

      @Stability(Stable) public CfnFunction.Builder runtimeManagementConfig(CfnFunction.RuntimeManagementConfigProperty runtimeManagementConfig)
      Sets the runtime management configuration for a function's version.

      For more information, see Runtime updates .

      Parameters:
      runtimeManagementConfig - Sets the runtime management configuration for a function's version. This parameter is required.
      Returns:
      this
    • snapStart

      @Stability(Stable) public CfnFunction.Builder snapStart(IResolvable snapStart)
      The function's AWS Lambda SnapStart setting.

      Parameters:
      snapStart - The function's AWS Lambda SnapStart setting. This parameter is required.
      Returns:
      this
    • snapStart

      @Stability(Stable) public CfnFunction.Builder snapStart(CfnFunction.SnapStartProperty snapStart)
      The function's AWS Lambda SnapStart setting.

      Parameters:
      snapStart - The function's AWS Lambda SnapStart setting. This parameter is required.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnFunction.Builder tags(List<? extends CfnTag> tags)
      A list of tags to apply to the function.

      Parameters:
      tags - A list of tags to apply to the function. This parameter is required.
      Returns:
      this
    • timeout

      @Stability(Stable) public CfnFunction.Builder timeout(Number timeout)
      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 more information, see Lambda execution environment .

      Parameters:
      timeout - The amount of time (in seconds) that Lambda allows a function to run before stopping it. This parameter is required.
      Returns:
      this
    • tracingConfig

      @Stability(Stable) public CfnFunction.Builder tracingConfig(IResolvable tracingConfig)
      Set Mode to Active to sample and trace a subset of incoming requests with X-Ray .

      Parameters:
      tracingConfig - Set Mode to Active to sample and trace a subset of incoming requests with X-Ray . This parameter is required.
      Returns:
      this
    • tracingConfig

      @Stability(Stable) public CfnFunction.Builder tracingConfig(CfnFunction.TracingConfigProperty tracingConfig)
      Set Mode to Active to sample and trace a subset of incoming requests with X-Ray .

      Parameters:
      tracingConfig - Set Mode to Active to sample and trace a subset of incoming requests with X-Ray . This parameter is required.
      Returns:
      this
    • vpcConfig

      @Stability(Stable) public CfnFunction.Builder vpcConfig(IResolvable 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 access resources and the internet only through that VPC. For more information, see Configuring a Lambda function to access resources in a VPC .

      Parameters:
      vpcConfig - For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. This parameter is required.
      Returns:
      this
    • vpcConfig

      @Stability(Stable) public CfnFunction.Builder vpcConfig(CfnFunction.VpcConfigProperty 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 access resources and the internet only through that VPC. For more information, see Configuring a Lambda function to access resources in a VPC .

      Parameters:
      vpcConfig - For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. This parameter is required.
      Returns:
      this
    • build

      @Stability(Stable) public CfnFunction build()
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnFunction>
      Returns:
      a newly built instance of CfnFunction.