
com.pulumi.gcp.vmwareengine.kotlin.inputs.ClusterAutoscalingSettingsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.vmwareengine.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.vmwareengine.inputs.ClusterAutoscalingSettingsArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property autoscalingPolicies The map with autoscaling policies applied to the cluster.
* The key is the identifier of the policy.
* It must meet the following requirements:
* * Only contains 1-63 alphanumeric characters and hyphens
* * Begins with an alphabetical character
* * Ends with a non-hyphen character
* * Not formatted as a UUID
* * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
* Currently the map must contain only one element
* that describes the autoscaling policy for compute nodes.
* Structure is documented below.
* @property coolDownPeriod The minimum duration between consecutive autoscale operations.
* It starts once addition or removal of nodes is fully completed.
* Minimum cool down period is 30m.
* Cool down period must be in whole minutes (for example, 30m, 31m, 50m).
* Mandatory for successful addition of autoscaling settings in cluster.
* @property maxClusterNodeCount Maximum number of nodes of any type in a cluster.
* Mandatory for successful addition of autoscaling settings in cluster.
* @property minClusterNodeCount Minimum number of nodes of any type in a cluster.
* Mandatory for successful addition of autoscaling settings in cluster.
*/
public data class ClusterAutoscalingSettingsArgs(
public val autoscalingPolicies: Output>,
public val coolDownPeriod: Output? = null,
public val maxClusterNodeCount: Output? = null,
public val minClusterNodeCount: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.vmwareengine.inputs.ClusterAutoscalingSettingsArgs =
com.pulumi.gcp.vmwareengine.inputs.ClusterAutoscalingSettingsArgs.builder()
.autoscalingPolicies(
autoscalingPolicies.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.coolDownPeriod(coolDownPeriod?.applyValue({ args0 -> args0 }))
.maxClusterNodeCount(maxClusterNodeCount?.applyValue({ args0 -> args0 }))
.minClusterNodeCount(minClusterNodeCount?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ClusterAutoscalingSettingsArgs].
*/
@PulumiTagMarker
public class ClusterAutoscalingSettingsArgsBuilder internal constructor() {
private var autoscalingPolicies: Output>? =
null
private var coolDownPeriod: Output? = null
private var maxClusterNodeCount: Output? = null
private var minClusterNodeCount: Output? = null
/**
* @param value The map with autoscaling policies applied to the cluster.
* The key is the identifier of the policy.
* It must meet the following requirements:
* * Only contains 1-63 alphanumeric characters and hyphens
* * Begins with an alphabetical character
* * Ends with a non-hyphen character
* * Not formatted as a UUID
* * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
* Currently the map must contain only one element
* that describes the autoscaling policy for compute nodes.
* Structure is documented below.
*/
@JvmName("lkbowrrgqjgcesoa")
public suspend fun autoscalingPolicies(`value`: Output>) {
this.autoscalingPolicies = value
}
@JvmName("bykplyxwdoleiknn")
public suspend fun autoscalingPolicies(vararg values: Output) {
this.autoscalingPolicies = Output.all(values.asList())
}
/**
* @param values The map with autoscaling policies applied to the cluster.
* The key is the identifier of the policy.
* It must meet the following requirements:
* * Only contains 1-63 alphanumeric characters and hyphens
* * Begins with an alphabetical character
* * Ends with a non-hyphen character
* * Not formatted as a UUID
* * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
* Currently the map must contain only one element
* that describes the autoscaling policy for compute nodes.
* Structure is documented below.
*/
@JvmName("joiqijmlypxymylq")
public suspend fun autoscalingPolicies(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy