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

com.pulumi.aws.sagemaker.kotlin.inputs.ModelContainerImageConfigArgs.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: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.sagemaker.kotlin.inputs

import com.pulumi.aws.sagemaker.inputs.ModelContainerImageConfigArgs.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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property repositoryAccessMode Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`.
 * @property repositoryAuthConfig Specifies an authentication configuration for the private docker registry where your model image is hosted. Specify a value for this property only if you specified Vpc as the value for the RepositoryAccessMode field, and the private Docker registry where the model image is hosted requires authentication. see Repository Auth Config.
 */
public data class ModelContainerImageConfigArgs(
    public val repositoryAccessMode: Output,
    public val repositoryAuthConfig: Output? =
        null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.sagemaker.inputs.ModelContainerImageConfigArgs =
        com.pulumi.aws.sagemaker.inputs.ModelContainerImageConfigArgs.builder()
            .repositoryAccessMode(repositoryAccessMode.applyValue({ args0 -> args0 }))
            .repositoryAuthConfig(
                repositoryAuthConfig?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [ModelContainerImageConfigArgs].
 */
@PulumiTagMarker
public class ModelContainerImageConfigArgsBuilder internal constructor() {
    private var repositoryAccessMode: Output? = null

    private var repositoryAuthConfig: Output? =
        null

    /**
     * @param value Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`.
     */
    @JvmName("neytlepcnxkkxcly")
    public suspend fun repositoryAccessMode(`value`: Output) {
        this.repositoryAccessMode = value
    }

    /**
     * @param value Specifies an authentication configuration for the private docker registry where your model image is hosted. Specify a value for this property only if you specified Vpc as the value for the RepositoryAccessMode field, and the private Docker registry where the model image is hosted requires authentication. see Repository Auth Config.
     */
    @JvmName("twbjrftraclhfaiv")
    public suspend fun repositoryAuthConfig(`value`: Output) {
        this.repositoryAuthConfig = value
    }

    /**
     * @param value Specifies whether the model container is in Amazon ECR or a private Docker registry accessible from your Amazon Virtual Private Cloud (VPC). Allowed values are: `Platform` and `Vpc`.
     */
    @JvmName("rygepysgmempfxqo")
    public suspend fun repositoryAccessMode(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.repositoryAccessMode = mapped
    }

    /**
     * @param value Specifies an authentication configuration for the private docker registry where your model image is hosted. Specify a value for this property only if you specified Vpc as the value for the RepositoryAccessMode field, and the private Docker registry where the model image is hosted requires authentication. see Repository Auth Config.
     */
    @JvmName("cyllmkvuhhygqrxp")
    public suspend fun repositoryAuthConfig(`value`: ModelContainerImageConfigRepositoryAuthConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.repositoryAuthConfig = mapped
    }

    /**
     * @param argument Specifies an authentication configuration for the private docker registry where your model image is hosted. Specify a value for this property only if you specified Vpc as the value for the RepositoryAccessMode field, and the private Docker registry where the model image is hosted requires authentication. see Repository Auth Config.
     */
    @JvmName("vefhfcqnmddwldaq")
    public suspend fun repositoryAuthConfig(argument: suspend ModelContainerImageConfigRepositoryAuthConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ModelContainerImageConfigRepositoryAuthConfigArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.repositoryAuthConfig = mapped
    }

    internal fun build(): ModelContainerImageConfigArgs = ModelContainerImageConfigArgs(
        repositoryAccessMode = repositoryAccessMode ?: throw
            PulumiNullFieldException("repositoryAccessMode"),
        repositoryAuthConfig = repositoryAuthConfig,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy