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

com.pulumi.aws.pipes.kotlin.inputs.PipeTargetParametersEcsTaskParametersOverridesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.aws.pipes.kotlin.inputs

import com.pulumi.aws.pipes.inputs.PipeTargetParametersEcsTaskParametersOverridesArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property containerOverrides One or more container overrides that are sent to a task. Detailed below.
 * @property cpu The number of cpu units reserved for the container, instead of the default value from the task definition. You must also specify a container name.
 * @property ephemeralStorage The ephemeral storage setting override for the task.  Detailed below.
 * @property executionRoleArn The Amazon Resource Name (ARN) of the task execution IAM role override for the task.
 * @property inferenceAcceleratorOverrides List of Elastic Inference accelerator overrides for the task. Detailed below.
 * @property memory The hard limit (in MiB) of memory to present to the container, instead of the default value from the task definition. If your container attempts to exceed the memory specified here, the container is killed. You must also specify a container name.
 * @property taskRoleArn The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role.
 */
public data class PipeTargetParametersEcsTaskParametersOverridesArgs(
    public val containerOverrides: Output>? = null,
    public val cpu: Output? = null,
    public val ephemeralStorage: Output? = null,
    public val executionRoleArn: Output? = null,
    public val inferenceAcceleratorOverrides: Output>? =
        null,
    public val memory: Output? = null,
    public val taskRoleArn: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.pipes.inputs.PipeTargetParametersEcsTaskParametersOverridesArgs =
        com.pulumi.aws.pipes.inputs.PipeTargetParametersEcsTaskParametersOverridesArgs.builder()
            .containerOverrides(
                containerOverrides?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .cpu(cpu?.applyValue({ args0 -> args0 }))
            .ephemeralStorage(ephemeralStorage?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .executionRoleArn(executionRoleArn?.applyValue({ args0 -> args0 }))
            .inferenceAcceleratorOverrides(
                inferenceAcceleratorOverrides?.applyValue({ args0 ->
                    args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
                }),
            )
            .memory(memory?.applyValue({ args0 -> args0 }))
            .taskRoleArn(taskRoleArn?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [PipeTargetParametersEcsTaskParametersOverridesArgs].
 */
@PulumiTagMarker
public class PipeTargetParametersEcsTaskParametersOverridesArgsBuilder internal constructor() {
    private var containerOverrides:
        Output>? = null

    private var cpu: Output? = null

    private var ephemeralStorage:
        Output? = null

    private var executionRoleArn: Output? = null

    private var inferenceAcceleratorOverrides:
        Output>? =
        null

    private var memory: Output? = null

    private var taskRoleArn: Output? = null

    /**
     * @param value One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("shuvdjveuvluntto")
    public suspend fun containerOverrides(`value`: Output>) {
        this.containerOverrides = value
    }

    @JvmName("tbseqvneravafstm")
    public suspend fun containerOverrides(vararg values: Output) {
        this.containerOverrides = Output.all(values.asList())
    }

    /**
     * @param values One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("rpmgqqhbxkbstwqc")
    public suspend fun containerOverrides(values: List>) {
        this.containerOverrides = Output.all(values)
    }

    /**
     * @param value The number of cpu units reserved for the container, instead of the default value from the task definition. You must also specify a container name.
     */
    @JvmName("wvnpqlsfinvufqme")
    public suspend fun cpu(`value`: Output) {
        this.cpu = value
    }

    /**
     * @param value The ephemeral storage setting override for the task.  Detailed below.
     */
    @JvmName("ywldgcajmfcdilns")
    public suspend fun ephemeralStorage(`value`: Output) {
        this.ephemeralStorage = value
    }

    /**
     * @param value The Amazon Resource Name (ARN) of the task execution IAM role override for the task.
     */
    @JvmName("snenhmjdhylhokin")
    public suspend fun executionRoleArn(`value`: Output) {
        this.executionRoleArn = value
    }

    /**
     * @param value List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("ancbcshecruccpwm")
    public suspend fun inferenceAcceleratorOverrides(`value`: Output>) {
        this.inferenceAcceleratorOverrides = value
    }

    @JvmName("ndnivvplmxadklgr")
    public suspend fun inferenceAcceleratorOverrides(vararg values: Output) {
        this.inferenceAcceleratorOverrides = Output.all(values.asList())
    }

    /**
     * @param values List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("xsvmovjaykbjyxiq")
    public suspend fun inferenceAcceleratorOverrides(values: List>) {
        this.inferenceAcceleratorOverrides = Output.all(values)
    }

    /**
     * @param value The hard limit (in MiB) of memory to present to the container, instead of the default value from the task definition. If your container attempts to exceed the memory specified here, the container is killed. You must also specify a container name.
     */
    @JvmName("bostsajcoudtcckk")
    public suspend fun memory(`value`: Output) {
        this.memory = value
    }

    /**
     * @param value The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role.
     */
    @JvmName("cvfackiwfufcwckf")
    public suspend fun taskRoleArn(`value`: Output) {
        this.taskRoleArn = value
    }

    /**
     * @param value One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("gjvfvnhdnrtyqxos")
    public suspend fun containerOverrides(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerOverrides = mapped
    }

    /**
     * @param argument One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("rjllffdhybcnrdxv")
    public suspend fun containerOverrides(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.containerOverrides = mapped
    }

    /**
     * @param argument One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("gylsgymdsykqedng")
    public suspend fun containerOverrides(vararg argument: suspend PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.containerOverrides = mapped
    }

    /**
     * @param argument One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("fnwudfwdttjqparu")
    public suspend fun containerOverrides(argument: suspend PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgsBuilder().applySuspend
                    { argument() }.build(),
            )
        val mapped = of(toBeMapped)
        this.containerOverrides = mapped
    }

    /**
     * @param values One or more container overrides that are sent to a task. Detailed below.
     */
    @JvmName("lnkxbmtmqpllxiyq")
    public suspend fun containerOverrides(vararg values: PipeTargetParametersEcsTaskParametersOverridesContainerOverrideArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.containerOverrides = mapped
    }

    /**
     * @param value The number of cpu units reserved for the container, instead of the default value from the task definition. You must also specify a container name.
     */
    @JvmName("pixnbqeyhvdnucqi")
    public suspend fun cpu(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.cpu = mapped
    }

    /**
     * @param value The ephemeral storage setting override for the task.  Detailed below.
     */
    @JvmName("nnddnbgcbrmtstdj")
    public suspend fun ephemeralStorage(`value`: PipeTargetParametersEcsTaskParametersOverridesEphemeralStorageArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ephemeralStorage = mapped
    }

    /**
     * @param argument The ephemeral storage setting override for the task.  Detailed below.
     */
    @JvmName("wbqowiapnjcyescx")
    public suspend fun ephemeralStorage(argument: suspend PipeTargetParametersEcsTaskParametersOverridesEphemeralStorageArgsBuilder.() -> Unit) {
        val toBeMapped =
            PipeTargetParametersEcsTaskParametersOverridesEphemeralStorageArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.ephemeralStorage = mapped
    }

    /**
     * @param value The Amazon Resource Name (ARN) of the task execution IAM role override for the task.
     */
    @JvmName("cyvcooxoobxmmpal")
    public suspend fun executionRoleArn(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.executionRoleArn = mapped
    }

    /**
     * @param value List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("pvkexsxiavrlgmve")
    public suspend fun inferenceAcceleratorOverrides(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inferenceAcceleratorOverrides = mapped
    }

    /**
     * @param argument List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("bjivfhlomyqwlkxd")
    public suspend fun inferenceAcceleratorOverrides(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.inferenceAcceleratorOverrides = mapped
    }

    /**
     * @param argument List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("wumaqhfdieehdkwn")
    public suspend fun inferenceAcceleratorOverrides(vararg argument: suspend PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.inferenceAcceleratorOverrides = mapped
    }

    /**
     * @param argument List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("ydulniwmeniargho")
    public suspend fun inferenceAcceleratorOverrides(argument: suspend PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgsBuilder().applySuspend
                    { argument() }.build(),
            )
        val mapped = of(toBeMapped)
        this.inferenceAcceleratorOverrides = mapped
    }

    /**
     * @param values List of Elastic Inference accelerator overrides for the task. Detailed below.
     */
    @JvmName("ydfrayatxwhwaiio")
    public suspend fun inferenceAcceleratorOverrides(vararg values: PipeTargetParametersEcsTaskParametersOverridesInferenceAcceleratorOverrideArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.inferenceAcceleratorOverrides = mapped
    }

    /**
     * @param value The hard limit (in MiB) of memory to present to the container, instead of the default value from the task definition. If your container attempts to exceed the memory specified here, the container is killed. You must also specify a container name.
     */
    @JvmName("hiamcmouanttdysi")
    public suspend fun memory(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.memory = mapped
    }

    /**
     * @param value The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role.
     */
    @JvmName("rtqbsiabkdhabcei")
    public suspend fun taskRoleArn(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.taskRoleArn = mapped
    }

    internal fun build(): PipeTargetParametersEcsTaskParametersOverridesArgs =
        PipeTargetParametersEcsTaskParametersOverridesArgs(
            containerOverrides = containerOverrides,
            cpu = cpu,
            ephemeralStorage = ephemeralStorage,
            executionRoleArn = executionRoleArn,
            inferenceAcceleratorOverrides = inferenceAcceleratorOverrides,
            memory = memory,
            taskRoleArn = taskRoleArn,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy