Class ComputeAutoscalerAutoscalingPolicy.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_autoscaler.ComputeAutoscalerAutoscalingPolicy.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeAutoscalerAutoscalingPolicy>
- Enclosing interface:
- ComputeAutoscalerAutoscalingPolicy
@Stability(Stable) public static final class ComputeAutoscalerAutoscalingPolicy.Builder extends Object implements software.amazon.jsii.Builder<ComputeAutoscalerAutoscalingPolicy>
A builder forComputeAutoscalerAutoscalingPolicy
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
maxReplicas
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder maxReplicas(Number maxReplicas)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#max_replicas ComputeAutoscaler#max_replicas}- Returns:
this
-
minReplicas
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder minReplicas(Number minReplicas)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#min_replicas ComputeAutoscaler#min_replicas}- Returns:
this
-
cooldownPeriod
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder cooldownPeriod(Number cooldownPeriod)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#cooldown_period ComputeAutoscaler#cooldown_period}- Returns:
this
-
cpuUtilization
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder cpuUtilization(ComputeAutoscalerAutoscalingPolicyCpuUtilization cpuUtilization)
Sets the value ofComputeAutoscalerAutoscalingPolicy.getCpuUtilization()- Parameters:
cpuUtilization- cpu_utilization block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_autoscaler#cpu_utilization ComputeAutoscaler#cpu_utilization}- Returns:
this
-
loadBalancingUtilization
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder loadBalancingUtilization(ComputeAutoscalerAutoscalingPolicyLoadBalancingUtilization loadBalancingUtilization)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#load_balancing_utilization ComputeAutoscaler#load_balancing_utilization}- Returns:
this
-
metric
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder metric(com.hashicorp.cdktf.IResolvable metric)
Sets the value ofComputeAutoscalerAutoscalingPolicy.getMetric()- Parameters:
metric- metric block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_autoscaler#metric ComputeAutoscaler#metric}- Returns:
this
-
metric
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder metric(List<? extends ComputeAutoscalerAutoscalingPolicyMetric> metric)
Sets the value ofComputeAutoscalerAutoscalingPolicy.getMetric()- Parameters:
metric- metric block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_autoscaler#metric ComputeAutoscaler#metric}- Returns:
this
-
mode
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder mode(String mode)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#mode ComputeAutoscaler#mode}- Returns:
this
-
scaleInControl
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder scaleInControl(ComputeAutoscalerAutoscalingPolicyScaleInControl scaleInControl)
Sets the value ofComputeAutoscalerAutoscalingPolicy.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_autoscaler#scale_in_control ComputeAutoscaler#scale_in_control}- Returns:
this
-
scalingSchedules
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder scalingSchedules(com.hashicorp.cdktf.IResolvable scalingSchedules)
Sets the value ofComputeAutoscalerAutoscalingPolicy.getScalingSchedules()- Parameters:
scalingSchedules- scaling_schedules block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_autoscaler#scaling_schedules ComputeAutoscaler#scaling_schedules}- Returns:
this
-
scalingSchedules
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy.Builder scalingSchedules(List<? extends ComputeAutoscalerAutoscalingPolicyScalingSchedules> scalingSchedules)
Sets the value ofComputeAutoscalerAutoscalingPolicy.getScalingSchedules()- Parameters:
scalingSchedules- scaling_schedules block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_autoscaler#scaling_schedules ComputeAutoscaler#scaling_schedules}- Returns:
this
-
build
@Stability(Stable) public ComputeAutoscalerAutoscalingPolicy build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeAutoscalerAutoscalingPolicy>- Returns:
- a new instance of
ComputeAutoscalerAutoscalingPolicy - Throws:
NullPointerException- if any required attribute was not provided
-
-