Interface ComputeInstanceConfig

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

    @Generated(value="jsii-pacmak/1.102.0 (build e354887)",
               date="2024-08-31T03:59:18.464Z")
    @Stability(Stable)
    public interface ComputeInstanceConfig
    extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
    • Method Detail

      • getBootDisk

        @Stability(Stable)
        @NotNull
        ComputeInstanceBootDisk getBootDisk()
        boot_disk block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#boot_disk ComputeInstance#boot_disk}

      • getMachineType

        @Stability(Stable)
        @NotNull
        String getMachineType()
        The machine type to create.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#machine_type ComputeInstance#machine_type}

      • getName

        @Stability(Stable)
        @NotNull
        String getName()
        The name of the instance. One of name or self_link must be provided.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#name ComputeInstance#name}

      • getNetworkInterface

        @Stability(Stable)
        @NotNull
        Object getNetworkInterface()
        network_interface block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#network_interface ComputeInstance#network_interface}

      • getAdvancedMachineFeatures

        @Stability(Stable)
        @Nullable
        default ComputeInstanceAdvancedMachineFeatures getAdvancedMachineFeatures()
        advanced_machine_features block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#advanced_machine_features ComputeInstance#advanced_machine_features}

      • getAllowStoppingForUpdate

        @Stability(Stable)
        @Nullable
        default Object getAllowStoppingForUpdate()
        If true, allows Terraform to stop the instance to update its properties.

        If you try to update a property that requires stopping the instance without setting this field, the update will fail. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#allow_stopping_for_update ComputeInstance#allow_stopping_for_update}

      • getAttachedDisk

        @Stability(Stable)
        @Nullable
        default Object getAttachedDisk()
        attached_disk block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#attached_disk ComputeInstance#attached_disk}

      • getCanIpForward

        @Stability(Stable)
        @Nullable
        default Object getCanIpForward()
        Whether sending and receiving of packets with non-matching source or destination IPs is allowed.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#can_ip_forward ComputeInstance#can_ip_forward}

      • getConfidentialInstanceConfig

        @Stability(Stable)
        @Nullable
        default ComputeInstanceConfidentialInstanceConfig getConfidentialInstanceConfig()
        confidential_instance_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#confidential_instance_config ComputeInstance#confidential_instance_config}

      • getDeletionProtection

        @Stability(Stable)
        @Nullable
        default Object getDeletionProtection()
        Whether deletion protection is enabled on this instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#deletion_protection ComputeInstance#deletion_protection}

      • getDescription

        @Stability(Stable)
        @Nullable
        default String getDescription()
        A brief description of the resource.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#description ComputeInstance#description}

      • getDesiredStatus

        @Stability(Stable)
        @Nullable
        default String getDesiredStatus()
        Desired status of the instance. Either "RUNNING" or "TERMINATED".

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#desired_status ComputeInstance#desired_status}

      • getEnableDisplay

        @Stability(Stable)
        @Nullable
        default Object getEnableDisplay()
        Whether the instance has virtual displays enabled.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#enable_display ComputeInstance#enable_display}

      • getGuestAccelerator

        @Stability(Stable)
        @Nullable
        default Object getGuestAccelerator()
        List of the type and count of accelerator cards attached to the instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#guest_accelerator ComputeInstance#guest_accelerator}

      • getHostname

        @Stability(Stable)
        @Nullable
        default String getHostname()
        A custom hostname for the instance.

        Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression [a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D), concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#hostname ComputeInstance#hostname}

      • getId

        @Stability(Stable)
        @Nullable
        default String getId()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#id ComputeInstance#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.

      • getLabels

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getLabels()
        A set of key/value label pairs assigned to the instance.

        **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#labels ComputeInstance#labels}

      • getMetadata

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getMetadata()
        Metadata key/value pairs made available within the instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#metadata ComputeInstance#metadata}

      • getMetadataStartupScript

        @Stability(Stable)
        @Nullable
        default String getMetadataStartupScript()
        Metadata startup scripts made available within the instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#metadata_startup_script ComputeInstance#metadata_startup_script}

      • getMinCpuPlatform

        @Stability(Stable)
        @Nullable
        default String getMinCpuPlatform()
        The minimum CPU platform specified for the VM instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#min_cpu_platform ComputeInstance#min_cpu_platform}

      • getNetworkPerformanceConfig

        @Stability(Stable)
        @Nullable
        default ComputeInstanceNetworkPerformanceConfig getNetworkPerformanceConfig()
        network_performance_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#network_performance_config ComputeInstance#network_performance_config}

      • getParams

        @Stability(Stable)
        @Nullable
        default ComputeInstanceParams getParams()
        params block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#params ComputeInstance#params}

      • getProject

        @Stability(Stable)
        @Nullable
        default String getProject()
        The ID of the project in which the resource belongs.

        If self_link is provided, this value is ignored. If neither self_link nor project are provided, the provider project is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#project ComputeInstance#project}

      • getReservationAffinity

        @Stability(Stable)
        @Nullable
        default ComputeInstanceReservationAffinity getReservationAffinity()
        reservation_affinity block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#reservation_affinity ComputeInstance#reservation_affinity}

      • getResourcePolicies

        @Stability(Stable)
        @Nullable
        default List<String> getResourcePolicies()
        A list of self_links of resource policies to attach to the instance.

        Currently a max of 1 resource policy is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#resource_policies ComputeInstance#resource_policies}

      • getScheduling

        @Stability(Stable)
        @Nullable
        default ComputeInstanceScheduling getScheduling()
        scheduling block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#scheduling ComputeInstance#scheduling}

      • getScratchDisk

        @Stability(Stable)
        @Nullable
        default Object getScratchDisk()
        scratch_disk block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#scratch_disk ComputeInstance#scratch_disk}

      • getServiceAccount

        @Stability(Stable)
        @Nullable
        default ComputeInstanceServiceAccount getServiceAccount()
        service_account block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#service_account ComputeInstance#service_account}

      • getShieldedInstanceConfig

        @Stability(Stable)
        @Nullable
        default ComputeInstanceShieldedInstanceConfig getShieldedInstanceConfig()
        shielded_instance_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#shielded_instance_config ComputeInstance#shielded_instance_config}

      • getTags

        @Stability(Stable)
        @Nullable
        default List<String> getTags()
        The list of tags attached to the instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#tags ComputeInstance#tags}

      • getTimeouts

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

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#timeouts ComputeInstance#timeouts}

      • getZone

        @Stability(Stable)
        @Nullable
        default String getZone()
        The zone of the instance.

        If self_link is provided, this value is ignored. If neither self_link nor zone are provided, the provider zone is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance#zone ComputeInstance#zone}