com.pulumi.awsnative.ec2.kotlin.inputs.SpotFleetSpotMaintenanceStrategiesArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.ec2.kotlin.inputs
import com.pulumi.awsnative.ec2.inputs.SpotFleetSpotMaintenanceStrategiesArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property capacityRebalance The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see [Capacity rebalancing](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) in the *Amazon EC2 User Guide* .
*/
public data class SpotFleetSpotMaintenanceStrategiesArgs(
public val capacityRebalance: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.ec2.inputs.SpotFleetSpotMaintenanceStrategiesArgs =
com.pulumi.awsnative.ec2.inputs.SpotFleetSpotMaintenanceStrategiesArgs.builder()
.capacityRebalance(
capacityRebalance?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [SpotFleetSpotMaintenanceStrategiesArgs].
*/
@PulumiTagMarker
public class SpotFleetSpotMaintenanceStrategiesArgsBuilder internal constructor() {
private var capacityRebalance: Output? = null
/**
* @param value The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see [Capacity rebalancing](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) in the *Amazon EC2 User Guide* .
*/
@JvmName("qwqxgwielcdhspgp")
public suspend fun capacityRebalance(`value`: Output) {
this.capacityRebalance = value
}
/**
* @param value The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see [Capacity rebalancing](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) in the *Amazon EC2 User Guide* .
*/
@JvmName("irsrklhmesxstbtq")
public suspend fun capacityRebalance(`value`: SpotFleetSpotCapacityRebalanceArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.capacityRebalance = mapped
}
/**
* @param argument The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see [Capacity rebalancing](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html) in the *Amazon EC2 User Guide* .
*/
@JvmName("vuuqsgowmaaapiet")
public suspend fun capacityRebalance(argument: suspend SpotFleetSpotCapacityRebalanceArgsBuilder.() -> Unit) {
val toBeMapped = SpotFleetSpotCapacityRebalanceArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.capacityRebalance = mapped
}
internal fun build(): SpotFleetSpotMaintenanceStrategiesArgs =
SpotFleetSpotMaintenanceStrategiesArgs(
capacityRebalance = capacityRebalance,
)
}