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

com.pulumi.gcp.composer.kotlin.outputs.EnvironmentConfigNodeConfigIpAllocationPolicy.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: 8.12.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.composer.kotlin.outputs

import kotlin.Boolean
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property clusterIpv4CidrBlock The IP address range used to allocate IP addresses to pods in the cluster. For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*, this field is applicable only when use_ip_aliases is true. Set to blank to have GKE choose a range with the default size. Set to /netmask (e.g. /14) to have GKE choose a range with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use. Specify either cluster_secondary_range_name or cluster_ipv4_cidr_block but not both.
 * @property clusterSecondaryRangeName The name of the cluster's secondary range used to allocate IP addresses to pods. Specify either cluster_secondary_range_name or cluster_ipv4_cidr_block but not both. For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*, this field is applicable only when use_ip_aliases is true.
 * @property servicesIpv4CidrBlock The IP address range used to allocate IP addresses in this cluster. For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*, this field is applicable only when use_ip_aliases is true. Set to blank to have GKE choose a range with the default size. Set to /netmask (e.g. /14) to have GKE choose a range with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use. Specify either services_secondary_range_name or services_ipv4_cidr_block but not both.
 * @property servicesSecondaryRangeName The name of the services' secondary range used to allocate IP addresses to the cluster. Specify either services_secondary_range_name or services_ipv4_cidr_block but not both. For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*, this field is applicable only when use_ip_aliases is true.
 * @property useIpAliases Whether or not to enable Alias IPs in the GKE cluster. If true, a VPC-native cluster is created. Defaults to true if the ip_allocation_policy block is present in config. This field is only supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*. Environments in newer versions always use VPC-native GKE clusters.
 */
public data class EnvironmentConfigNodeConfigIpAllocationPolicy(
    public val clusterIpv4CidrBlock: String? = null,
    public val clusterSecondaryRangeName: String? = null,
    public val servicesIpv4CidrBlock: String? = null,
    public val servicesSecondaryRangeName: String? = null,
    public val useIpAliases: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.composer.outputs.EnvironmentConfigNodeConfigIpAllocationPolicy): EnvironmentConfigNodeConfigIpAllocationPolicy =
            EnvironmentConfigNodeConfigIpAllocationPolicy(
                clusterIpv4CidrBlock = javaType.clusterIpv4CidrBlock().map({ args0 -> args0 }).orElse(null),
                clusterSecondaryRangeName = javaType.clusterSecondaryRangeName().map({ args0 ->
                    args0
                }).orElse(null),
                servicesIpv4CidrBlock = javaType.servicesIpv4CidrBlock().map({ args0 -> args0 }).orElse(null),
                servicesSecondaryRangeName = javaType.servicesSecondaryRangeName().map({ args0 ->
                    args0
                }).orElse(null),
                useIpAliases = javaType.useIpAliases().map({ args0 -> args0 }).orElse(null),
            )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy