
com.pulumi.azure.compute.kotlin.inputs.ScaleSetRollingUpgradePolicyArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.compute.kotlin.inputs
import com.pulumi.azure.compute.inputs.ScaleSetRollingUpgradePolicyArgs.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.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property maxBatchInstancePercent The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.
* @property maxUnhealthyInstancePercent The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.
* @property maxUnhealthyUpgradedInstancePercent The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.
* @property pauseTimeBetweenBatches The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (). Defaults to `PT0S` seconds represented as `PT0S`.
*/
public data class ScaleSetRollingUpgradePolicyArgs(
public val maxBatchInstancePercent: Output? = null,
public val maxUnhealthyInstancePercent: Output? = null,
public val maxUnhealthyUpgradedInstancePercent: Output? = null,
public val pauseTimeBetweenBatches: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.compute.inputs.ScaleSetRollingUpgradePolicyArgs =
com.pulumi.azure.compute.inputs.ScaleSetRollingUpgradePolicyArgs.builder()
.maxBatchInstancePercent(maxBatchInstancePercent?.applyValue({ args0 -> args0 }))
.maxUnhealthyInstancePercent(maxUnhealthyInstancePercent?.applyValue({ args0 -> args0 }))
.maxUnhealthyUpgradedInstancePercent(
maxUnhealthyUpgradedInstancePercent?.applyValue({ args0 ->
args0
}),
)
.pauseTimeBetweenBatches(pauseTimeBetweenBatches?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ScaleSetRollingUpgradePolicyArgs].
*/
@PulumiTagMarker
public class ScaleSetRollingUpgradePolicyArgsBuilder internal constructor() {
private var maxBatchInstancePercent: Output? = null
private var maxUnhealthyInstancePercent: Output? = null
private var maxUnhealthyUpgradedInstancePercent: Output? = null
private var pauseTimeBetweenBatches: Output? = null
/**
* @param value The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.
*/
@JvmName("ypqbnrbiutvnpjph")
public suspend fun maxBatchInstancePercent(`value`: Output) {
this.maxBatchInstancePercent = value
}
/**
* @param value The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.
*/
@JvmName("bngxsmffsmdooxnc")
public suspend fun maxUnhealthyInstancePercent(`value`: Output) {
this.maxUnhealthyInstancePercent = value
}
/**
* @param value The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.
*/
@JvmName("qpnnocdwnppswmby")
public suspend fun maxUnhealthyUpgradedInstancePercent(`value`: Output) {
this.maxUnhealthyUpgradedInstancePercent = value
}
/**
* @param value The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (). Defaults to `PT0S` seconds represented as `PT0S`.
*/
@JvmName("gqnqohynokuolavm")
public suspend fun pauseTimeBetweenBatches(`value`: Output) {
this.pauseTimeBetweenBatches = value
}
/**
* @param value The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. Defaults to `20`.
*/
@JvmName("oadcdfimkkwvmonk")
public suspend fun maxBatchInstancePercent(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxBatchInstancePercent = mapped
}
/**
* @param value The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. Defaults to `20`.
*/
@JvmName("rxhixxmgkowkwlbi")
public suspend fun maxUnhealthyInstancePercent(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxUnhealthyInstancePercent = mapped
}
/**
* @param value The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. Defaults to `20`.
*/
@JvmName("weytmireyiuimlvl")
public suspend fun maxUnhealthyUpgradedInstancePercent(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxUnhealthyUpgradedInstancePercent = mapped
}
/**
* @param value The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format for duration (). Defaults to `PT0S` seconds represented as `PT0S`.
*/
@JvmName("xljjmcywdlsmyiqf")
public suspend fun pauseTimeBetweenBatches(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.pauseTimeBetweenBatches = mapped
}
internal fun build(): ScaleSetRollingUpgradePolicyArgs = ScaleSetRollingUpgradePolicyArgs(
maxBatchInstancePercent = maxBatchInstancePercent,
maxUnhealthyInstancePercent = maxUnhealthyInstancePercent,
maxUnhealthyUpgradedInstancePercent = maxUnhealthyUpgradedInstancePercent,
pauseTimeBetweenBatches = pauseTimeBetweenBatches,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy