Class ComputeRegionAutoscalerAutoscalingPolicy.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_region_autoscaler.ComputeRegionAutoscalerAutoscalingPolicy.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeRegionAutoscalerAutoscalingPolicy>
- Enclosing interface:
- ComputeRegionAutoscalerAutoscalingPolicy
@Stability(Stable) public static final class ComputeRegionAutoscalerAutoscalingPolicy.Builder extends Object implements software.amazon.jsii.Builder<ComputeRegionAutoscalerAutoscalingPolicy>
A builder forComputeRegionAutoscalerAutoscalingPolicy
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
maxReplicas
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder maxReplicas(Number maxReplicas)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getMaxReplicas()- Parameters:
maxReplicas- The maximum number of instances that the autoscaler can scale up to. This parameter is required. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#max_replicas ComputeRegionAutoscaler#max_replicas}- Returns:
this
-
minReplicas
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder minReplicas(Number minReplicas)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getMinReplicas()- Parameters:
minReplicas- The minimum number of replicas that the autoscaler can scale down to. This parameter is required. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#min_replicas ComputeRegionAutoscaler#min_replicas}- Returns:
this
-
cooldownPeriod
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder cooldownPeriod(Number cooldownPeriod)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getCooldownPeriod()- Parameters:
cooldownPeriod- The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#cooldown_period ComputeRegionAutoscaler#cooldown_period}- Returns:
this
-
cpuUtilization
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder cpuUtilization(ComputeRegionAutoscalerAutoscalingPolicyCpuUtilization cpuUtilization)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getCpuUtilization()- Parameters:
cpuUtilization- cpu_utilization block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#cpu_utilization ComputeRegionAutoscaler#cpu_utilization}- Returns:
this
-
loadBalancingUtilization
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder loadBalancingUtilization(ComputeRegionAutoscalerAutoscalingPolicyLoadBalancingUtilization loadBalancingUtilization)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getLoadBalancingUtilization()- Parameters:
loadBalancingUtilization- load_balancing_utilization block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#load_balancing_utilization ComputeRegionAutoscaler#load_balancing_utilization}- Returns:
this
-
metric
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder metric(com.hashicorp.cdktf.IResolvable metric)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getMetric()- Parameters:
metric- metric block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#metric ComputeRegionAutoscaler#metric}- Returns:
this
-
metric
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder metric(List<? extends ComputeRegionAutoscalerAutoscalingPolicyMetric> metric)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getMetric()- Parameters:
metric- metric block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#metric ComputeRegionAutoscaler#metric}- Returns:
this
-
mode
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder mode(String mode)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getMode()- Parameters:
mode- Defines operating mode for this policy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#mode ComputeRegionAutoscaler#mode}- Returns:
this
-
scaleInControl
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder scaleInControl(ComputeRegionAutoscalerAutoscalingPolicyScaleInControl scaleInControl)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getScaleInControl()- Parameters:
scaleInControl- scale_in_control block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#scale_in_control ComputeRegionAutoscaler#scale_in_control}- Returns:
this
-
scalingSchedules
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder scalingSchedules(com.hashicorp.cdktf.IResolvable scalingSchedules)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getScalingSchedules()- Parameters:
scalingSchedules- scaling_schedules block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#scaling_schedules ComputeRegionAutoscaler#scaling_schedules}- Returns:
this
-
scalingSchedules
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy.Builder scalingSchedules(List<? extends ComputeRegionAutoscalerAutoscalingPolicyScalingSchedules> scalingSchedules)
Sets the value ofComputeRegionAutoscalerAutoscalingPolicy.getScalingSchedules()- Parameters:
scalingSchedules- scaling_schedules block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_autoscaler#scaling_schedules ComputeRegionAutoscaler#scaling_schedules}- Returns:
this
-
build
@Stability(Stable) public ComputeRegionAutoscalerAutoscalingPolicy build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeRegionAutoscalerAutoscalingPolicy>- Returns:
- a new instance of
ComputeRegionAutoscalerAutoscalingPolicy - Throws:
NullPointerException- if any required attribute was not provided
-
-