Class ComputeRegionInstanceGroupManagerConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_region_instance_group_manager.ComputeRegionInstanceGroupManagerConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeRegionInstanceGroupManagerConfig>
- Enclosing interface:
- ComputeRegionInstanceGroupManagerConfig
@Stability(Stable) public static final class ComputeRegionInstanceGroupManagerConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeRegionInstanceGroupManagerConfig>
A builder forComputeRegionInstanceGroupManagerConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
baseInstanceName
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder baseInstanceName(String baseInstanceName)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getBaseInstanceName()- Parameters:
baseInstanceName- The base instance name to use for instances in this group. This parameter is required. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#base_instance_name ComputeRegionInstanceGroupManager#base_instance_name}- Returns:
this
-
name
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder name(String name)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getName()- Parameters:
name- The name of the instance group manager. This parameter is required. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#name ComputeRegionInstanceGroupManager#name}- Returns:
this
-
version
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder version(com.hashicorp.cdktf.IResolvable version)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getVersion()- Parameters:
version- version 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_group_manager#version ComputeRegionInstanceGroupManager#version}- Returns:
this
-
version
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder version(List<? extends ComputeRegionInstanceGroupManagerVersion> version)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getVersion()- Parameters:
version- version 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_group_manager#version ComputeRegionInstanceGroupManager#version}- Returns:
this
-
allInstancesConfig
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder allInstancesConfig(ComputeRegionInstanceGroupManagerAllInstancesConfig allInstancesConfig)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getAllInstancesConfig()- Parameters:
allInstancesConfig- all_instances_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#all_instances_config ComputeRegionInstanceGroupManager#all_instances_config}- Returns:
this
-
autoHealingPolicies
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder autoHealingPolicies(ComputeRegionInstanceGroupManagerAutoHealingPolicies autoHealingPolicies)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getAutoHealingPolicies()- Parameters:
autoHealingPolicies- auto_healing_policies block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#auto_healing_policies ComputeRegionInstanceGroupManager#auto_healing_policies}- Returns:
this
-
description
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder description(String description)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getDescription()- Parameters:
description- An optional textual description of the instance group manager. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#description ComputeRegionInstanceGroupManager#description}- Returns:
this
-
distributionPolicyTargetShape
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder distributionPolicyTargetShape(String distributionPolicyTargetShape)
- Parameters:
distributionPolicyTargetShape- The shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#distribution_policy_target_shape ComputeRegionInstanceGroupManager#distribution_policy_target_shape}- Returns:
this
-
distributionPolicyZones
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder distributionPolicyZones(List<String> distributionPolicyZones)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getDistributionPolicyZones()- Parameters:
distributionPolicyZones- The distribution policy for this managed instance group. You can specify one or more values. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#distribution_policy_zones ComputeRegionInstanceGroupManager#distribution_policy_zones}- Returns:
this
-
id
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder id(String id)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#id ComputeRegionInstanceGroupManager#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
-
instanceLifecyclePolicy
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder instanceLifecyclePolicy(ComputeRegionInstanceGroupManagerInstanceLifecyclePolicy instanceLifecyclePolicy)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getInstanceLifecyclePolicy()- Parameters:
instanceLifecyclePolicy- instance_lifecycle_policy block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#instance_lifecycle_policy ComputeRegionInstanceGroupManager#instance_lifecycle_policy}- Returns:
this
-
listManagedInstancesResults
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder listManagedInstancesResults(String listManagedInstancesResults)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getListManagedInstancesResults()- Parameters:
listManagedInstancesResults- Pagination behavior of the listManagedInstances API method for this managed instance group. Valid values are: "PAGELESS", "PAGINATED". If PAGELESS (default), Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response. If PAGINATED, pagination is enabled, maxResults and pageToken query parameters are respected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#list_managed_instances_results ComputeRegionInstanceGroupManager#list_managed_instances_results}- Returns:
this
-
namedPort
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder namedPort(com.hashicorp.cdktf.IResolvable namedPort)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getNamedPort()- Parameters:
namedPort- named_port block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#named_port ComputeRegionInstanceGroupManager#named_port}- Returns:
this
-
namedPort
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder namedPort(List<? extends ComputeRegionInstanceGroupManagerNamedPort> namedPort)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getNamedPort()- Parameters:
namedPort- named_port block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#named_port ComputeRegionInstanceGroupManager#named_port}- Returns:
this
-
project
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder project(String project)
Sets the value ofComputeRegionInstanceGroupManagerConfig.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_group_manager#project ComputeRegionInstanceGroupManager#project}- Returns:
this
-
region
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder region(String region)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getRegion()- Parameters:
region- The region where the managed instance group resides. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#region ComputeRegionInstanceGroupManager#region}- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulDisk(com.hashicorp.cdktf.IResolvable statefulDisk)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulDisk()- Parameters:
statefulDisk- stateful_disk block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_disk ComputeRegionInstanceGroupManager#stateful_disk}- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulDisk(List<? extends ComputeRegionInstanceGroupManagerStatefulDisk> statefulDisk)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulDisk()- Parameters:
statefulDisk- stateful_disk block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_disk ComputeRegionInstanceGroupManager#stateful_disk}- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulExternalIp(com.hashicorp.cdktf.IResolvable statefulExternalIp)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulExternalIp()- Parameters:
statefulExternalIp- stateful_external_ip block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_external_ip ComputeRegionInstanceGroupManager#stateful_external_ip}- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulExternalIp(List<? extends ComputeRegionInstanceGroupManagerStatefulExternalIp> statefulExternalIp)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulExternalIp()- Parameters:
statefulExternalIp- stateful_external_ip block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_external_ip ComputeRegionInstanceGroupManager#stateful_external_ip}- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulInternalIp(com.hashicorp.cdktf.IResolvable statefulInternalIp)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulInternalIp()- Parameters:
statefulInternalIp- stateful_internal_ip block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_internal_ip ComputeRegionInstanceGroupManager#stateful_internal_ip}- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder statefulInternalIp(List<? extends ComputeRegionInstanceGroupManagerStatefulInternalIp> statefulInternalIp)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getStatefulInternalIp()- Parameters:
statefulInternalIp- stateful_internal_ip block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#stateful_internal_ip ComputeRegionInstanceGroupManager#stateful_internal_ip}- Returns:
this
-
targetPools
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder targetPools(List<String> targetPools)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getTargetPools()- Parameters:
targetPools- The full URL of all target pools to which new instances in the group are added. Updating the target pools attribute does not affect existing instances. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#target_pools ComputeRegionInstanceGroupManager#target_pools}- Returns:
this
-
targetSize
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder targetSize(Number targetSize)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getTargetSize()- Parameters:
targetSize- The target number of running instances for this managed instance group. This value should always be explicitly set unless this resource is attached to an autoscaler, in which case it should never be set. Defaults to 0. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#target_size ComputeRegionInstanceGroupManager#target_size}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder timeouts(ComputeRegionInstanceGroupManagerTimeouts timeouts)
Sets the value ofComputeRegionInstanceGroupManagerConfig.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_group_manager#timeouts ComputeRegionInstanceGroupManager#timeouts}- Returns:
this
-
updatePolicy
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder updatePolicy(ComputeRegionInstanceGroupManagerUpdatePolicy updatePolicy)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getUpdatePolicy()- Parameters:
updatePolicy- update_policy block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#update_policy ComputeRegionInstanceGroupManager#update_policy}- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder waitForInstances(Boolean waitForInstances)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getWaitForInstances()- Parameters:
waitForInstances- Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#wait_for_instances ComputeRegionInstanceGroupManager#wait_for_instances}- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder waitForInstances(com.hashicorp.cdktf.IResolvable waitForInstances)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getWaitForInstances()- Parameters:
waitForInstances- Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#wait_for_instances ComputeRegionInstanceGroupManager#wait_for_instances}- Returns:
this
-
waitForInstancesStatus
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig.Builder waitForInstancesStatus(String waitForInstancesStatus)
Sets the value ofComputeRegionInstanceGroupManagerConfig.getWaitForInstancesStatus()- Parameters:
waitForInstancesStatus- When used with wait_for_instances specifies the status to wait for. When STABLE is specified this resource will wait until the instances are stable before returning. When UPDATED is set, it will wait for the version target to be reached and any per instance configs to be effective and all instances configs to be effective as well as all instances to be stable before returning. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#wait_for_instances_status ComputeRegionInstanceGroupManager#wait_for_instances_status}- Returns:
this
-
connection
@Stability(Experimental) public ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.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 ComputeRegionInstanceGroupManagerConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeRegionInstanceGroupManagerConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeRegionInstanceGroupManagerConfig>- Returns:
- a new instance of
ComputeRegionInstanceGroupManagerConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-