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

com.pulumi.awsnative.sagemaker.kotlin.inputs.DataQualityJobDefinitionNetworkConfigArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.sagemaker.kotlin.inputs

import com.pulumi.awsnative.sagemaker.inputs.DataQualityJobDefinitionNetworkConfigArgs.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.Boolean
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.
 * @property enableInterContainerTrafficEncryption Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.
 * @property enableNetworkIsolation Whether to allow inbound and outbound network calls to and from the containers used for the processing job.
 * @property vpcConfig Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC.
 */
public data class DataQualityJobDefinitionNetworkConfigArgs(
    public val enableInterContainerTrafficEncryption: Output? = null,
    public val enableNetworkIsolation: Output? = null,
    public val vpcConfig: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.sagemaker.inputs.DataQualityJobDefinitionNetworkConfigArgs =
        com.pulumi.awsnative.sagemaker.inputs.DataQualityJobDefinitionNetworkConfigArgs.builder()
            .enableInterContainerTrafficEncryption(
                enableInterContainerTrafficEncryption?.applyValue({ args0 ->
                    args0
                }),
            )
            .enableNetworkIsolation(enableNetworkIsolation?.applyValue({ args0 -> args0 }))
            .vpcConfig(vpcConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [DataQualityJobDefinitionNetworkConfigArgs].
 */
@PulumiTagMarker
public class DataQualityJobDefinitionNetworkConfigArgsBuilder internal constructor() {
    private var enableInterContainerTrafficEncryption: Output? = null

    private var enableNetworkIsolation: Output? = null

    private var vpcConfig: Output? = null

    /**
     * @param value Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.
     */
    @JvmName("blkldiairxefsmjm")
    public suspend fun enableInterContainerTrafficEncryption(`value`: Output) {
        this.enableInterContainerTrafficEncryption = value
    }

    /**
     * @param value Whether to allow inbound and outbound network calls to and from the containers used for the processing job.
     */
    @JvmName("ujqxqgtvxlkwbqej")
    public suspend fun enableNetworkIsolation(`value`: Output) {
        this.enableNetworkIsolation = value
    }

    /**
     * @param value Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC.
     */
    @JvmName("nvclofhxhelvkgka")
    public suspend fun vpcConfig(`value`: Output) {
        this.vpcConfig = value
    }

    /**
     * @param value Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.
     */
    @JvmName("ilcpuxxauengvkxu")
    public suspend fun enableInterContainerTrafficEncryption(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enableInterContainerTrafficEncryption = mapped
    }

    /**
     * @param value Whether to allow inbound and outbound network calls to and from the containers used for the processing job.
     */
    @JvmName("epnmpkqvcaxbbnni")
    public suspend fun enableNetworkIsolation(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enableNetworkIsolation = mapped
    }

    /**
     * @param value Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC.
     */
    @JvmName("kgcrhwenfcrefuqu")
    public suspend fun vpcConfig(`value`: DataQualityJobDefinitionVpcConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpcConfig = mapped
    }

    /**
     * @param argument Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC.
     */
    @JvmName("gkxhemqgceqxrats")
    public suspend fun vpcConfig(argument: suspend DataQualityJobDefinitionVpcConfigArgsBuilder.() -> Unit) {
        val toBeMapped = DataQualityJobDefinitionVpcConfigArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.vpcConfig = mapped
    }

    internal fun build(): DataQualityJobDefinitionNetworkConfigArgs =
        DataQualityJobDefinitionNetworkConfigArgs(
            enableInterContainerTrafficEncryption = enableInterContainerTrafficEncryption,
            enableNetworkIsolation = enableNetworkIsolation,
            vpcConfig = vpcConfig,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy