
com.pulumi.gcp.vmwareengine.kotlin.outputs.ClusterAutoscalingSettings.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.vmwareengine.kotlin.outputs
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @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 ClusterAutoscalingSettings(
public val autoscalingPolicies: List,
public val coolDownPeriod: String? = null,
public val maxClusterNodeCount: Int? = null,
public val minClusterNodeCount: Int? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.vmwareengine.outputs.ClusterAutoscalingSettings): ClusterAutoscalingSettings = ClusterAutoscalingSettings(
autoscalingPolicies = javaType.autoscalingPolicies().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.vmwareengine.kotlin.outputs.ClusterAutoscalingSettingsAutoscalingPolicy.Companion.toKotlin(args0)
})
}),
coolDownPeriod = javaType.coolDownPeriod().map({ args0 -> args0 }).orElse(null),
maxClusterNodeCount = javaType.maxClusterNodeCount().map({ args0 -> args0 }).orElse(null),
minClusterNodeCount = javaType.minClusterNodeCount().map({ args0 -> args0 }).orElse(null),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy