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

com.pulumi.awsnative.eks.kotlin.outputs.GetClusterResult.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: 1.11.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.eks.kotlin.outputs

import com.pulumi.awsnative.kotlin.outputs.Tag
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property accessConfig The access configuration for the cluster.
 * @property arn The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod.
 * @property certificateAuthorityData The certificate-authority-data for your cluster.
 * @property clusterSecurityGroupId The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control plane to data plane communication.
 * @property encryptionConfigKeyArn Amazon Resource Name (ARN) or alias of the customer master key (CMK).
 * @property endpoint The endpoint for your Kubernetes API server, such as https://5E1D0CEXAMPLEA591B746AFC5AB30262.yl4.us-west-2.eks.amazonaws.com.
 * @property id The unique ID given to your cluster.
 * @property logging The logging configuration for your cluster.
 * @property openIdConnectIssuerUrl The issuer URL for the cluster's OIDC identity provider, such as https://oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E. If you need to remove https:// from this output value, you can include the following code in your template.
 * @property resourcesVpcConfig The VPC configuration that's used by the cluster control plane. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) and [Cluster Security Group Considerations](https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) in the *Amazon EKS User Guide* . You must specify at least two subnets. You can specify up to five security groups, but we recommend that you use a dedicated security group for your cluster control plane.
 * @property tags An array of key-value pairs to apply to this resource.
 * @property upgradePolicy
 * @property version The desired Kubernetes version for your cluster. If you don't specify a value here, the latest version available in Amazon EKS is used.
 */
public data class GetClusterResult(
    public val accessConfig: ClusterAccessConfig? = null,
    public val arn: String? = null,
    public val certificateAuthorityData: String? = null,
    public val clusterSecurityGroupId: String? = null,
    public val encryptionConfigKeyArn: String? = null,
    public val endpoint: String? = null,
    public val id: String? = null,
    public val logging: Logging? = null,
    public val openIdConnectIssuerUrl: String? = null,
    public val resourcesVpcConfig: ClusterResourcesVpcConfig? = null,
    public val tags: List? = null,
    public val upgradePolicy: ClusterUpgradePolicy? = null,
    public val version: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.eks.outputs.GetClusterResult): GetClusterResult = GetClusterResult(
            accessConfig = javaType.accessConfig().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.eks.kotlin.outputs.ClusterAccessConfig.Companion.toKotlin(args0)
                })
            }).orElse(null),
            arn = javaType.arn().map({ args0 -> args0 }).orElse(null),
            certificateAuthorityData = javaType.certificateAuthorityData().map({ args0 -> args0 }).orElse(null),
            clusterSecurityGroupId = javaType.clusterSecurityGroupId().map({ args0 -> args0 }).orElse(null),
            encryptionConfigKeyArn = javaType.encryptionConfigKeyArn().map({ args0 -> args0 }).orElse(null),
            endpoint = javaType.endpoint().map({ args0 -> args0 }).orElse(null),
            id = javaType.id().map({ args0 -> args0 }).orElse(null),
            logging = javaType.logging().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.eks.kotlin.outputs.Logging.Companion.toKotlin(args0)
                })
            }).orElse(null),
            openIdConnectIssuerUrl = javaType.openIdConnectIssuerUrl().map({ args0 -> args0 }).orElse(null),
            resourcesVpcConfig = javaType.resourcesVpcConfig().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.eks.kotlin.outputs.ClusterResourcesVpcConfig.Companion.toKotlin(args0)
                })
            }).orElse(null),
            tags = javaType.tags().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.kotlin.outputs.Tag.Companion.toKotlin(args0)
                })
            }),
            upgradePolicy = javaType.upgradePolicy().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.eks.kotlin.outputs.ClusterUpgradePolicy.Companion.toKotlin(args0)
                })
            }).orElse(null),
            version = javaType.version().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy