Class ComputeNodeGroupConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_node_group.ComputeNodeGroupConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeNodeGroupConfig>
- Enclosing interface:
- ComputeNodeGroupConfig
@Stability(Stable) public static final class ComputeNodeGroupConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeNodeGroupConfig>
A builder forComputeNodeGroupConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
nodeTemplate
@Stability(Stable) public ComputeNodeGroupConfig.Builder nodeTemplate(String nodeTemplate)
Sets the value ofComputeNodeGroupConfig.getNodeTemplate()- Parameters:
nodeTemplate- The URL of the node template to which this node group belongs. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#node_template ComputeNodeGroup#node_template}- Returns:
this
-
autoscalingPolicy
@Stability(Stable) public ComputeNodeGroupConfig.Builder autoscalingPolicy(ComputeNodeGroupAutoscalingPolicy autoscalingPolicy)
Sets the value ofComputeNodeGroupConfig.getAutoscalingPolicy()- Parameters:
autoscalingPolicy- autoscaling_policy block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#autoscaling_policy ComputeNodeGroup#autoscaling_policy}- Returns:
this
-
description
@Stability(Stable) public ComputeNodeGroupConfig.Builder description(String description)
Sets the value ofComputeNodeGroupConfig.getDescription()- Parameters:
description- An optional textual description of the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#description ComputeNodeGroup#description}- Returns:
this
-
id
@Stability(Stable) public ComputeNodeGroupConfig.Builder id(String id)
Sets the value ofComputeNodeGroupConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#id ComputeNodeGroup#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
-
initialSize
@Stability(Stable) public ComputeNodeGroupConfig.Builder initialSize(Number initialSize)
Sets the value ofComputeNodeGroupConfig.getInitialSize()- Parameters:
initialSize- The initial number of nodes in the node group. One of 'initial_size' or 'autoscaling_policy' must be configured on resource creation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#initial_size ComputeNodeGroup#initial_size}- Returns:
this
-
maintenancePolicy
@Stability(Stable) public ComputeNodeGroupConfig.Builder maintenancePolicy(String maintenancePolicy)
Sets the value ofComputeNodeGroupConfig.getMaintenancePolicy()- Parameters:
maintenancePolicy- Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#maintenance_policy ComputeNodeGroup#maintenance_policy}- Returns:
this
-
maintenanceWindow
@Stability(Stable) public ComputeNodeGroupConfig.Builder maintenanceWindow(ComputeNodeGroupMaintenanceWindow maintenanceWindow)
Sets the value ofComputeNodeGroupConfig.getMaintenanceWindow()- Parameters:
maintenanceWindow- maintenance_window block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#maintenance_window ComputeNodeGroup#maintenance_window}- Returns:
this
-
name
@Stability(Stable) public ComputeNodeGroupConfig.Builder name(String name)
Sets the value ofComputeNodeGroupConfig.getName()- Parameters:
name- Name of the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#name ComputeNodeGroup#name}- Returns:
this
-
project
@Stability(Stable) public ComputeNodeGroupConfig.Builder project(String project)
Sets the value ofComputeNodeGroupConfig.getProject()- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#project ComputeNodeGroup#project}.- Returns:
this
-
shareSettings
@Stability(Stable) public ComputeNodeGroupConfig.Builder shareSettings(ComputeNodeGroupShareSettings shareSettings)
Sets the value ofComputeNodeGroupConfig.getShareSettings()- Parameters:
shareSettings- share_settings block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#share_settings ComputeNodeGroup#share_settings}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeNodeGroupConfig.Builder timeouts(ComputeNodeGroupTimeouts timeouts)
Sets the value ofComputeNodeGroupConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#timeouts ComputeNodeGroup#timeouts}- Returns:
this
-
zone
@Stability(Stable) public ComputeNodeGroupConfig.Builder zone(String zone)
Sets the value ofComputeNodeGroupConfig.getZone()- Parameters:
zone- Zone where this node group is located. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#zone ComputeNodeGroup#zone}- Returns:
this
-
connection
@Stability(Experimental) public ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.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 ComputeNodeGroupConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeNodeGroupConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeNodeGroupConfig>- Returns:
- a new instance of
ComputeNodeGroupConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-