
com.pulumi.azurenative.machinelearningservices.kotlin.inputs.VolumeDefinitionArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.machinelearningservices.kotlin.inputs
import com.pulumi.azurenative.machinelearningservices.inputs.VolumeDefinitionArgs.builder
import com.pulumi.azurenative.machinelearningservices.kotlin.enums.VolumeDefinitionType
import com.pulumi.core.Either
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Describes the volume configuration for the container
* @property bind Bind Options of the mount
* @property consistency Consistency of the volume
* @property readOnly Indicate whether to mount volume as readOnly. Default value for this is false.
* @property source Source of the mount. For bind mounts this is the host path.
* @property target Target of the mount. For bind mounts this is the path in the container.
* @property tmpfs tmpfs option of the mount
* @property type Type of Volume Definition. Possible Values: bind,volume,tmpfs,npipe
* @property volume Volume Options of the mount
*/
public data class VolumeDefinitionArgs(
public val bind: Output? = null,
public val consistency: Output? = null,
public val readOnly: Output? = null,
public val source: Output? = null,
public val target: Output? = null,
public val tmpfs: Output? = null,
public val type: Output>? = null,
public val volume: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.machinelearningservices.inputs.VolumeDefinitionArgs = com.pulumi.azurenative.machinelearningservices.inputs.VolumeDefinitionArgs.builder()
.bind(bind?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.consistency(consistency?.applyValue({ args0 -> args0 }))
.readOnly(readOnly?.applyValue({ args0 -> args0 }))
.source(source?.applyValue({ args0 -> args0 }))
.target(target?.applyValue({ args0 -> args0 }))
.tmpfs(tmpfs?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.type(
type?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.volume(volume?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [VolumeDefinitionArgs].
*/
@PulumiTagMarker
public class VolumeDefinitionArgsBuilder internal constructor() {
private var bind: Output? = null
private var consistency: Output? = null
private var readOnly: Output? = null
private var source: Output? = null
private var target: Output? = null
private var tmpfs: Output? = null
private var type: Output>? = null
private var volume: Output? = null
/**
* @param value Bind Options of the mount
*/
@JvmName("njmydpvcjfsohkoa")
public suspend fun bind(`value`: Output) {
this.bind = value
}
/**
* @param value Consistency of the volume
*/
@JvmName("spxdcvaxxrjlgnio")
public suspend fun consistency(`value`: Output) {
this.consistency = value
}
/**
* @param value Indicate whether to mount volume as readOnly. Default value for this is false.
*/
@JvmName("rtntlfpbyuegmoud")
public suspend fun readOnly(`value`: Output) {
this.readOnly = value
}
/**
* @param value Source of the mount. For bind mounts this is the host path.
*/
@JvmName("vjvnqicevrbdgcdr")
public suspend fun source(`value`: Output) {
this.source = value
}
/**
* @param value Target of the mount. For bind mounts this is the path in the container.
*/
@JvmName("ivvorhweajechfww")
public suspend fun target(`value`: Output) {
this.target = value
}
/**
* @param value tmpfs option of the mount
*/
@JvmName("uisgousayrhyinle")
public suspend fun tmpfs(`value`: Output) {
this.tmpfs = value
}
/**
* @param value Type of Volume Definition. Possible Values: bind,volume,tmpfs,npipe
*/
@JvmName("tfqiyauvbqppmqqf")
public suspend fun type(`value`: Output>) {
this.type = value
}
/**
* @param value Volume Options of the mount
*/
@JvmName("xqsjijukesivguii")
public suspend fun volume(`value`: Output) {
this.volume = value
}
/**
* @param value Bind Options of the mount
*/
@JvmName("fjphkdjjrbvcmrux")
public suspend fun bind(`value`: BindOptionsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.bind = mapped
}
/**
* @param argument Bind Options of the mount
*/
@JvmName("owwjmtnhiuvqunvh")
public suspend fun bind(argument: suspend BindOptionsArgsBuilder.() -> Unit) {
val toBeMapped = BindOptionsArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.bind = mapped
}
/**
* @param value Consistency of the volume
*/
@JvmName("mdgkljayjahnbiuq")
public suspend fun consistency(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.consistency = mapped
}
/**
* @param value Indicate whether to mount volume as readOnly. Default value for this is false.
*/
@JvmName("dhlknshtocvnxdef")
public suspend fun readOnly(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.readOnly = mapped
}
/**
* @param value Source of the mount. For bind mounts this is the host path.
*/
@JvmName("odghtgtbdqcojgmw")
public suspend fun source(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.source = mapped
}
/**
* @param value Target of the mount. For bind mounts this is the path in the container.
*/
@JvmName("kacqwyhnnonkwmmt")
public suspend fun target(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.target = mapped
}
/**
* @param value tmpfs option of the mount
*/
@JvmName("whmuxxbgmahmvkdu")
public suspend fun tmpfs(`value`: TmpfsOptionsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.tmpfs = mapped
}
/**
* @param argument tmpfs option of the mount
*/
@JvmName("nvdafnodqvimxunj")
public suspend fun tmpfs(argument: suspend TmpfsOptionsArgsBuilder.() -> Unit) {
val toBeMapped = TmpfsOptionsArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.tmpfs = mapped
}
/**
* @param value Type of Volume Definition. Possible Values: bind,volume,tmpfs,npipe
*/
@JvmName("bohpgurxdbbvdcpc")
public suspend fun type(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.type = mapped
}
/**
* @param value Type of Volume Definition. Possible Values: bind,volume,tmpfs,npipe
*/
@JvmName("gbsnyvmhcclvjxfg")
public fun type(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.type = mapped
}
/**
* @param value Type of Volume Definition. Possible Values: bind,volume,tmpfs,npipe
*/
@JvmName("xbqnysdhyqnkyowe")
public fun type(`value`: VolumeDefinitionType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.type = mapped
}
/**
* @param value Volume Options of the mount
*/
@JvmName("jhpxvpmlgivxoyfg")
public suspend fun volume(`value`: VolumeOptionsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.volume = mapped
}
/**
* @param argument Volume Options of the mount
*/
@JvmName("tbefcaykqapnktdc")
public suspend fun volume(argument: suspend VolumeOptionsArgsBuilder.() -> Unit) {
val toBeMapped = VolumeOptionsArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.volume = mapped
}
internal fun build(): VolumeDefinitionArgs = VolumeDefinitionArgs(
bind = bind,
consistency = consistency,
readOnly = readOnly,
source = source,
target = target,
tmpfs = tmpfs,
type = type,
volume = volume,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy