Interface InstanceConfig

  • All Superinterfaces:
    software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
    All Known Implementing Classes:
    InstanceConfig.Jsii$Proxy

    @Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)",
               date="2023-06-30T04:56:53.356Z")
    @Stability(Stable)
    public interface InstanceConfig
    extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
    • Method Summary

      All Methods Static Methods Instance Methods Default Methods 
      Modifier and Type Method Description
      static InstanceConfig.Builder builder()  
      default String getAmi()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ami Instance#ami}.
      default Object getAssociatePublicIpAddress()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#associate_public_ip_address Instance#associate_public_ip_address}.
      default String getAvailabilityZone()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#availability_zone Instance#availability_zone}.
      default InstanceCapacityReservationSpecification getCapacityReservationSpecification()
      capacity_reservation_specification block.
      default Number getCpuCoreCount()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#cpu_core_count Instance#cpu_core_count}.
      default InstanceCpuOptions getCpuOptions()
      cpu_options block.
      default Number getCpuThreadsPerCore()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#cpu_threads_per_core Instance#cpu_threads_per_core}.
      default InstanceCreditSpecification getCreditSpecification()
      credit_specification block.
      default Object getDisableApiStop()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#disable_api_stop Instance#disable_api_stop}.
      default Object getDisableApiTermination()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#disable_api_termination Instance#disable_api_termination}.
      default Object getEbsBlockDevice()
      ebs_block_device block.
      default Object getEbsOptimized()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ebs_optimized Instance#ebs_optimized}.
      default InstanceEnclaveOptions getEnclaveOptions()
      enclave_options block.
      default Object getEphemeralBlockDevice()
      ephemeral_block_device block.
      default Object getFetchPasswordData()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#get_password_data Instance#get_password_data}.
      default Object getHibernation()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#hibernation Instance#hibernation}.
      default String getHostId()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#host_id Instance#host_id}.
      default String getHostResourceGroupArn()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#host_resource_group_arn Instance#host_resource_group_arn}.
      default String getIamInstanceProfile()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#iam_instance_profile Instance#iam_instance_profile}.
      default String getId()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#id Instance#id}.
      default String getInstanceInitiatedShutdownBehavior()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#instance_initiated_shutdown_behavior Instance#instance_initiated_shutdown_behavior}.
      default InstanceInstanceMarketOptions getInstanceMarketOptions()
      instance_market_options block.
      default String getInstanceType()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#instance_type Instance#instance_type}.
      default Number getIpv6AddressCount()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ipv6_address_count Instance#ipv6_address_count}.
      default List<String> getIpv6Addresses()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ipv6_addresses Instance#ipv6_addresses}.
      default String getKeyName()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#key_name Instance#key_name}.
      default InstanceLaunchTemplate getLaunchTemplate()
      launch_template block.
      default InstanceMaintenanceOptions getMaintenanceOptions()
      maintenance_options block.
      default InstanceMetadataOptions getMetadataOptions()
      metadata_options block.
      default Object getMonitoring()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#monitoring Instance#monitoring}.
      default Object getNetworkInterface()
      network_interface block.
      default String getPlacementGroup()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#placement_group Instance#placement_group}.
      default Number getPlacementPartitionNumber()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#placement_partition_number Instance#placement_partition_number}.
      default InstancePrivateDnsNameOptions getPrivateDnsNameOptions()
      private_dns_name_options block.
      default String getPrivateIp()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#private_ip Instance#private_ip}.
      default InstanceRootBlockDevice getRootBlockDevice()
      root_block_device block.
      default List<String> getSecondaryPrivateIps()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#secondary_private_ips Instance#secondary_private_ips}.
      default List<String> getSecurityGroups()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#security_groups Instance#security_groups}.
      default Object getSourceDestCheck()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#source_dest_check Instance#source_dest_check}.
      default String getSubnetId()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#subnet_id Instance#subnet_id}.
      default Map<String,​String> getTags()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tags Instance#tags}.
      default Map<String,​String> getTagsAll()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tags_all Instance#tags_all}.
      default String getTenancy()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tenancy Instance#tenancy}.
      default InstanceTimeouts getTimeouts()
      timeouts block.
      default String getUserData()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data Instance#user_data}.
      default String getUserDataBase64()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data_base64 Instance#user_data_base64}.
      default Object getUserDataReplaceOnChange()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data_replace_on_change Instance#user_data_replace_on_change}.
      default Map<String,​String> getVolumeTags()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#volume_tags Instance#volume_tags}.
      default List<String> getVpcSecurityGroupIds()
      Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#vpc_security_group_ids Instance#vpc_security_group_ids}.
      • Methods inherited from interface software.amazon.jsii.JsiiSerializable

        $jsii$toJson
      • Methods inherited from interface com.hashicorp.cdktf.TerraformMetaArguments

        getConnection, getCount, getDependsOn, getForEach, getLifecycle, getProvider, getProvisioners
    • Method Detail

      • getAmi

        @Stability(Stable)
        @Nullable
        default String getAmi()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ami Instance#ami}.
      • getAssociatePublicIpAddress

        @Stability(Stable)
        @Nullable
        default Object getAssociatePublicIpAddress()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#associate_public_ip_address Instance#associate_public_ip_address}.
      • getAvailabilityZone

        @Stability(Stable)
        @Nullable
        default String getAvailabilityZone()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#availability_zone Instance#availability_zone}.
      • getCapacityReservationSpecification

        @Stability(Stable)
        @Nullable
        default InstanceCapacityReservationSpecification getCapacityReservationSpecification()
        capacity_reservation_specification block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#capacity_reservation_specification Instance#capacity_reservation_specification}

      • getCpuCoreCount

        @Stability(Stable)
        @Nullable
        default Number getCpuCoreCount()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#cpu_core_count Instance#cpu_core_count}.
      • getCpuOptions

        @Stability(Stable)
        @Nullable
        default InstanceCpuOptions getCpuOptions()
        cpu_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#cpu_options Instance#cpu_options}

      • getCpuThreadsPerCore

        @Stability(Stable)
        @Nullable
        default Number getCpuThreadsPerCore()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#cpu_threads_per_core Instance#cpu_threads_per_core}.
      • getCreditSpecification

        @Stability(Stable)
        @Nullable
        default InstanceCreditSpecification getCreditSpecification()
        credit_specification block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#credit_specification Instance#credit_specification}

      • getDisableApiStop

        @Stability(Stable)
        @Nullable
        default Object getDisableApiStop()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#disable_api_stop Instance#disable_api_stop}.
      • getDisableApiTermination

        @Stability(Stable)
        @Nullable
        default Object getDisableApiTermination()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#disable_api_termination Instance#disable_api_termination}.
      • getEbsBlockDevice

        @Stability(Stable)
        @Nullable
        default Object getEbsBlockDevice()
        ebs_block_device block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ebs_block_device Instance#ebs_block_device}

      • getEbsOptimized

        @Stability(Stable)
        @Nullable
        default Object getEbsOptimized()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ebs_optimized Instance#ebs_optimized}.
      • getEnclaveOptions

        @Stability(Stable)
        @Nullable
        default InstanceEnclaveOptions getEnclaveOptions()
        enclave_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#enclave_options Instance#enclave_options}

      • getEphemeralBlockDevice

        @Stability(Stable)
        @Nullable
        default Object getEphemeralBlockDevice()
        ephemeral_block_device block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ephemeral_block_device Instance#ephemeral_block_device}

      • getFetchPasswordData

        @Stability(Stable)
        @Nullable
        default Object getFetchPasswordData()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#get_password_data Instance#get_password_data}.
      • getHibernation

        @Stability(Stable)
        @Nullable
        default Object getHibernation()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#hibernation Instance#hibernation}.
      • getHostId

        @Stability(Stable)
        @Nullable
        default String getHostId()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#host_id Instance#host_id}.
      • getHostResourceGroupArn

        @Stability(Stable)
        @Nullable
        default String getHostResourceGroupArn()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#host_resource_group_arn Instance#host_resource_group_arn}.
      • getIamInstanceProfile

        @Stability(Stable)
        @Nullable
        default String getIamInstanceProfile()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#iam_instance_profile Instance#iam_instance_profile}.
      • getId

        @Stability(Stable)
        @Nullable
        default String getId()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#id Instance#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

      • getInstanceInitiatedShutdownBehavior

        @Stability(Stable)
        @Nullable
        default String getInstanceInitiatedShutdownBehavior()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#instance_initiated_shutdown_behavior Instance#instance_initiated_shutdown_behavior}.
      • getInstanceMarketOptions

        @Stability(Stable)
        @Nullable
        default InstanceInstanceMarketOptions getInstanceMarketOptions()
        instance_market_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#instance_market_options Instance#instance_market_options}

      • getInstanceType

        @Stability(Stable)
        @Nullable
        default String getInstanceType()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#instance_type Instance#instance_type}.
      • getIpv6AddressCount

        @Stability(Stable)
        @Nullable
        default Number getIpv6AddressCount()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ipv6_address_count Instance#ipv6_address_count}.
      • getIpv6Addresses

        @Stability(Stable)
        @Nullable
        default List<String> getIpv6Addresses()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#ipv6_addresses Instance#ipv6_addresses}.
      • getKeyName

        @Stability(Stable)
        @Nullable
        default String getKeyName()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#key_name Instance#key_name}.
      • getLaunchTemplate

        @Stability(Stable)
        @Nullable
        default InstanceLaunchTemplate getLaunchTemplate()
        launch_template block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#launch_template Instance#launch_template}

      • getMaintenanceOptions

        @Stability(Stable)
        @Nullable
        default InstanceMaintenanceOptions getMaintenanceOptions()
        maintenance_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#maintenance_options Instance#maintenance_options}

      • getMetadataOptions

        @Stability(Stable)
        @Nullable
        default InstanceMetadataOptions getMetadataOptions()
        metadata_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#metadata_options Instance#metadata_options}

      • getMonitoring

        @Stability(Stable)
        @Nullable
        default Object getMonitoring()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#monitoring Instance#monitoring}.
      • getNetworkInterface

        @Stability(Stable)
        @Nullable
        default Object getNetworkInterface()
        network_interface block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#network_interface Instance#network_interface}

      • getPlacementGroup

        @Stability(Stable)
        @Nullable
        default String getPlacementGroup()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#placement_group Instance#placement_group}.
      • getPlacementPartitionNumber

        @Stability(Stable)
        @Nullable
        default Number getPlacementPartitionNumber()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#placement_partition_number Instance#placement_partition_number}.
      • getPrivateDnsNameOptions

        @Stability(Stable)
        @Nullable
        default InstancePrivateDnsNameOptions getPrivateDnsNameOptions()
        private_dns_name_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#private_dns_name_options Instance#private_dns_name_options}

      • getPrivateIp

        @Stability(Stable)
        @Nullable
        default String getPrivateIp()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#private_ip Instance#private_ip}.
      • getRootBlockDevice

        @Stability(Stable)
        @Nullable
        default InstanceRootBlockDevice getRootBlockDevice()
        root_block_device block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#root_block_device Instance#root_block_device}

      • getSecondaryPrivateIps

        @Stability(Stable)
        @Nullable
        default List<String> getSecondaryPrivateIps()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#secondary_private_ips Instance#secondary_private_ips}.
      • getSecurityGroups

        @Stability(Stable)
        @Nullable
        default List<String> getSecurityGroups()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#security_groups Instance#security_groups}.
      • getSourceDestCheck

        @Stability(Stable)
        @Nullable
        default Object getSourceDestCheck()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#source_dest_check Instance#source_dest_check}.
      • getSubnetId

        @Stability(Stable)
        @Nullable
        default String getSubnetId()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#subnet_id Instance#subnet_id}.
      • getTags

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getTags()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tags Instance#tags}.
      • getTagsAll

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getTagsAll()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tags_all Instance#tags_all}.
      • getTenancy

        @Stability(Stable)
        @Nullable
        default String getTenancy()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#tenancy Instance#tenancy}.
      • getTimeouts

        @Stability(Stable)
        @Nullable
        default InstanceTimeouts getTimeouts()
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#timeouts Instance#timeouts}

      • getUserData

        @Stability(Stable)
        @Nullable
        default String getUserData()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data Instance#user_data}.
      • getUserDataBase64

        @Stability(Stable)
        @Nullable
        default String getUserDataBase64()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data_base64 Instance#user_data_base64}.
      • getUserDataReplaceOnChange

        @Stability(Stable)
        @Nullable
        default Object getUserDataReplaceOnChange()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#user_data_replace_on_change Instance#user_data_replace_on_change}.
      • getVolumeTags

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getVolumeTags()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#volume_tags Instance#volume_tags}.
      • getVpcSecurityGroupIds

        @Stability(Stable)
        @Nullable
        default List<String> getVpcSecurityGroupIds()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.6.1/docs/resources/instance#vpc_security_group_ids Instance#vpc_security_group_ids}.