Class ComputeRegionInstanceTemplateConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_region_instance_template.ComputeRegionInstanceTemplateConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeRegionInstanceTemplateConfig>
- Enclosing interface:
- ComputeRegionInstanceTemplateConfig
@Stability(Stable) public static final class ComputeRegionInstanceTemplateConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeRegionInstanceTemplateConfig>
A builder forComputeRegionInstanceTemplateConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
disk
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder disk(com.hashicorp.cdktf.IResolvable disk)
Sets the value ofComputeRegionInstanceTemplateConfig.getDisk()- Parameters:
disk- disk block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#disk ComputeRegionInstanceTemplate#disk}- Returns:
this
-
disk
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder disk(List<? extends ComputeRegionInstanceTemplateDisk> disk)
Sets the value ofComputeRegionInstanceTemplateConfig.getDisk()- Parameters:
disk- disk block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#disk ComputeRegionInstanceTemplate#disk}- Returns:
this
-
machineType
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder machineType(String machineType)
Sets the value ofComputeRegionInstanceTemplateConfig.getMachineType()- Parameters:
machineType- The machine type to create. This parameter is required. To create a machine with a custom type (such as extended memory), format the value like custom-VCPUS-MEM_IN_MB like custom-6-20480 for 6 vCPU and 20GB of RAM. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#machine_type ComputeRegionInstanceTemplate#machine_type}- Returns:
this
-
advancedMachineFeatures
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder advancedMachineFeatures(ComputeRegionInstanceTemplateAdvancedMachineFeatures advancedMachineFeatures)
Sets the value ofComputeRegionInstanceTemplateConfig.getAdvancedMachineFeatures()- Parameters:
advancedMachineFeatures- advanced_machine_features block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#advanced_machine_features ComputeRegionInstanceTemplate#advanced_machine_features}- Returns:
this
-
canIpForward
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder canIpForward(Boolean canIpForward)
Sets the value ofComputeRegionInstanceTemplateConfig.getCanIpForward()- Parameters:
canIpForward- Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#can_ip_forward ComputeRegionInstanceTemplate#can_ip_forward}- Returns:
this
-
canIpForward
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder canIpForward(com.hashicorp.cdktf.IResolvable canIpForward)
Sets the value ofComputeRegionInstanceTemplateConfig.getCanIpForward()- Parameters:
canIpForward- Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#can_ip_forward ComputeRegionInstanceTemplate#can_ip_forward}- Returns:
this
-
confidentialInstanceConfig
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder confidentialInstanceConfig(ComputeRegionInstanceTemplateConfidentialInstanceConfig confidentialInstanceConfig)
Sets the value ofComputeRegionInstanceTemplateConfig.getConfidentialInstanceConfig()- Parameters:
confidentialInstanceConfig- confidential_instance_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#confidential_instance_config ComputeRegionInstanceTemplate#confidential_instance_config}- Returns:
this
-
description
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder description(String description)
Sets the value ofComputeRegionInstanceTemplateConfig.getDescription()- Parameters:
description- A brief description of this resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#description ComputeRegionInstanceTemplate#description}- Returns:
this
-
guestAccelerator
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder guestAccelerator(com.hashicorp.cdktf.IResolvable guestAccelerator)
Sets the value ofComputeRegionInstanceTemplateConfig.getGuestAccelerator()- Parameters:
guestAccelerator- guest_accelerator block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#guest_accelerator ComputeRegionInstanceTemplate#guest_accelerator}- Returns:
this
-
guestAccelerator
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder guestAccelerator(List<? extends ComputeRegionInstanceTemplateGuestAccelerator> guestAccelerator)
Sets the value ofComputeRegionInstanceTemplateConfig.getGuestAccelerator()- Parameters:
guestAccelerator- guest_accelerator block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#guest_accelerator ComputeRegionInstanceTemplate#guest_accelerator}- Returns:
this
-
id
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder id(String id)
Sets the value ofComputeRegionInstanceTemplateConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#id ComputeRegionInstanceTemplate#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
-
instanceDescription
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder instanceDescription(String instanceDescription)
Sets the value ofComputeRegionInstanceTemplateConfig.getInstanceDescription()- Parameters:
instanceDescription- A description of the instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#instance_description ComputeRegionInstanceTemplate#instance_description}- Returns:
this
-
labels
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder labels(Map<String,String> labels)
Sets the value ofComputeRegionInstanceTemplateConfig.getLabels()- Parameters:
labels- A set of key/value label pairs to assign to instances created from this template,. **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_region_instance_template#labels ComputeRegionInstanceTemplate#labels}- Returns:
this
-
metadata
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder metadata(Map<String,String> metadata)
Sets the value ofComputeRegionInstanceTemplateConfig.getMetadata()- Parameters:
metadata- Metadata key/value pairs to make available from within instances created from this template. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#metadata ComputeRegionInstanceTemplate#metadata}- Returns:
this
-
metadataStartupScript
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder metadataStartupScript(String metadataStartupScript)
Sets the value ofComputeRegionInstanceTemplateConfig.getMetadataStartupScript()- Parameters:
metadataStartupScript- An alternative to using the startup-script metadata key, mostly to match the compute_instance resource. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#metadata_startup_script ComputeRegionInstanceTemplate#metadata_startup_script}- Returns:
this
-
minCpuPlatform
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder minCpuPlatform(String minCpuPlatform)
Sets the value ofComputeRegionInstanceTemplateConfig.getMinCpuPlatform()- Parameters:
minCpuPlatform- Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell or Intel Skylake. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#min_cpu_platform ComputeRegionInstanceTemplate#min_cpu_platform}- Returns:
this
-
name
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder name(String name)
Sets the value ofComputeRegionInstanceTemplateConfig.getName()- Parameters:
name- The name of the instance template. If you leave this blank, Terraform will auto-generate a unique name. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#name ComputeRegionInstanceTemplate#name}- Returns:
this
-
namePrefix
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder namePrefix(String namePrefix)
Sets the value ofComputeRegionInstanceTemplateConfig.getNamePrefix()- Parameters:
namePrefix- Creates a unique name beginning with the specified prefix. Conflicts with name. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#name_prefix ComputeRegionInstanceTemplate#name_prefix}- Returns:
this
-
networkInterface
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder networkInterface(com.hashicorp.cdktf.IResolvable networkInterface)
Sets the value ofComputeRegionInstanceTemplateConfig.getNetworkInterface()- Parameters:
networkInterface- network_interface block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#network_interface ComputeRegionInstanceTemplate#network_interface}- Returns:
this
-
networkInterface
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder networkInterface(List<? extends ComputeRegionInstanceTemplateNetworkInterface> networkInterface)
Sets the value ofComputeRegionInstanceTemplateConfig.getNetworkInterface()- Parameters:
networkInterface- network_interface block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#network_interface ComputeRegionInstanceTemplate#network_interface}- Returns:
this
-
networkPerformanceConfig
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder networkPerformanceConfig(ComputeRegionInstanceTemplateNetworkPerformanceConfig networkPerformanceConfig)
Sets the value ofComputeRegionInstanceTemplateConfig.getNetworkPerformanceConfig()- Parameters:
networkPerformanceConfig- network_performance_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#network_performance_config ComputeRegionInstanceTemplate#network_performance_config}- Returns:
this
-
project
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder project(String project)
Sets the value ofComputeRegionInstanceTemplateConfig.getProject()- Parameters:
project- The ID of the project in which the resource belongs. If it is not provided, the provider project is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#project ComputeRegionInstanceTemplate#project}- Returns:
this
-
region
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder region(String region)
Sets the value ofComputeRegionInstanceTemplateConfig.getRegion()- Parameters:
region- The region in which the instance template is located. If it is not provided, the provider region is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#region ComputeRegionInstanceTemplate#region}- Returns:
this
-
reservationAffinity
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder reservationAffinity(ComputeRegionInstanceTemplateReservationAffinity reservationAffinity)
Sets the value ofComputeRegionInstanceTemplateConfig.getReservationAffinity()- Parameters:
reservationAffinity- reservation_affinity block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#reservation_affinity ComputeRegionInstanceTemplate#reservation_affinity}- Returns:
this
-
resourceManagerTags
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder resourceManagerTags(Map<String,String> resourceManagerTags)
Sets the value ofComputeRegionInstanceTemplateConfig.getResourceManagerTags()- Parameters:
resourceManagerTags- A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#resource_manager_tags ComputeRegionInstanceTemplate#resource_manager_tags}- Returns:
this
-
resourcePolicies
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder resourcePolicies(List<String> resourcePolicies)
Sets the value ofComputeRegionInstanceTemplateConfig.getResourcePolicies()- Parameters:
resourcePolicies- 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_region_instance_template#resource_policies ComputeRegionInstanceTemplate#resource_policies}- Returns:
this
-
scheduling
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder scheduling(ComputeRegionInstanceTemplateScheduling scheduling)
Sets the value ofComputeRegionInstanceTemplateConfig.getScheduling()- Parameters:
scheduling- scheduling block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#scheduling ComputeRegionInstanceTemplate#scheduling}- Returns:
this
-
serviceAccount
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder serviceAccount(ComputeRegionInstanceTemplateServiceAccount serviceAccount)
Sets the value ofComputeRegionInstanceTemplateConfig.getServiceAccount()- Parameters:
serviceAccount- service_account block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#service_account ComputeRegionInstanceTemplate#service_account}- Returns:
this
-
shieldedInstanceConfig
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder shieldedInstanceConfig(ComputeRegionInstanceTemplateShieldedInstanceConfig shieldedInstanceConfig)
Sets the value ofComputeRegionInstanceTemplateConfig.getShieldedInstanceConfig()- Parameters:
shieldedInstanceConfig- shielded_instance_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#shielded_instance_config ComputeRegionInstanceTemplate#shielded_instance_config}- Returns:
this
-
tags
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder tags(List<String> tags)
Sets the value ofComputeRegionInstanceTemplateConfig.getTags()- Parameters:
tags- Tags to attach to the instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#tags ComputeRegionInstanceTemplate#tags}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeRegionInstanceTemplateConfig.Builder timeouts(ComputeRegionInstanceTemplateTimeouts timeouts)
Sets the value ofComputeRegionInstanceTemplateConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_template#timeouts ComputeRegionInstanceTemplate#timeouts}- Returns:
this
-
connection
@Stability(Experimental) public ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.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 ComputeRegionInstanceTemplateConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeRegionInstanceTemplateConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeRegionInstanceTemplateConfig>- Returns:
- a new instance of
ComputeRegionInstanceTemplateConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-