com.pulumi.kubernetes.resource.v1alpha3.kotlin.inputs.ResourceClaimSpecArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-kubernetes-kotlin Show documentation
Show all versions of pulumi-kubernetes-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.kubernetes.resource.v1alpha3.kotlin.inputs
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 com.pulumi.kubernetes.resource.v1alpha3.inputs.ResourceClaimSpecArgs.builder
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* ResourceClaimSpec defines what is being requested in a ResourceClaim and how to configure it.
* @property controller Controller is the name of the DRA driver that is meant to handle allocation of this claim. If empty, allocation is handled by the scheduler while scheduling a pod.
* Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
* This is an alpha field and requires enabling the DRAControlPlaneController feature gate.
* @property devices Devices defines how to request devices.
*/
public data class ResourceClaimSpecArgs(
public val controller: Output? = null,
public val devices: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.kubernetes.resource.v1alpha3.inputs.ResourceClaimSpecArgs =
com.pulumi.kubernetes.resource.v1alpha3.inputs.ResourceClaimSpecArgs.builder()
.controller(controller?.applyValue({ args0 -> args0 }))
.devices(devices?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [ResourceClaimSpecArgs].
*/
@PulumiTagMarker
public class ResourceClaimSpecArgsBuilder internal constructor() {
private var controller: Output? = null
private var devices: Output? = null
/**
* @param value Controller is the name of the DRA driver that is meant to handle allocation of this claim. If empty, allocation is handled by the scheduler while scheduling a pod.
* Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
* This is an alpha field and requires enabling the DRAControlPlaneController feature gate.
*/
@JvmName("mcnxuqtlogmihico")
public suspend fun controller(`value`: Output) {
this.controller = value
}
/**
* @param value Devices defines how to request devices.
*/
@JvmName("kboinvqjkuiluwsv")
public suspend fun devices(`value`: Output) {
this.devices = value
}
/**
* @param value Controller is the name of the DRA driver that is meant to handle allocation of this claim. If empty, allocation is handled by the scheduler while scheduling a pod.
* Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
* This is an alpha field and requires enabling the DRAControlPlaneController feature gate.
*/
@JvmName("teiyfucvpfqlaebs")
public suspend fun controller(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.controller = mapped
}
/**
* @param value Devices defines how to request devices.
*/
@JvmName("wikegvkmqgabbfed")
public suspend fun devices(`value`: DeviceClaimArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.devices = mapped
}
/**
* @param argument Devices defines how to request devices.
*/
@JvmName("suefqhraoclqqxiq")
public suspend fun devices(argument: suspend DeviceClaimArgsBuilder.() -> Unit) {
val toBeMapped = DeviceClaimArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.devices = mapped
}
internal fun build(): ResourceClaimSpecArgs = ResourceClaimSpecArgs(
controller = controller,
devices = devices,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy