
com.pulumi.awsnative.autoscaling.kotlin.inputs.AutoScalingGroupInstanceMaintenancePolicyArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.autoscaling.kotlin.inputs
import com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupInstanceMaintenancePolicyArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* ``InstanceMaintenancePolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.
* For more information, see [Instance maintenance policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.
* @property maxHealthyPercentage Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of ``-1``.
* Both ``MinHealthyPercentage`` and ``MaxHealthyPercentage`` must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.
* @property minHealthyPercentage Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of ``-1``.
*/
public data class AutoScalingGroupInstanceMaintenancePolicyArgs(
public val maxHealthyPercentage: Output? = null,
public val minHealthyPercentage: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupInstanceMaintenancePolicyArgs =
com.pulumi.awsnative.autoscaling.inputs.AutoScalingGroupInstanceMaintenancePolicyArgs.builder()
.maxHealthyPercentage(maxHealthyPercentage?.applyValue({ args0 -> args0 }))
.minHealthyPercentage(minHealthyPercentage?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [AutoScalingGroupInstanceMaintenancePolicyArgs].
*/
@PulumiTagMarker
public class AutoScalingGroupInstanceMaintenancePolicyArgsBuilder internal constructor() {
private var maxHealthyPercentage: Output? = null
private var minHealthyPercentage: Output? = null
/**
* @param value Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of ``-1``.
* Both ``MinHealthyPercentage`` and ``MaxHealthyPercentage`` must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.
*/
@JvmName("vrejacvphuimgtui")
public suspend fun maxHealthyPercentage(`value`: Output) {
this.maxHealthyPercentage = value
}
/**
* @param value Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of ``-1``.
*/
@JvmName("gcsvqutxlehjaqiu")
public suspend fun minHealthyPercentage(`value`: Output) {
this.minHealthyPercentage = value
}
/**
* @param value Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of ``-1``.
* Both ``MinHealthyPercentage`` and ``MaxHealthyPercentage`` must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.
*/
@JvmName("woobrpbarshmnvxy")
public suspend fun maxHealthyPercentage(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxHealthyPercentage = mapped
}
/**
* @param value Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of ``-1``.
*/
@JvmName("xqsopexpxpvbkhsh")
public suspend fun minHealthyPercentage(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.minHealthyPercentage = mapped
}
internal fun build(): AutoScalingGroupInstanceMaintenancePolicyArgs =
AutoScalingGroupInstanceMaintenancePolicyArgs(
maxHealthyPercentage = maxHealthyPercentage,
minHealthyPercentage = minHealthyPercentage,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy