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

com.pulumi.digitalocean.kotlin.outputs.GetKubernetesClusterNodePool.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 4.35.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.digitalocean.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map

/**
 *
 * @property actualNodeCount The actual number of nodes in the node pool, which is especially useful when auto-scaling is enabled.
 * @property autoScale A boolean indicating whether auto-scaling is enabled on the node pool.
 * @property id A unique ID that can be used to identify and reference the node.
 * @property labels A map of key/value pairs applied to nodes in the pool. The labels are exposed in the Kubernetes API as labels in the metadata of the corresponding [Node resources](https://kubernetes.io/docs/concepts/architecture/nodes/).
 * @property maxNodes If auto-scaling is enabled, this represents the maximum number of nodes that the node pool can be scaled up to.
 * @property minNodes If auto-scaling is enabled, this represents the minimum number of nodes that the node pool can be scaled down to.
 * @property name The name of Kubernetes cluster.
 * @property nodeCount The number of Droplet instances in the node pool.
 * @property nodes A list of nodes in the pool. Each node exports the following attributes:
 * @property size The slug identifier for the type of Droplet used as workers in the node pool.
 * @property tags A list of tag names applied to the node pool.
 * @property taints A list of taints applied to all nodes in the pool. Each taint exports the following attributes:
 */
public data class GetKubernetesClusterNodePool(
    public val actualNodeCount: Int,
    public val autoScale: Boolean,
    public val id: String,
    public val labels: Map,
    public val maxNodes: Int,
    public val minNodes: Int,
    public val name: String,
    public val nodeCount: Int,
    public val nodes: List,
    public val size: String,
    public val tags: List,
    public val taints: List,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.digitalocean.outputs.GetKubernetesClusterNodePool): GetKubernetesClusterNodePool = GetKubernetesClusterNodePool(
            actualNodeCount = javaType.actualNodeCount(),
            autoScale = javaType.autoScale(),
            id = javaType.id(),
            labels = javaType.labels().map({ args0 -> args0.key.to(args0.value) }).toMap(),
            maxNodes = javaType.maxNodes(),
            minNodes = javaType.minNodes(),
            name = javaType.name(),
            nodeCount = javaType.nodeCount(),
            nodes = javaType.nodes().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.digitalocean.kotlin.outputs.GetKubernetesClusterNodePoolNode.Companion.toKotlin(args0)
                })
            }),
            size = javaType.size(),
            tags = javaType.tags().map({ args0 -> args0 }),
            taints = javaType.taints().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.digitalocean.kotlin.outputs.GetKubernetesClusterNodePoolTaint.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy