com.pulumi.gcp.tpu.kotlin.inputs.V2VmDataDiskArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-gcp-kotlin Show documentation
Show all versions of pulumi-gcp-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.tpu.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.tpu.inputs.V2VmDataDiskArgs.builder
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 mode The mode in which to attach this disk. If not specified, the default is READ_WRITE
* mode. Only applicable to dataDisks.
* Default value is `READ_WRITE`.
* Possible values are: `READ_WRITE`, `READ_ONLY`.
* @property sourceDisk Specifies the full path to an existing disk. For example:
* "projects/my-project/zones/us-central1-c/disks/my-disk".
*/
public data class V2VmDataDiskArgs(
public val mode: Output? = null,
public val sourceDisk: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.tpu.inputs.V2VmDataDiskArgs =
com.pulumi.gcp.tpu.inputs.V2VmDataDiskArgs.builder()
.mode(mode?.applyValue({ args0 -> args0 }))
.sourceDisk(sourceDisk.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [V2VmDataDiskArgs].
*/
@PulumiTagMarker
public class V2VmDataDiskArgsBuilder internal constructor() {
private var mode: Output? = null
private var sourceDisk: Output? = null
/**
* @param value The mode in which to attach this disk. If not specified, the default is READ_WRITE
* mode. Only applicable to dataDisks.
* Default value is `READ_WRITE`.
* Possible values are: `READ_WRITE`, `READ_ONLY`.
*/
@JvmName("kmjbltvxuqmwnvty")
public suspend fun mode(`value`: Output) {
this.mode = value
}
/**
* @param value Specifies the full path to an existing disk. For example:
* "projects/my-project/zones/us-central1-c/disks/my-disk".
*/
@JvmName("ewcqcbomwbxsrnxg")
public suspend fun sourceDisk(`value`: Output) {
this.sourceDisk = value
}
/**
* @param value The mode in which to attach this disk. If not specified, the default is READ_WRITE
* mode. Only applicable to dataDisks.
* Default value is `READ_WRITE`.
* Possible values are: `READ_WRITE`, `READ_ONLY`.
*/
@JvmName("luniglehdmhmjqoe")
public suspend fun mode(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.mode = mapped
}
/**
* @param value Specifies the full path to an existing disk. For example:
* "projects/my-project/zones/us-central1-c/disks/my-disk".
*/
@JvmName("blbxpjkakfkxsmmo")
public suspend fun sourceDisk(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.sourceDisk = mapped
}
internal fun build(): V2VmDataDiskArgs = V2VmDataDiskArgs(
mode = mode,
sourceDisk = sourceDisk ?: throw PulumiNullFieldException("sourceDisk"),
)
}