com.pulumi.kubernetes.resource.v1alpha3.kotlin.inputs.ResourceClaimSpecPatchArgs.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.ResourceClaimSpecPatchArgs.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 ResourceClaimSpecPatchArgs(
public val controller: Output? = null,
public val devices: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.kubernetes.resource.v1alpha3.inputs.ResourceClaimSpecPatchArgs =
com.pulumi.kubernetes.resource.v1alpha3.inputs.ResourceClaimSpecPatchArgs.builder()
.controller(controller?.applyValue({ args0 -> args0 }))
.devices(devices?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [ResourceClaimSpecPatchArgs].
*/
@PulumiTagMarker
public class ResourceClaimSpecPatchArgsBuilder 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("sqpkjkspswumcnlv")
public suspend fun controller(`value`: Output) {
this.controller = value
}
/**
* @param value Devices defines how to request devices.
*/
@JvmName("jrctgcekxxcjxxhv")
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("chjhetngtujrpeiv")
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("beofnqfqnmwqosak")
public suspend fun devices(`value`: DeviceClaimPatchArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.devices = mapped
}
/**
* @param argument Devices defines how to request devices.
*/
@JvmName("bllhvhtawngiqwqm")
public suspend fun devices(argument: suspend DeviceClaimPatchArgsBuilder.() -> Unit) {
val toBeMapped = DeviceClaimPatchArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.devices = mapped
}
internal fun build(): ResourceClaimSpecPatchArgs = ResourceClaimSpecPatchArgs(
controller = controller,
devices = devices,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy