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

com.pulumi.gcp.container.kotlin.outputs.GetClusterNodePoolNetworkConfig.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.container.kotlin.outputs

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

/**
 *
 * @property additionalNodeNetworkConfigs We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface
 * @property additionalPodNetworkConfigs We specify the additional pod networks for this node pool using this list. Each pod network corresponds to an additional alias IP range for the node
 * @property createPodRange Whether to create a new range for pod IPs in this node pool. Defaults are provided for pod_range and pod_ipv4_cidr_block if they are not specified.
 * @property enablePrivateNodes Whether nodes have internal IP addresses only.
 * @property networkPerformanceConfigs Network bandwidth tier configuration.
 * @property podCidrOverprovisionConfigs Configuration for node-pool level pod cidr overprovision. If not set, the cluster level setting will be inherited
 * @property podIpv4CidrBlock The IP address range for pod IPs in this node pool. Only applicable if create_pod_range is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
 * @property podRange The ID of the secondary range for pod IPs. If create_pod_range is true, this ID is used for the new range. If create_pod_range is false, uses an existing secondary range with this ID.
 */
public data class GetClusterNodePoolNetworkConfig(
    public val additionalNodeNetworkConfigs: List,
    public val additionalPodNetworkConfigs: List,
    public val createPodRange: Boolean,
    public val enablePrivateNodes: Boolean,
    public val networkPerformanceConfigs: List,
    public val podCidrOverprovisionConfigs: List,
    public val podIpv4CidrBlock: String,
    public val podRange: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.container.outputs.GetClusterNodePoolNetworkConfig): GetClusterNodePoolNetworkConfig = GetClusterNodePoolNetworkConfig(
            additionalNodeNetworkConfigs = javaType.additionalNodeNetworkConfigs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.container.kotlin.outputs.GetClusterNodePoolNetworkConfigAdditionalNodeNetworkConfig.Companion.toKotlin(args0)
                })
            }),
            additionalPodNetworkConfigs = javaType.additionalPodNetworkConfigs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.container.kotlin.outputs.GetClusterNodePoolNetworkConfigAdditionalPodNetworkConfig.Companion.toKotlin(args0)
                })
            }),
            createPodRange = javaType.createPodRange(),
            enablePrivateNodes = javaType.enablePrivateNodes(),
            networkPerformanceConfigs = javaType.networkPerformanceConfigs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.container.kotlin.outputs.GetClusterNodePoolNetworkConfigNetworkPerformanceConfig.Companion.toKotlin(args0)
                })
            }),
            podCidrOverprovisionConfigs = javaType.podCidrOverprovisionConfigs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.gcp.container.kotlin.outputs.GetClusterNodePoolNetworkConfigPodCidrOverprovisionConfig.Companion.toKotlin(args0)
                })
            }),
            podIpv4CidrBlock = javaType.podIpv4CidrBlock(),
            podRange = javaType.podRange(),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy