All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.autoscaling.kotlin.outputs.AutoScalingGroupInstanceMaintenancePolicy.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.autoscaling.kotlin.outputs

import kotlin.Int
import kotlin.Suppress

/**
 * ``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 AutoScalingGroupInstanceMaintenancePolicy(
    public val maxHealthyPercentage: Int? = null,
    public val minHealthyPercentage: Int? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.autoscaling.outputs.AutoScalingGroupInstanceMaintenancePolicy): AutoScalingGroupInstanceMaintenancePolicy = AutoScalingGroupInstanceMaintenancePolicy(
            maxHealthyPercentage = javaType.maxHealthyPercentage().map({ args0 -> args0 }).orElse(null),
            minHealthyPercentage = javaType.minHealthyPercentage().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy