Package com.pulumi.aws.autoscaling
Class PolicyArgs.Builder
- java.lang.Object
-
- com.pulumi.aws.autoscaling.PolicyArgs.Builder
-
- Enclosing class:
- PolicyArgs
public static final class PolicyArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()Builder(PolicyArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PolicyArgs.BuilderadjustmentType(com.pulumi.core.Output<java.lang.String> adjustmentType)PolicyArgs.BuilderadjustmentType(java.lang.String adjustmentType)PolicyArgs.BuilderautoscalingGroupName(com.pulumi.core.Output<java.lang.String> autoscalingGroupName)PolicyArgs.BuilderautoscalingGroupName(java.lang.String autoscalingGroupName)PolicyArgsbuild()PolicyArgs.Buildercooldown(com.pulumi.core.Output<java.lang.Integer> cooldown)PolicyArgs.Buildercooldown(java.lang.Integer cooldown)PolicyArgs.Builderenabled(com.pulumi.core.Output<java.lang.Boolean> enabled)PolicyArgs.Builderenabled(java.lang.Boolean enabled)PolicyArgs.BuilderestimatedInstanceWarmup(com.pulumi.core.Output<java.lang.Integer> estimatedInstanceWarmup)PolicyArgs.BuilderestimatedInstanceWarmup(java.lang.Integer estimatedInstanceWarmup)PolicyArgs.BuildermetricAggregationType(com.pulumi.core.Output<java.lang.String> metricAggregationType)PolicyArgs.BuildermetricAggregationType(java.lang.String metricAggregationType)PolicyArgs.BuilderminAdjustmentMagnitude(com.pulumi.core.Output<java.lang.Integer> minAdjustmentMagnitude)PolicyArgs.BuilderminAdjustmentMagnitude(java.lang.Integer minAdjustmentMagnitude)PolicyArgs.Buildername(com.pulumi.core.Output<java.lang.String> name)PolicyArgs.Buildername(java.lang.String name)PolicyArgs.BuilderpolicyType(com.pulumi.core.Output<java.lang.String> policyType)PolicyArgs.BuilderpolicyType(java.lang.String policyType)PolicyArgs.BuilderpredictiveScalingConfiguration(PolicyPredictiveScalingConfigurationArgs predictiveScalingConfiguration)PolicyArgs.BuilderpredictiveScalingConfiguration(com.pulumi.core.Output<PolicyPredictiveScalingConfigurationArgs> predictiveScalingConfiguration)PolicyArgs.Builderregion(com.pulumi.core.Output<java.lang.String> region)PolicyArgs.Builderregion(java.lang.String region)PolicyArgs.BuilderscalingAdjustment(com.pulumi.core.Output<java.lang.Integer> scalingAdjustment)PolicyArgs.BuilderscalingAdjustment(java.lang.Integer scalingAdjustment)PolicyArgs.BuilderstepAdjustments(PolicyStepAdjustmentArgs... stepAdjustments)PolicyArgs.BuilderstepAdjustments(com.pulumi.core.Output<java.util.List<PolicyStepAdjustmentArgs>> stepAdjustments)PolicyArgs.BuilderstepAdjustments(java.util.List<PolicyStepAdjustmentArgs> stepAdjustments)PolicyArgs.BuildertargetTrackingConfiguration(PolicyTargetTrackingConfigurationArgs targetTrackingConfiguration)PolicyArgs.BuildertargetTrackingConfiguration(com.pulumi.core.Output<PolicyTargetTrackingConfigurationArgs> targetTrackingConfiguration)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(PolicyArgs defaults)
-
-
Method Detail
-
adjustmentType
public PolicyArgs.Builder adjustmentType(@Nullable com.pulumi.core.Output<java.lang.String> adjustmentType)
- Parameters:
adjustmentType- Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.- Returns:
- builder
-
adjustmentType
public PolicyArgs.Builder adjustmentType(java.lang.String adjustmentType)
- Parameters:
adjustmentType- Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.- Returns:
- builder
-
autoscalingGroupName
public PolicyArgs.Builder autoscalingGroupName(com.pulumi.core.Output<java.lang.String> autoscalingGroupName)
- Parameters:
autoscalingGroupName- Name of the Auto Scaling group.- Returns:
- builder
-
autoscalingGroupName
public PolicyArgs.Builder autoscalingGroupName(java.lang.String autoscalingGroupName)
- Parameters:
autoscalingGroupName- Name of the Auto Scaling group.- Returns:
- builder
-
cooldown
public PolicyArgs.Builder cooldown(@Nullable com.pulumi.core.Output<java.lang.Integer> cooldown)
- Parameters:
cooldown- Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.- Returns:
- builder
-
cooldown
public PolicyArgs.Builder cooldown(java.lang.Integer cooldown)
- Parameters:
cooldown- Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.- Returns:
- builder
-
enabled
public PolicyArgs.Builder enabled(@Nullable com.pulumi.core.Output<java.lang.Boolean> enabled)
- Parameters:
enabled- Whether the scaling policy is enabled or disabled. Default: `true`. The following argument is only available to "SimpleScaling" and "StepScaling" type policies:- Returns:
- builder
-
enabled
public PolicyArgs.Builder enabled(java.lang.Boolean enabled)
- Parameters:
enabled- Whether the scaling policy is enabled or disabled. Default: `true`. The following argument is only available to "SimpleScaling" and "StepScaling" type policies:- Returns:
- builder
-
estimatedInstanceWarmup
public PolicyArgs.Builder estimatedInstanceWarmup(@Nullable com.pulumi.core.Output<java.lang.Integer> estimatedInstanceWarmup)
- Parameters:
estimatedInstanceWarmup- Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.- Returns:
- builder
-
estimatedInstanceWarmup
public PolicyArgs.Builder estimatedInstanceWarmup(java.lang.Integer estimatedInstanceWarmup)
- Parameters:
estimatedInstanceWarmup- Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.- Returns:
- builder
-
metricAggregationType
public PolicyArgs.Builder metricAggregationType(@Nullable com.pulumi.core.Output<java.lang.String> metricAggregationType)
- Parameters:
metricAggregationType- Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".- Returns:
- builder
-
metricAggregationType
public PolicyArgs.Builder metricAggregationType(java.lang.String metricAggregationType)
- Parameters:
metricAggregationType- Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".- Returns:
- builder
-
minAdjustmentMagnitude
public PolicyArgs.Builder minAdjustmentMagnitude(@Nullable com.pulumi.core.Output<java.lang.Integer> minAdjustmentMagnitude)
- Parameters:
minAdjustmentMagnitude- Minimum value to scale by when `adjustmentType` is set to `PercentChangeInCapacity`. The following arguments are only available to "SimpleScaling" type policies:- Returns:
- builder
-
minAdjustmentMagnitude
public PolicyArgs.Builder minAdjustmentMagnitude(java.lang.Integer minAdjustmentMagnitude)
- Parameters:
minAdjustmentMagnitude- Minimum value to scale by when `adjustmentType` is set to `PercentChangeInCapacity`. The following arguments are only available to "SimpleScaling" type policies:- Returns:
- builder
-
name
public PolicyArgs.Builder name(@Nullable com.pulumi.core.Output<java.lang.String> name)
- Parameters:
name- Name of the policy.- Returns:
- builder
-
name
public PolicyArgs.Builder name(java.lang.String name)
- Parameters:
name- Name of the policy.- Returns:
- builder
-
policyType
public PolicyArgs.Builder policyType(@Nullable com.pulumi.core.Output<java.lang.String> policyType)
- Parameters:
policyType- Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."- Returns:
- builder
-
policyType
public PolicyArgs.Builder policyType(java.lang.String policyType)
- Parameters:
policyType- Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."- Returns:
- builder
-
predictiveScalingConfiguration
public PolicyArgs.Builder predictiveScalingConfiguration(@Nullable com.pulumi.core.Output<PolicyPredictiveScalingConfigurationArgs> predictiveScalingConfiguration)
- Parameters:
predictiveScalingConfiguration- Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.- Returns:
- builder
-
predictiveScalingConfiguration
public PolicyArgs.Builder predictiveScalingConfiguration(PolicyPredictiveScalingConfigurationArgs predictiveScalingConfiguration)
- Parameters:
predictiveScalingConfiguration- Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.- Returns:
- builder
-
region
public PolicyArgs.Builder region(@Nullable com.pulumi.core.Output<java.lang.String> region)
- Parameters:
region- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.- Returns:
- builder
-
region
public PolicyArgs.Builder region(java.lang.String region)
- Parameters:
region- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.- Returns:
- builder
-
scalingAdjustment
public PolicyArgs.Builder scalingAdjustment(@Nullable com.pulumi.core.Output<java.lang.Integer> scalingAdjustment)
- Parameters:
scalingAdjustment- Number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.- Returns:
- builder
-
scalingAdjustment
public PolicyArgs.Builder scalingAdjustment(java.lang.Integer scalingAdjustment)
- Parameters:
scalingAdjustment- Number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.- Returns:
- builder
-
stepAdjustments
public PolicyArgs.Builder stepAdjustments(@Nullable com.pulumi.core.Output<java.util.List<PolicyStepAdjustmentArgs>> stepAdjustments)
- Parameters:
stepAdjustments- Set of adjustments that manage group scaling. These have the following structure:
The following fields are available in step adjustments:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.autoscaling.Policy; import com.pulumi.aws.autoscaling.PolicyArgs; import com.pulumi.aws.autoscaling.inputs.PolicyStepAdjustmentArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Policy("example", PolicyArgs.builder() .stepAdjustments( PolicyStepAdjustmentArgs.builder() .scalingAdjustment(-1) .metricIntervalLowerBound("1") .metricIntervalUpperBound("2") .build(), PolicyStepAdjustmentArgs.builder() .scalingAdjustment(1) .metricIntervalLowerBound("2") .metricIntervalUpperBound("3") .build()) .build()); } }- Returns:
- builder
-
stepAdjustments
public PolicyArgs.Builder stepAdjustments(java.util.List<PolicyStepAdjustmentArgs> stepAdjustments)
- Parameters:
stepAdjustments- Set of adjustments that manage group scaling. These have the following structure:
The following fields are available in step adjustments:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.autoscaling.Policy; import com.pulumi.aws.autoscaling.PolicyArgs; import com.pulumi.aws.autoscaling.inputs.PolicyStepAdjustmentArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Policy("example", PolicyArgs.builder() .stepAdjustments( PolicyStepAdjustmentArgs.builder() .scalingAdjustment(-1) .metricIntervalLowerBound("1") .metricIntervalUpperBound("2") .build(), PolicyStepAdjustmentArgs.builder() .scalingAdjustment(1) .metricIntervalLowerBound("2") .metricIntervalUpperBound("3") .build()) .build()); } }- Returns:
- builder
-
stepAdjustments
public PolicyArgs.Builder stepAdjustments(PolicyStepAdjustmentArgs... stepAdjustments)
- Parameters:
stepAdjustments- Set of adjustments that manage group scaling. These have the following structure:
The following fields are available in step adjustments:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.autoscaling.Policy; import com.pulumi.aws.autoscaling.PolicyArgs; import com.pulumi.aws.autoscaling.inputs.PolicyStepAdjustmentArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Policy("example", PolicyArgs.builder() .stepAdjustments( PolicyStepAdjustmentArgs.builder() .scalingAdjustment(-1) .metricIntervalLowerBound("1") .metricIntervalUpperBound("2") .build(), PolicyStepAdjustmentArgs.builder() .scalingAdjustment(1) .metricIntervalLowerBound("2") .metricIntervalUpperBound("3") .build()) .build()); } }- Returns:
- builder
-
targetTrackingConfiguration
public PolicyArgs.Builder targetTrackingConfiguration(@Nullable com.pulumi.core.Output<PolicyTargetTrackingConfigurationArgs> targetTrackingConfiguration)
- Parameters:
targetTrackingConfiguration- Target tracking policy. These have the following structure:
The following fields are available in target tracking configuration:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.autoscaling.Policy; import com.pulumi.aws.autoscaling.PolicyArgs; import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationArgs; import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Policy("example", PolicyArgs.builder() .targetTrackingConfiguration(PolicyTargetTrackingConfigurationArgs.builder() .predefinedMetricSpecification(PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs.builder() .predefinedMetricType("ASGAverageCPUUtilization") .build()) .targetValue(40.0) .build()) .build()); } }- Returns:
- builder
-
targetTrackingConfiguration
public PolicyArgs.Builder targetTrackingConfiguration(PolicyTargetTrackingConfigurationArgs targetTrackingConfiguration)
- Parameters:
targetTrackingConfiguration- Target tracking policy. These have the following structure:
The following fields are available in target tracking configuration:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.autoscaling.Policy; import com.pulumi.aws.autoscaling.PolicyArgs; import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationArgs; import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var example = new Policy("example", PolicyArgs.builder() .targetTrackingConfiguration(PolicyTargetTrackingConfigurationArgs.builder() .predefinedMetricSpecification(PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs.builder() .predefinedMetricType("ASGAverageCPUUtilization") .build()) .targetValue(40.0) .build()) .build()); } }- Returns:
- builder
-
build
public PolicyArgs build()
-
-