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

com.pulumi.awsnative.batch.kotlin.inputs.ComputeEnvironmentEksConfigurationArgs.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.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.batch.kotlin.inputs

import com.pulumi.awsnative.batch.inputs.ComputeEnvironmentEksConfigurationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property eksClusterArn The Amazon Resource Name (ARN) of the Amazon EKS cluster. An example is `arn: *aws* :eks: *us-east-1* : *123456789012* :cluster/ *ClusterForBatch*` .
 * @property kubernetesNamespace The namespace of the Amazon EKS cluster. AWS Batch manages pods in this namespace. The value can't left empty or null. It must be fewer than 64 characters long, can't be set to `default` , can't start with " `kube-` ," and must match this regular expression: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` . For more information, see [Namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) in the Kubernetes documentation.
 */
public data class ComputeEnvironmentEksConfigurationArgs(
    public val eksClusterArn: Output,
    public val kubernetesNamespace: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.batch.inputs.ComputeEnvironmentEksConfigurationArgs =
        com.pulumi.awsnative.batch.inputs.ComputeEnvironmentEksConfigurationArgs.builder()
            .eksClusterArn(eksClusterArn.applyValue({ args0 -> args0 }))
            .kubernetesNamespace(kubernetesNamespace.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ComputeEnvironmentEksConfigurationArgs].
 */
@PulumiTagMarker
public class ComputeEnvironmentEksConfigurationArgsBuilder internal constructor() {
    private var eksClusterArn: Output? = null

    private var kubernetesNamespace: Output? = null

    /**
     * @param value The Amazon Resource Name (ARN) of the Amazon EKS cluster. An example is `arn: *aws* :eks: *us-east-1* : *123456789012* :cluster/ *ClusterForBatch*` .
     */
    @JvmName("qgrugcijpgjqvpve")
    public suspend fun eksClusterArn(`value`: Output) {
        this.eksClusterArn = value
    }

    /**
     * @param value The namespace of the Amazon EKS cluster. AWS Batch manages pods in this namespace. The value can't left empty or null. It must be fewer than 64 characters long, can't be set to `default` , can't start with " `kube-` ," and must match this regular expression: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` . For more information, see [Namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) in the Kubernetes documentation.
     */
    @JvmName("tabqvnytrrwhggmq")
    public suspend fun kubernetesNamespace(`value`: Output) {
        this.kubernetesNamespace = value
    }

    /**
     * @param value The Amazon Resource Name (ARN) of the Amazon EKS cluster. An example is `arn: *aws* :eks: *us-east-1* : *123456789012* :cluster/ *ClusterForBatch*` .
     */
    @JvmName("eqejeltajxmccuei")
    public suspend fun eksClusterArn(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.eksClusterArn = mapped
    }

    /**
     * @param value The namespace of the Amazon EKS cluster. AWS Batch manages pods in this namespace. The value can't left empty or null. It must be fewer than 64 characters long, can't be set to `default` , can't start with " `kube-` ," and must match this regular expression: `^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` . For more information, see [Namespaces](https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) in the Kubernetes documentation.
     */
    @JvmName("leinvmwmwbyvnwmp")
    public suspend fun kubernetesNamespace(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.kubernetesNamespace = mapped
    }

    internal fun build(): ComputeEnvironmentEksConfigurationArgs =
        ComputeEnvironmentEksConfigurationArgs(
            eksClusterArn = eksClusterArn ?: throw PulumiNullFieldException("eksClusterArn"),
            kubernetesNamespace = kubernetesNamespace ?: throw PulumiNullFieldException("kubernetesNamespace"),
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy