Class ComputeInstanceGroupManager.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_instance_group_manager.ComputeInstanceGroupManager.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeInstanceGroupManager>
- Enclosing class:
- ComputeInstanceGroupManager
@Stability(Stable) public static final class ComputeInstanceGroupManager.Builder extends Object implements software.amazon.jsii.Builder<ComputeInstanceGroupManager>
A fluent builder forComputeInstanceGroupManager.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ComputeInstanceGroupManager.BuilderallInstancesConfig(ComputeInstanceGroupManagerAllInstancesConfig allInstancesConfig)all_instances_config block.ComputeInstanceGroupManager.BuilderautoHealingPolicies(ComputeInstanceGroupManagerAutoHealingPolicies autoHealingPolicies)auto_healing_policies block.ComputeInstanceGroupManager.BuilderbaseInstanceName(String baseInstanceName)The base instance name to use for instances in this group.ComputeInstanceGroupManagerbuild()ComputeInstanceGroupManager.Builderconnection(com.hashicorp.cdktf.SSHProvisionerConnection connection)ComputeInstanceGroupManager.Builderconnection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)ComputeInstanceGroupManager.Buildercount(com.hashicorp.cdktf.TerraformCount count)ComputeInstanceGroupManager.Buildercount(Number count)static ComputeInstanceGroupManager.Buildercreate(software.constructs.Construct scope, String id)ComputeInstanceGroupManager.BuilderdependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)ComputeInstanceGroupManager.Builderdescription(String description)An optional textual description of the instance group manager.ComputeInstanceGroupManager.BuilderforEach(com.hashicorp.cdktf.ITerraformIterator forEach)ComputeInstanceGroupManager.Builderid(String id)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#id ComputeInstanceGroupManager#id}.ComputeInstanceGroupManager.BuilderinstanceLifecyclePolicy(ComputeInstanceGroupManagerInstanceLifecyclePolicy instanceLifecyclePolicy)instance_lifecycle_policy block.ComputeInstanceGroupManager.Builderlifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)ComputeInstanceGroupManager.BuilderlistManagedInstancesResults(String listManagedInstancesResults)Pagination behavior of the listManagedInstances API method for this managed instance group.ComputeInstanceGroupManager.Buildername(String name)The name of the instance group manager.ComputeInstanceGroupManager.BuildernamedPort(com.hashicorp.cdktf.IResolvable namedPort)named_port block.ComputeInstanceGroupManager.BuildernamedPort(List<? extends ComputeInstanceGroupManagerNamedPort> namedPort)named_port block.ComputeInstanceGroupManager.Builderproject(String project)The ID of the project in which the resource belongs.ComputeInstanceGroupManager.Builderprovider(com.hashicorp.cdktf.TerraformProvider provider)ComputeInstanceGroupManager.Builderprovisioners(List<? extends Object> provisioners)ComputeInstanceGroupManager.BuilderstatefulDisk(com.hashicorp.cdktf.IResolvable statefulDisk)stateful_disk block.ComputeInstanceGroupManager.BuilderstatefulDisk(List<? extends ComputeInstanceGroupManagerStatefulDisk> statefulDisk)stateful_disk block.ComputeInstanceGroupManager.BuilderstatefulExternalIp(com.hashicorp.cdktf.IResolvable statefulExternalIp)stateful_external_ip block.ComputeInstanceGroupManager.BuilderstatefulExternalIp(List<? extends ComputeInstanceGroupManagerStatefulExternalIp> statefulExternalIp)stateful_external_ip block.ComputeInstanceGroupManager.BuilderstatefulInternalIp(com.hashicorp.cdktf.IResolvable statefulInternalIp)stateful_internal_ip block.ComputeInstanceGroupManager.BuilderstatefulInternalIp(List<? extends ComputeInstanceGroupManagerStatefulInternalIp> statefulInternalIp)stateful_internal_ip block.ComputeInstanceGroupManager.BuildertargetPools(List<String> targetPools)The full URL of all target pools to which new instances in the group are added.ComputeInstanceGroupManager.BuildertargetSize(Number targetSize)The target number of running instances for this managed instance group.ComputeInstanceGroupManager.Buildertimeouts(ComputeInstanceGroupManagerTimeouts timeouts)timeouts block.ComputeInstanceGroupManager.BuilderupdatePolicy(ComputeInstanceGroupManagerUpdatePolicy updatePolicy)update_policy block.ComputeInstanceGroupManager.Builderversion(com.hashicorp.cdktf.IResolvable version)version block.ComputeInstanceGroupManager.Builderversion(List<? extends ComputeInstanceGroupManagerVersion> version)version block.ComputeInstanceGroupManager.BuilderwaitForInstances(com.hashicorp.cdktf.IResolvable waitForInstances)Whether to wait for all instances to be created/updated before returning.ComputeInstanceGroupManager.BuilderwaitForInstances(Boolean waitForInstances)Whether to wait for all instances to be created/updated before returning.ComputeInstanceGroupManager.BuilderwaitForInstancesStatus(String waitForInstancesStatus)When used with wait_for_instances specifies the status to wait for.ComputeInstanceGroupManager.Builderzone(String zone)The zone that instances in this group should be created in.
-
-
-
Method Detail
-
create
@Stability(Stable) public static ComputeInstanceGroupManager.Builder create(software.constructs.Construct scope, String id)
- Parameters:
scope- The scope in which to define this construct. This parameter is required.id- The scoped construct ID. This parameter is required.- Returns:
- a new instance of
ComputeInstanceGroupManager.Builder.
-
connection
@Stability(Experimental) public ComputeInstanceGroupManager.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
connection
@Stability(Experimental) public ComputeInstanceGroupManager.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeInstanceGroupManager.Builder count(Number count)
- Parameters:
count- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeInstanceGroupManager.Builder count(com.hashicorp.cdktf.TerraformCount count)
- Parameters:
count- This parameter is required.- Returns:
this
-
dependsOn
@Stability(Experimental) public ComputeInstanceGroupManager.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
- Parameters:
dependsOn- This parameter is required.- Returns:
this
-
forEach
@Stability(Experimental) public ComputeInstanceGroupManager.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
- Parameters:
forEach- This parameter is required.- Returns:
this
-
lifecycle
@Stability(Experimental) public ComputeInstanceGroupManager.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
- Parameters:
lifecycle- This parameter is required.- Returns:
this
-
provider
@Stability(Experimental) public ComputeInstanceGroupManager.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
- Parameters:
provider- This parameter is required.- Returns:
this
-
provisioners
@Stability(Experimental) public ComputeInstanceGroupManager.Builder provisioners(List<? extends Object> provisioners)
- Parameters:
provisioners- This parameter is required.- Returns:
this
-
baseInstanceName
@Stability(Stable) public ComputeInstanceGroupManager.Builder baseInstanceName(String baseInstanceName)
The base instance name to use for instances in this group.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_instance_group_manager#base_instance_name ComputeInstanceGroupManager#base_instance_name}
- Parameters:
baseInstanceName- The base instance name to use for instances in this group. This parameter is required.- Returns:
this
-
name
@Stability(Stable) public ComputeInstanceGroupManager.Builder name(String name)
The name of the instance group manager.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_instance_group_manager#name ComputeInstanceGroupManager#name}
- Parameters:
name- The name of the instance group manager. This parameter is required.- Returns:
this
-
version
@Stability(Stable) public ComputeInstanceGroupManager.Builder version(com.hashicorp.cdktf.IResolvable version)
version block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#version ComputeInstanceGroupManager#version}
- Parameters:
version- version block. This parameter is required.- Returns:
this
-
version
@Stability(Stable) public ComputeInstanceGroupManager.Builder version(List<? extends ComputeInstanceGroupManagerVersion> version)
version block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#version ComputeInstanceGroupManager#version}
- Parameters:
version- version block. This parameter is required.- Returns:
this
-
allInstancesConfig
@Stability(Stable) public ComputeInstanceGroupManager.Builder allInstancesConfig(ComputeInstanceGroupManagerAllInstancesConfig allInstancesConfig)
all_instances_config block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#all_instances_config ComputeInstanceGroupManager#all_instances_config}
- Parameters:
allInstancesConfig- all_instances_config block. This parameter is required.- Returns:
this
-
autoHealingPolicies
@Stability(Stable) public ComputeInstanceGroupManager.Builder autoHealingPolicies(ComputeInstanceGroupManagerAutoHealingPolicies autoHealingPolicies)
auto_healing_policies block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#auto_healing_policies ComputeInstanceGroupManager#auto_healing_policies}
- Parameters:
autoHealingPolicies- auto_healing_policies block. This parameter is required.- Returns:
this
-
description
@Stability(Stable) public ComputeInstanceGroupManager.Builder description(String 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_instance_group_manager#description ComputeInstanceGroupManager#description}
- Parameters:
description- An optional textual description of the instance group manager. This parameter is required.- Returns:
this
-
id
@Stability(Stable) public ComputeInstanceGroupManager.Builder id(String id)
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#id ComputeInstanceGroupManager#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.
- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#id ComputeInstanceGroupManager#id}. This parameter is required.- Returns:
this
-
instanceLifecyclePolicy
@Stability(Stable) public ComputeInstanceGroupManager.Builder instanceLifecyclePolicy(ComputeInstanceGroupManagerInstanceLifecyclePolicy instanceLifecyclePolicy)
instance_lifecycle_policy block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#instance_lifecycle_policy ComputeInstanceGroupManager#instance_lifecycle_policy}
- Parameters:
instanceLifecyclePolicy- instance_lifecycle_policy block. This parameter is required.- Returns:
this
-
listManagedInstancesResults
@Stability(Stable) public ComputeInstanceGroupManager.Builder listManagedInstancesResults(String 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_instance_group_manager#list_managed_instances_results ComputeInstanceGroupManager#list_managed_instances_results}
- Parameters:
listManagedInstancesResults- Pagination behavior of the listManagedInstances API method for this managed instance group. This parameter is required.- Returns:
this
-
namedPort
@Stability(Stable) public ComputeInstanceGroupManager.Builder namedPort(com.hashicorp.cdktf.IResolvable namedPort)
named_port block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#named_port ComputeInstanceGroupManager#named_port}
- Parameters:
namedPort- named_port block. This parameter is required.- Returns:
this
-
namedPort
@Stability(Stable) public ComputeInstanceGroupManager.Builder namedPort(List<? extends ComputeInstanceGroupManagerNamedPort> namedPort)
named_port block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#named_port ComputeInstanceGroupManager#named_port}
- Parameters:
namedPort- named_port block. This parameter is required.- Returns:
this
-
project
@Stability(Stable) public ComputeInstanceGroupManager.Builder project(String 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_instance_group_manager#project ComputeInstanceGroupManager#project}
- Parameters:
project- The ID of the project in which the resource belongs. This parameter is required.- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulDisk(com.hashicorp.cdktf.IResolvable statefulDisk)
stateful_disk block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_disk ComputeInstanceGroupManager#stateful_disk}
- Parameters:
statefulDisk- stateful_disk block. This parameter is required.- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulDisk(List<? extends ComputeInstanceGroupManagerStatefulDisk> statefulDisk)
stateful_disk block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_disk ComputeInstanceGroupManager#stateful_disk}
- Parameters:
statefulDisk- stateful_disk block. This parameter is required.- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulExternalIp(com.hashicorp.cdktf.IResolvable statefulExternalIp)
stateful_external_ip block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_external_ip ComputeInstanceGroupManager#stateful_external_ip}
- Parameters:
statefulExternalIp- stateful_external_ip block. This parameter is required.- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulExternalIp(List<? extends ComputeInstanceGroupManagerStatefulExternalIp> statefulExternalIp)
stateful_external_ip block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_external_ip ComputeInstanceGroupManager#stateful_external_ip}
- Parameters:
statefulExternalIp- stateful_external_ip block. This parameter is required.- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulInternalIp(com.hashicorp.cdktf.IResolvable statefulInternalIp)
stateful_internal_ip block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_internal_ip ComputeInstanceGroupManager#stateful_internal_ip}
- Parameters:
statefulInternalIp- stateful_internal_ip block. This parameter is required.- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeInstanceGroupManager.Builder statefulInternalIp(List<? extends ComputeInstanceGroupManagerStatefulInternalIp> statefulInternalIp)
stateful_internal_ip block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#stateful_internal_ip ComputeInstanceGroupManager#stateful_internal_ip}
- Parameters:
statefulInternalIp- stateful_internal_ip block. This parameter is required.- Returns:
this
-
targetPools
@Stability(Stable) public ComputeInstanceGroupManager.Builder targetPools(List<String> 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_instance_group_manager#target_pools ComputeInstanceGroupManager#target_pools}
- Parameters:
targetPools- The full URL of all target pools to which new instances in the group are added. This parameter is required.- Returns:
this
-
targetSize
@Stability(Stable) public ComputeInstanceGroupManager.Builder targetSize(Number 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_instance_group_manager#target_size ComputeInstanceGroupManager#target_size}
- Parameters:
targetSize- The target number of running instances for this managed instance group. This parameter is required.- Returns:
this
-
timeouts
@Stability(Stable) public ComputeInstanceGroupManager.Builder timeouts(ComputeInstanceGroupManagerTimeouts timeouts)
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#timeouts ComputeInstanceGroupManager#timeouts}
- Parameters:
timeouts- timeouts block. This parameter is required.- Returns:
this
-
updatePolicy
@Stability(Stable) public ComputeInstanceGroupManager.Builder updatePolicy(ComputeInstanceGroupManagerUpdatePolicy updatePolicy)
update_policy block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#update_policy ComputeInstanceGroupManager#update_policy}
- Parameters:
updatePolicy- update_policy block. This parameter is required.- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeInstanceGroupManager.Builder waitForInstances(Boolean 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_instance_group_manager#wait_for_instances ComputeInstanceGroupManager#wait_for_instances}
- Parameters:
waitForInstances- Whether to wait for all instances to be created/updated before returning. This parameter is required.- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeInstanceGroupManager.Builder waitForInstances(com.hashicorp.cdktf.IResolvable 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_instance_group_manager#wait_for_instances ComputeInstanceGroupManager#wait_for_instances}
- Parameters:
waitForInstances- Whether to wait for all instances to be created/updated before returning. This parameter is required.- Returns:
this
-
waitForInstancesStatus
@Stability(Stable) public ComputeInstanceGroupManager.Builder waitForInstancesStatus(String 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_instance_group_manager#wait_for_instances_status ComputeInstanceGroupManager#wait_for_instances_status}
- Parameters:
waitForInstancesStatus- When used with wait_for_instances specifies the status to wait for. This parameter is required.- Returns:
this
-
zone
@Stability(Stable) public ComputeInstanceGroupManager.Builder zone(String zone)
The zone that instances in this group should be created in.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_instance_group_manager#zone ComputeInstanceGroupManager#zone}
- Parameters:
zone- The zone that instances in this group should be created in. This parameter is required.- Returns:
this
-
build
@Stability(Stable) public ComputeInstanceGroupManager build()
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeInstanceGroupManager>- Returns:
- a newly built instance of
ComputeInstanceGroupManager.
-
-