Class NotebooksInstanceConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.notebooks_instance.NotebooksInstanceConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<NotebooksInstanceConfig>
- Enclosing interface:
- NotebooksInstanceConfig
@Stability(Stable) public static final class NotebooksInstanceConfig.Builder extends Object implements software.amazon.jsii.Builder<NotebooksInstanceConfig>
A builder forNotebooksInstanceConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
location
@Stability(Stable) public NotebooksInstanceConfig.Builder location(String location)
Sets the value ofNotebooksInstanceConfig.getLocation()- Parameters:
location- A reference to the zone where the machine resides. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#location NotebooksInstance#location}- Returns:
this
-
machineType
@Stability(Stable) public NotebooksInstanceConfig.Builder machineType(String machineType)
Sets the value ofNotebooksInstanceConfig.getMachineType()- Parameters:
machineType- A reference to a machine type which defines VM kind. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#machine_type NotebooksInstance#machine_type}- Returns:
this
-
name
@Stability(Stable) public NotebooksInstanceConfig.Builder name(String name)
Sets the value ofNotebooksInstanceConfig.getName()- Parameters:
name- The name specified for the Notebook instance. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#name NotebooksInstance#name}- Returns:
this
-
acceleratorConfig
@Stability(Stable) public NotebooksInstanceConfig.Builder acceleratorConfig(NotebooksInstanceAcceleratorConfig acceleratorConfig)
Sets the value ofNotebooksInstanceConfig.getAcceleratorConfig()- Parameters:
acceleratorConfig- accelerator_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#accelerator_config NotebooksInstance#accelerator_config}- Returns:
this
-
bootDiskSizeGb
@Stability(Stable) public NotebooksInstanceConfig.Builder bootDiskSizeGb(Number bootDiskSizeGb)
Sets the value ofNotebooksInstanceConfig.getBootDiskSizeGb()- Parameters:
bootDiskSizeGb- The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not specified, this defaults to 100. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#boot_disk_size_gb NotebooksInstance#boot_disk_size_gb}- Returns:
this
-
bootDiskType
@Stability(Stable) public NotebooksInstanceConfig.Builder bootDiskType(String bootDiskType)
Sets the value ofNotebooksInstanceConfig.getBootDiskType()- Parameters:
bootDiskType- Possible disk types for notebook instances. Possible values: ["DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME"]. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#boot_disk_type NotebooksInstance#boot_disk_type}- Returns:
this
-
containerImage
@Stability(Stable) public NotebooksInstanceConfig.Builder containerImage(NotebooksInstanceContainerImage containerImage)
Sets the value ofNotebooksInstanceConfig.getContainerImage()- Parameters:
containerImage- container_image block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#container_image NotebooksInstance#container_image}- Returns:
this
-
createTime
@Stability(Stable) public NotebooksInstanceConfig.Builder createTime(String createTime)
Sets the value ofNotebooksInstanceConfig.getCreateTime()- Parameters:
createTime- Instance creation time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#create_time NotebooksInstance#create_time}- Returns:
this
-
customGpuDriverPath
@Stability(Stable) public NotebooksInstanceConfig.Builder customGpuDriverPath(String customGpuDriverPath)
Sets the value ofNotebooksInstanceConfig.getCustomGpuDriverPath()- Parameters:
customGpuDriverPath- Specify a custom Cloud Storage path where the GPU driver is stored. If not specified, we'll automatically choose from official GPU drivers. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#custom_gpu_driver_path NotebooksInstance#custom_gpu_driver_path}- Returns:
this
-
dataDiskSizeGb
@Stability(Stable) public NotebooksInstanceConfig.Builder dataDiskSizeGb(Number dataDiskSizeGb)
Sets the value ofNotebooksInstanceConfig.getDataDiskSizeGb()- Parameters:
dataDiskSizeGb- The size of the data disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). You can choose the size of the data disk based on how big your notebooks and data are. If not specified, this defaults to 100. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#data_disk_size_gb NotebooksInstance#data_disk_size_gb}- Returns:
this
-
dataDiskType
@Stability(Stable) public NotebooksInstanceConfig.Builder dataDiskType(String dataDiskType)
Sets the value ofNotebooksInstanceConfig.getDataDiskType()- Parameters:
dataDiskType- Possible disk types for notebook instances. Possible values: ["DISK_TYPE_UNSPECIFIED", "PD_STANDARD", "PD_SSD", "PD_BALANCED", "PD_EXTREME"]. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#data_disk_type NotebooksInstance#data_disk_type}- Returns:
this
-
desiredState
@Stability(Stable) public NotebooksInstanceConfig.Builder desiredState(String desiredState)
Sets the value ofNotebooksInstanceConfig.getDesiredState()- Parameters:
desiredState- Desired state of the Notebook Instance. Set this field to 'ACTIVE' to start the Instance, and 'STOPPED' to stop the Instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#desired_state NotebooksInstance#desired_state}- Returns:
this
-
diskEncryption
@Stability(Stable) public NotebooksInstanceConfig.Builder diskEncryption(String diskEncryption)
Sets the value ofNotebooksInstanceConfig.getDiskEncryption()- Parameters:
diskEncryption- Disk encryption method used on the boot and data disks, defaults to GMEK. Possible values: ["DISK_ENCRYPTION_UNSPECIFIED", "GMEK", "CMEK"]. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#disk_encryption NotebooksInstance#disk_encryption}- Returns:
this
-
id
@Stability(Stable) public NotebooksInstanceConfig.Builder id(String id)
Sets the value ofNotebooksInstanceConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#id NotebooksInstance#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.- Returns:
this
-
installGpuDriver
@Stability(Stable) public NotebooksInstanceConfig.Builder installGpuDriver(Boolean installGpuDriver)
Sets the value ofNotebooksInstanceConfig.getInstallGpuDriver()- Parameters:
installGpuDriver- Whether the end user authorizes Google Cloud to install GPU driver on this instance. If this field is empty or set to false, the GPU driver won't be installed. Only applicable to instances with GPUs. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#install_gpu_driver NotebooksInstance#install_gpu_driver}- Returns:
this
-
installGpuDriver
@Stability(Stable) public NotebooksInstanceConfig.Builder installGpuDriver(com.hashicorp.cdktf.IResolvable installGpuDriver)
Sets the value ofNotebooksInstanceConfig.getInstallGpuDriver()- Parameters:
installGpuDriver- Whether the end user authorizes Google Cloud to install GPU driver on this instance. If this field is empty or set to false, the GPU driver won't be installed. Only applicable to instances with GPUs. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#install_gpu_driver NotebooksInstance#install_gpu_driver}- Returns:
this
-
instanceOwners
@Stability(Stable) public NotebooksInstanceConfig.Builder instanceOwners(List<String> instanceOwners)
Sets the value ofNotebooksInstanceConfig.getInstanceOwners()- Parameters:
instanceOwners- The list of owners of this instance after creation. Format: alias@example.com. Currently supports one owner only. If not specified, all of the service account users of your VM instance's service account can use the instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#instance_owners NotebooksInstance#instance_owners}- Returns:
this
-
kmsKey
@Stability(Stable) public NotebooksInstanceConfig.Builder kmsKey(String kmsKey)
Sets the value ofNotebooksInstanceConfig.getKmsKey()- Parameters:
kmsKey- The KMS key used to encrypt the disks, only applicable if diskEncryption is CMEK. Format: projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#kms_key NotebooksInstance#kms_key}- Returns:
this
-
labels
@Stability(Stable) public NotebooksInstanceConfig.Builder labels(Map<String,String> labels)
Sets the value ofNotebooksInstanceConfig.getLabels()- Parameters:
labels- Labels to apply to this instance. These can be later modified by the setLabels method. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. **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/notebooks_instance#labels NotebooksInstance#labels}- Returns:
this
-
metadata
@Stability(Stable) public NotebooksInstanceConfig.Builder metadata(Map<String,String> metadata)
Sets the value ofNotebooksInstanceConfig.getMetadata()- Parameters:
metadata- Custom metadata to apply to this instance. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#metadata NotebooksInstance#metadata}- Returns:
this
-
network
@Stability(Stable) public NotebooksInstanceConfig.Builder network(String network)
Sets the value ofNotebooksInstanceConfig.getNetwork()- Parameters:
network- The name of the VPC that this instance is in. Format: projects/{project_id}/global/networks/{network_id}. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#network NotebooksInstance#network}- Returns:
this
-
nicType
@Stability(Stable) public NotebooksInstanceConfig.Builder nicType(String nicType)
Sets the value ofNotebooksInstanceConfig.getNicType()- Parameters:
nicType- The type of vNIC driver. Possible values: ["UNSPECIFIED_NIC_TYPE", "VIRTIO_NET", "GVNIC"]. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#nic_type NotebooksInstance#nic_type}- Returns:
this
-
noProxyAccess
@Stability(Stable) public NotebooksInstanceConfig.Builder noProxyAccess(Boolean noProxyAccess)
Sets the value ofNotebooksInstanceConfig.getNoProxyAccess()- Parameters:
noProxyAccess- The notebook instance will not register with the proxy.. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_proxy_access NotebooksInstance#no_proxy_access}- Returns:
this
-
noProxyAccess
@Stability(Stable) public NotebooksInstanceConfig.Builder noProxyAccess(com.hashicorp.cdktf.IResolvable noProxyAccess)
Sets the value ofNotebooksInstanceConfig.getNoProxyAccess()- Parameters:
noProxyAccess- The notebook instance will not register with the proxy.. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_proxy_access NotebooksInstance#no_proxy_access}- Returns:
this
-
noPublicIp
@Stability(Stable) public NotebooksInstanceConfig.Builder noPublicIp(Boolean noPublicIp)
Sets the value ofNotebooksInstanceConfig.getNoPublicIp()- Parameters:
noPublicIp- No public IP will be assigned to this instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_public_ip NotebooksInstance#no_public_ip}- Returns:
this
-
noPublicIp
@Stability(Stable) public NotebooksInstanceConfig.Builder noPublicIp(com.hashicorp.cdktf.IResolvable noPublicIp)
Sets the value ofNotebooksInstanceConfig.getNoPublicIp()- Parameters:
noPublicIp- No public IP will be assigned to this instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_public_ip NotebooksInstance#no_public_ip}- Returns:
this
-
noRemoveDataDisk
@Stability(Stable) public NotebooksInstanceConfig.Builder noRemoveDataDisk(Boolean noRemoveDataDisk)
Sets the value ofNotebooksInstanceConfig.getNoRemoveDataDisk()- Parameters:
noRemoveDataDisk- If true, the data disk will not be auto deleted when deleting the instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_remove_data_disk NotebooksInstance#no_remove_data_disk}- Returns:
this
-
noRemoveDataDisk
@Stability(Stable) public NotebooksInstanceConfig.Builder noRemoveDataDisk(com.hashicorp.cdktf.IResolvable noRemoveDataDisk)
Sets the value ofNotebooksInstanceConfig.getNoRemoveDataDisk()- Parameters:
noRemoveDataDisk- If true, the data disk will not be auto deleted when deleting the instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#no_remove_data_disk NotebooksInstance#no_remove_data_disk}- Returns:
this
-
postStartupScript
@Stability(Stable) public NotebooksInstanceConfig.Builder postStartupScript(String postStartupScript)
Sets the value ofNotebooksInstanceConfig.getPostStartupScript()- Parameters:
postStartupScript- Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-name). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#post_startup_script NotebooksInstance#post_startup_script}- Returns:
this
-
project
@Stability(Stable) public NotebooksInstanceConfig.Builder project(String project)
Sets the value ofNotebooksInstanceConfig.getProject()- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#project NotebooksInstance#project}.- Returns:
this
-
reservationAffinity
@Stability(Stable) public NotebooksInstanceConfig.Builder reservationAffinity(NotebooksInstanceReservationAffinity reservationAffinity)
Sets the value ofNotebooksInstanceConfig.getReservationAffinity()- Parameters:
reservationAffinity- reservation_affinity block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#reservation_affinity NotebooksInstance#reservation_affinity}- Returns:
this
-
serviceAccount
@Stability(Stable) public NotebooksInstanceConfig.Builder serviceAccount(String serviceAccount)
Sets the value ofNotebooksInstanceConfig.getServiceAccount()- Parameters:
serviceAccount- The service account on this instance, giving access to other Google Cloud services. You can use any service account within the same project, but you must have the service account user permission to use the instance. If not specified, the Compute Engine default service account is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#service_account NotebooksInstance#service_account}- Returns:
this
-
serviceAccountScopes
@Stability(Stable) public NotebooksInstanceConfig.Builder serviceAccountScopes(List<String> serviceAccountScopes)
Sets the value ofNotebooksInstanceConfig.getServiceAccountScopes()- Parameters:
serviceAccountScopes- Optional. The URIs of service account scopes to be included in Compute Engine instances. If not specified, the following scopes are defined: * https://www.googleapis.com/auth/cloud-platform * https://www.googleapis.com/auth/userinfo.email Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#service_account_scopes NotebooksInstance#service_account_scopes}- Returns:
this
-
shieldedInstanceConfig
@Stability(Stable) public NotebooksInstanceConfig.Builder shieldedInstanceConfig(NotebooksInstanceShieldedInstanceConfig shieldedInstanceConfig)
Sets the value ofNotebooksInstanceConfig.getShieldedInstanceConfig()- Parameters:
shieldedInstanceConfig- shielded_instance_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#shielded_instance_config NotebooksInstance#shielded_instance_config}- Returns:
this
-
subnet
@Stability(Stable) public NotebooksInstanceConfig.Builder subnet(String subnet)
Sets the value ofNotebooksInstanceConfig.getSubnet()- Parameters:
subnet- The name of the subnet that this instance is in. Format: projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#subnet NotebooksInstance#subnet}- Returns:
this
-
tags
@Stability(Stable) public NotebooksInstanceConfig.Builder tags(List<String> tags)
Sets the value ofNotebooksInstanceConfig.getTags()- Parameters:
tags- The Compute Engine tags to add to instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#tags NotebooksInstance#tags}- Returns:
this
-
timeouts
@Stability(Stable) public NotebooksInstanceConfig.Builder timeouts(NotebooksInstanceTimeouts timeouts)
Sets the value ofNotebooksInstanceConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#timeouts NotebooksInstance#timeouts}- Returns:
this
-
updateTime
@Stability(Stable) public NotebooksInstanceConfig.Builder updateTime(String updateTime)
Sets the value ofNotebooksInstanceConfig.getUpdateTime()- Parameters:
updateTime- Instance update time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#update_time NotebooksInstance#update_time}- Returns:
this
-
vmImage
@Stability(Stable) public NotebooksInstanceConfig.Builder vmImage(NotebooksInstanceVmImage vmImage)
Sets the value ofNotebooksInstanceConfig.getVmImage()- Parameters:
vmImage- vm_image block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/notebooks_instance#vm_image NotebooksInstance#vm_image}- Returns:
this
-
connection
@Stability(Experimental) public NotebooksInstanceConfig.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
connection
@Stability(Experimental) public NotebooksInstanceConfig.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public NotebooksInstanceConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public NotebooksInstanceConfig.Builder count(com.hashicorp.cdktf.TerraformCount count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
dependsOn
@Stability(Experimental) public NotebooksInstanceConfig.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
Sets the value ofTerraformMetaArguments.getDependsOn()- Parameters:
dependsOn- the value to be set.- Returns:
this
-
forEach
@Stability(Experimental) public NotebooksInstanceConfig.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
Sets the value ofTerraformMetaArguments.getForEach()- Parameters:
forEach- the value to be set.- Returns:
this
-
lifecycle
@Stability(Experimental) public NotebooksInstanceConfig.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
Sets the value ofTerraformMetaArguments.getLifecycle()- Parameters:
lifecycle- the value to be set.- Returns:
this
-
provider
@Stability(Experimental) public NotebooksInstanceConfig.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
Sets the value ofTerraformMetaArguments.getProvider()- Parameters:
provider- the value to be set.- Returns:
this
-
provisioners
@Stability(Experimental) public NotebooksInstanceConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public NotebooksInstanceConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<NotebooksInstanceConfig>- Returns:
- a new instance of
NotebooksInstanceConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-