Class AmazonLinuxImage.Builder

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

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

    • create

      @Stability(Stable) public static AmazonLinuxImage.Builder create()
      Returns:
      a new instance of AmazonLinuxImage.Builder.
    • cachedInContext

      @Stability(Stable) public AmazonLinuxImage.Builder cachedInContext(Boolean cachedInContext)
      Whether the AMI ID is cached to be stable between deployments.

      By default, the newest image is used on each deployment. This will cause instances to be replaced whenever a new version is released, and may cause downtime if there aren't enough running instances in the AutoScalingGroup to reschedule the tasks on.

      If set to true, the AMI ID will be cached in cdk.context.json and the same value will be used on future runs. Your instances will not be replaced but your AMI version will grow old over time. To refresh the AMI lookup, you will have to evict the value from the cache using the cdk context command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information.

      Can not be set to true in environment-agnostic stacks.

      Default: false

      Parameters:
      cachedInContext - Whether the AMI ID is cached to be stable between deployments. This parameter is required.
      Returns:
      this
    • cpuType

      @Stability(Stable) public AmazonLinuxImage.Builder cpuType(AmazonLinuxCpuType cpuType)
      CPU Type.

      Default: X86_64

      Parameters:
      cpuType - CPU Type. This parameter is required.
      Returns:
      this
    • edition

      @Stability(Stable) public AmazonLinuxImage.Builder edition(AmazonLinuxEdition edition)
      What edition of Amazon Linux to use.

      Default: Standard

      Parameters:
      edition - What edition of Amazon Linux to use. This parameter is required.
      Returns:
      this
    • generation

      @Stability(Stable) public AmazonLinuxImage.Builder generation(AmazonLinuxGeneration generation)
      What generation of Amazon Linux to use.

      Default: AmazonLinux

      Parameters:
      generation - What generation of Amazon Linux to use. This parameter is required.
      Returns:
      this
    • kernel

      @Stability(Stable) public AmazonLinuxImage.Builder kernel(AmazonLinuxKernel kernel)
      What kernel version of Amazon Linux to use.

      Default: -

      Parameters:
      kernel - What kernel version of Amazon Linux to use. This parameter is required.
      Returns:
      this
    • storage

      @Stability(Stable) public AmazonLinuxImage.Builder storage(AmazonLinuxStorage storage)
      What storage backed image to use.

      Default: GeneralPurpose

      Parameters:
      storage - What storage backed image to use. This parameter is required.
      Returns:
      this
    • userData

      @Stability(Stable) public AmazonLinuxImage.Builder userData(UserData userData)
      Initial user data.

      Default: - Empty UserData for Linux machines

      Parameters:
      userData - Initial user data. This parameter is required.
      Returns:
      this
    • virtualization

      @Stability(Stable) public AmazonLinuxImage.Builder virtualization(AmazonLinuxVirt virtualization)
      Virtualization type.

      Default: HVM

      Parameters:
      virtualization - Virtualization type. This parameter is required.
      Returns:
      this
    • build

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