Interface ComputeDiskConfig
-
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable,com.hashicorp.cdktf.TerraformMetaArguments
- All Known Implementing Classes:
ComputeDiskConfig.Jsii$Proxy
@Generated(value="jsii-pacmak/1.102.0 (build e354887)", date="2024-08-31T03:59:18.342Z") @Stability(Stable) public interface ComputeDiskConfig extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classComputeDiskConfig.BuilderA builder forComputeDiskConfigstatic classComputeDiskConfig.Jsii$ProxyAn implementation forComputeDiskConfig
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static ComputeDiskConfig.Builderbuilder()default StringgetAccessMode()The accessMode of the disk.default ComputeDiskAsyncPrimaryDiskgetAsyncPrimaryDisk()async_primary_disk block.default StringgetDescription()An optional description of this resource.default ComputeDiskDiskEncryptionKeygetDiskEncryptionKey()disk_encryption_key block.default ObjectgetEnableConfidentialCompute()Whether this disk is using confidential compute mode.default ObjectgetGuestOsFeatures()guest_os_features block.default StringgetId()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#id ComputeDisk#id}.default StringgetImage()The image from which to initialize this disk.default Map<String,String>getLabels()Labels to apply to this disk.default List<String>getLicenses()Any applicable license URI.StringgetName()Name of the resource.default NumbergetPhysicalBlockSizeBytes()Physical block size of the persistent disk, in bytes.default StringgetProject()Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#project ComputeDisk#project}.default NumbergetProvisionedIops()Indicates how many IOPS must be provisioned for the disk.default NumbergetProvisionedThroughput()Indicates how much Throughput must be provisioned for the disk.default NumbergetSize()Size of the persistent disk, specified in GB.default StringgetSnapshot()The source snapshot used to create this disk.default StringgetSourceDisk()The source disk used to create this disk.default ComputeDiskSourceImageEncryptionKeygetSourceImageEncryptionKey()source_image_encryption_key block.default ComputeDiskSourceSnapshotEncryptionKeygetSourceSnapshotEncryptionKey()source_snapshot_encryption_key block.default StringgetStoragePool()The URL of the storage pool in which the new disk is created.default ComputeDiskTimeoutsgetTimeouts()timeouts block.default StringgetType()URL of the disk type resource describing which disk type to use to create the disk.default StringgetZone()A reference to the zone where the disk resides.
-
-
-
Method Detail
-
getName
@Stability(Stable) @NotNull String getName()
Name of the resource.Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D)?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#name ComputeDisk#name}
-
getAccessMode
@Stability(Stable) @Nullable default String getAccessMode()
The accessMode of the disk. For example: * READ_WRITE_SINGLE * READ_WRITE_MANY * READ_ONLY_SINGLE.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#access_mode ComputeDisk#access_mode}
-
getAsyncPrimaryDisk
@Stability(Stable) @Nullable default ComputeDiskAsyncPrimaryDisk getAsyncPrimaryDisk()
async_primary_disk block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#async_primary_disk ComputeDisk#async_primary_disk}
-
getDescription
@Stability(Stable) @Nullable default String getDescription()
An optional description of this resource. Provide this property when you create the resource.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#description ComputeDisk#description}
-
getDiskEncryptionKey
@Stability(Stable) @Nullable default ComputeDiskDiskEncryptionKey getDiskEncryptionKey()
disk_encryption_key block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#disk_encryption_key ComputeDisk#disk_encryption_key}
-
getEnableConfidentialCompute
@Stability(Stable) @Nullable default Object getEnableConfidentialCompute()
Whether this disk is using confidential compute mode.Note: Only supported on hyperdisk skus, disk_encryption_key is required when setting to true Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#enable_confidential_compute ComputeDisk#enable_confidential_compute}
-
getGuestOsFeatures
@Stability(Stable) @Nullable default Object getGuestOsFeatures()
guest_os_features block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#guest_os_features ComputeDisk#guest_os_features}
-
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_disk#id ComputeDisk#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.
-
getImage
@Stability(Stable) @Nullable default String getImage()
The image from which to initialize this disk.This can be one of: the image's 'self_link', 'projects/{project}/global/images/{image}', 'projects/{project}/global/images/family/{family}', 'global/images/{image}', 'global/images/family/{family}', 'family/{family}', '{project}/{family}', '{project}/{image}', '{family}', or '{image}'. If referred by family, the images names must include the family name. If they don't, use the [google_compute_image data source](/docs/providers/google/d/compute_image.html). For instance, the image 'centos-6-v20180104' includes its family name 'centos-6'. These images can be referred by family name here. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#image ComputeDisk#image}
-
getLabels
@Stability(Stable) @Nullable default Map<String,String> getLabels()
Labels to apply to this disk. A list of key->value pairs.**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_disk#labels ComputeDisk#labels}
-
getLicenses
@Stability(Stable) @Nullable default List<String> getLicenses()
Any applicable license URI.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#licenses ComputeDisk#licenses}
-
getPhysicalBlockSizeBytes
@Stability(Stable) @Nullable default Number getPhysicalBlockSizeBytes()
Physical block size of the persistent disk, in bytes.If not present in a request, a default value is used. Currently supported sizes are 4096 and 16384, other sizes may be added in the future. If an unsupported value is requested, the error message will list the supported values for the caller's project. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#physical_block_size_bytes ComputeDisk#physical_block_size_bytes}
-
getProject
@Stability(Stable) @Nullable default String getProject()
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#project ComputeDisk#project}.
-
getProvisionedIops
@Stability(Stable) @Nullable default Number getProvisionedIops()
Indicates how many IOPS must be provisioned for the disk.Note: Updating currently is only supported by hyperdisk skus without the need to delete and recreate the disk, hyperdisk allows for an update of IOPS every 4 hours. To update your hyperdisk more frequently, you'll need to manually delete and recreate it Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#provisioned_iops ComputeDisk#provisioned_iops}
-
getProvisionedThroughput
@Stability(Stable) @Nullable default Number getProvisionedThroughput()
Indicates how much Throughput must be provisioned for the disk.Note: Updating currently is only supported by hyperdisk skus without the need to delete and recreate the disk, hyperdisk allows for an update of Throughput every 4 hours. To update your hyperdisk more frequently, you'll need to manually delete and recreate it Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#provisioned_throughput ComputeDisk#provisioned_throughput}
-
getSize
@Stability(Stable) @Nullable default Number getSize()
Size of the persistent disk, specified in GB.You can specify this field when creating a persistent disk using the 'image' or 'snapshot' parameter, or specify it alone to create an empty persistent disk. If you specify this field along with 'image' or 'snapshot', the value must not be less than the size of the image or the size of the snapshot. ~>**NOTE** If you change the size, Terraform updates the disk size if upsizing is detected but recreates the disk if downsizing is requested. You can add 'lifecycle.prevent_destroy' in the config to prevent destroying and recreating. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#size ComputeDisk#size}
-
getSnapshot
@Stability(Stable) @Nullable default String getSnapshot()
The source snapshot used to create this disk.You can provide this as a partial or full URL to the resource. If the snapshot is in another project than this disk, you must supply a full URL. For example, the following are valid values: * 'https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot' * 'projects/project/global/snapshots/snapshot' * 'global/snapshots/snapshot' * 'snapshot' Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#snapshot ComputeDisk#snapshot}
-
getSourceDisk
@Stability(Stable) @Nullable default String getSourceDisk()
The source disk used to create this disk.You can provide this as a partial or full URL to the resource. For example, the following are valid values: * https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/disks/{disk} * https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/disks/{disk} * projects/{project}/zones/{zone}/disks/{disk} * projects/{project}/regions/{region}/disks/{disk} * zones/{zone}/disks/{disk} * regions/{region}/disks/{disk} Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#source_disk ComputeDisk#source_disk}
-
getSourceImageEncryptionKey
@Stability(Stable) @Nullable default ComputeDiskSourceImageEncryptionKey getSourceImageEncryptionKey()
source_image_encryption_key block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#source_image_encryption_key ComputeDisk#source_image_encryption_key}
-
getSourceSnapshotEncryptionKey
@Stability(Stable) @Nullable default ComputeDiskSourceSnapshotEncryptionKey getSourceSnapshotEncryptionKey()
source_snapshot_encryption_key block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#source_snapshot_encryption_key ComputeDisk#source_snapshot_encryption_key}
-
getStoragePool
@Stability(Stable) @Nullable default String getStoragePool()
The URL of the storage pool in which the new disk is created. For example: * https://www.googleapis.com/compute/v1/projects/{project}/zones/{zone}/storagePools/{storagePool} * /projects/{project}/zones/{zone}/storagePools/{storagePool}.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#storage_pool ComputeDisk#storage_pool}
-
getTimeouts
@Stability(Stable) @Nullable default ComputeDiskTimeouts getTimeouts()
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#timeouts ComputeDisk#timeouts}
-
getType
@Stability(Stable) @Nullable default String getType()
URL of the disk type resource describing which disk type to use to create the disk.Provide this when creating the disk. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#type ComputeDisk#type}
-
getZone
@Stability(Stable) @Nullable default String getZone()
A reference to the zone where the disk resides.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_disk#zone ComputeDisk#zone}
-
builder
@Stability(Stable) static ComputeDiskConfig.Builder builder()
- Returns:
- a
ComputeDiskConfig.BuilderofComputeDiskConfig
-
-