Class ComputeInstanceGroupManagerConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_instance_group_manager.ComputeInstanceGroupManagerConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeInstanceGroupManagerConfig>
- Enclosing interface:
- ComputeInstanceGroupManagerConfig
@Stability(Stable) public static final class ComputeInstanceGroupManagerConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeInstanceGroupManagerConfig>
A builder forComputeInstanceGroupManagerConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
baseInstanceName
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder baseInstanceName(String baseInstanceName)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#base_instance_name ComputeInstanceGroupManager#base_instance_name}- Returns:
this
-
name
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder name(String name)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#name ComputeInstanceGroupManager#name}- Returns:
this
-
version
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder version(com.hashicorp.cdktf.IResolvable version)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#version ComputeInstanceGroupManager#version}- Returns:
this
-
version
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder version(List<? extends ComputeInstanceGroupManagerVersion> version)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#version ComputeInstanceGroupManager#version}- Returns:
this
-
allInstancesConfig
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder allInstancesConfig(ComputeInstanceGroupManagerAllInstancesConfig allInstancesConfig)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#all_instances_config ComputeInstanceGroupManager#all_instances_config}- Returns:
this
-
autoHealingPolicies
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder autoHealingPolicies(ComputeInstanceGroupManagerAutoHealingPolicies autoHealingPolicies)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#auto_healing_policies ComputeInstanceGroupManager#auto_healing_policies}- Returns:
this
-
description
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder description(String description)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#description ComputeInstanceGroupManager#description}- Returns:
this
-
id
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder id(String id)
Sets the value ofComputeInstanceGroupManagerConfig.getId()- 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}. 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 ComputeInstanceGroupManagerConfig.Builder instanceLifecyclePolicy(ComputeInstanceGroupManagerInstanceLifecyclePolicy instanceLifecyclePolicy)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#instance_lifecycle_policy ComputeInstanceGroupManager#instance_lifecycle_policy}- Returns:
this
-
listManagedInstancesResults
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder listManagedInstancesResults(String listManagedInstancesResults)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#list_managed_instances_results ComputeInstanceGroupManager#list_managed_instances_results}- Returns:
this
-
namedPort
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder namedPort(com.hashicorp.cdktf.IResolvable namedPort)
Sets the value ofComputeInstanceGroupManagerConfig.getNamedPort()- Parameters:
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}- Returns:
this
-
namedPort
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder namedPort(List<? extends ComputeInstanceGroupManagerNamedPort> namedPort)
Sets the value ofComputeInstanceGroupManagerConfig.getNamedPort()- Parameters:
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}- Returns:
this
-
project
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder project(String project)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#project ComputeInstanceGroupManager#project}- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulDisk(com.hashicorp.cdktf.IResolvable statefulDisk)
Sets the value ofComputeInstanceGroupManagerConfig.getStatefulDisk()- Parameters:
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}- Returns:
this
-
statefulDisk
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulDisk(List<? extends ComputeInstanceGroupManagerStatefulDisk> statefulDisk)
Sets the value ofComputeInstanceGroupManagerConfig.getStatefulDisk()- Parameters:
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}- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulExternalIp(com.hashicorp.cdktf.IResolvable statefulExternalIp)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#stateful_external_ip ComputeInstanceGroupManager#stateful_external_ip}- Returns:
this
-
statefulExternalIp
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulExternalIp(List<? extends ComputeInstanceGroupManagerStatefulExternalIp> statefulExternalIp)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#stateful_external_ip ComputeInstanceGroupManager#stateful_external_ip}- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulInternalIp(com.hashicorp.cdktf.IResolvable statefulInternalIp)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#stateful_internal_ip ComputeInstanceGroupManager#stateful_internal_ip}- Returns:
this
-
statefulInternalIp
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder statefulInternalIp(List<? extends ComputeInstanceGroupManagerStatefulInternalIp> statefulInternalIp)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#stateful_internal_ip ComputeInstanceGroupManager#stateful_internal_ip}- Returns:
this
-
targetPools
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder targetPools(List<String> targetPools)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#target_pools ComputeInstanceGroupManager#target_pools}- Returns:
this
-
targetSize
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder targetSize(Number targetSize)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#target_size ComputeInstanceGroupManager#target_size}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder timeouts(ComputeInstanceGroupManagerTimeouts timeouts)
Sets the value ofComputeInstanceGroupManagerConfig.getTimeouts()- Parameters:
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}- Returns:
this
-
updatePolicy
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder updatePolicy(ComputeInstanceGroupManagerUpdatePolicy updatePolicy)
Sets the value ofComputeInstanceGroupManagerConfig.getUpdatePolicy()- Parameters:
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}- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder waitForInstances(Boolean waitForInstances)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#wait_for_instances ComputeInstanceGroupManager#wait_for_instances}- Returns:
this
-
waitForInstances
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder waitForInstances(com.hashicorp.cdktf.IResolvable waitForInstances)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#wait_for_instances ComputeInstanceGroupManager#wait_for_instances}- Returns:
this
-
waitForInstancesStatus
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder waitForInstancesStatus(String waitForInstancesStatus)
Sets the value ofComputeInstanceGroupManagerConfig.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_instance_group_manager#wait_for_instances_status ComputeInstanceGroupManager#wait_for_instances_status}- Returns:
this
-
zone
@Stability(Stable) public ComputeInstanceGroupManagerConfig.Builder zone(String zone)
Sets the value ofComputeInstanceGroupManagerConfig.getZone()- Parameters:
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}- Returns:
this
-
connection
@Stability(Experimental) public ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.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 ComputeInstanceGroupManagerConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeInstanceGroupManagerConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeInstanceGroupManagerConfig>- Returns:
- a new instance of
ComputeInstanceGroupManagerConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-