
com.pulumi.azurenative.networkcloud.kotlin.inputs.BareMetalMachineConfigurationDataArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.networkcloud.kotlin.inputs
import com.pulumi.azurenative.networkcloud.inputs.BareMetalMachineConfigurationDataArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Double
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
*
* @property bmcCredentials The credentials of the baseboard management controller on this bare metal machine.
* @property bmcMacAddress The MAC address of the BMC for this machine.
* @property bootMacAddress The MAC address associated with the PXE NIC card.
* @property machineDetails The free-form additional information about the machine, e.g. an asset tag.
* @property machineName The user-provided name for the bare metal machine created from this specification.
* If not provided, the machine name will be generated programmatically.
* @property rackSlot The slot the physical machine is in the rack based on the BOM configuration.
* @property serialNumber The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag.
*/
public data class BareMetalMachineConfigurationDataArgs(
public val bmcCredentials: Output,
public val bmcMacAddress: Output,
public val bootMacAddress: Output,
public val machineDetails: Output? = null,
public val machineName: Output? = null,
public val rackSlot: Output,
public val serialNumber: Output,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.networkcloud.inputs.BareMetalMachineConfigurationDataArgs =
com.pulumi.azurenative.networkcloud.inputs.BareMetalMachineConfigurationDataArgs.builder()
.bmcCredentials(bmcCredentials.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.bmcMacAddress(bmcMacAddress.applyValue({ args0 -> args0 }))
.bootMacAddress(bootMacAddress.applyValue({ args0 -> args0 }))
.machineDetails(machineDetails?.applyValue({ args0 -> args0 }))
.machineName(machineName?.applyValue({ args0 -> args0 }))
.rackSlot(rackSlot.applyValue({ args0 -> args0 }))
.serialNumber(serialNumber.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [BareMetalMachineConfigurationDataArgs].
*/
@PulumiTagMarker
public class BareMetalMachineConfigurationDataArgsBuilder internal constructor() {
private var bmcCredentials: Output? = null
private var bmcMacAddress: Output? = null
private var bootMacAddress: Output? = null
private var machineDetails: Output? = null
private var machineName: Output? = null
private var rackSlot: Output? = null
private var serialNumber: Output? = null
/**
* @param value The credentials of the baseboard management controller on this bare metal machine.
*/
@JvmName("dnweitodjdmdxtfx")
public suspend fun bmcCredentials(`value`: Output) {
this.bmcCredentials = value
}
/**
* @param value The MAC address of the BMC for this machine.
*/
@JvmName("gdhtkbnhirrkdodf")
public suspend fun bmcMacAddress(`value`: Output) {
this.bmcMacAddress = value
}
/**
* @param value The MAC address associated with the PXE NIC card.
*/
@JvmName("wykvosnrupjrjncn")
public suspend fun bootMacAddress(`value`: Output) {
this.bootMacAddress = value
}
/**
* @param value The free-form additional information about the machine, e.g. an asset tag.
*/
@JvmName("gxwiyjokbbbfioqy")
public suspend fun machineDetails(`value`: Output) {
this.machineDetails = value
}
/**
* @param value The user-provided name for the bare metal machine created from this specification.
* If not provided, the machine name will be generated programmatically.
*/
@JvmName("feysooewbwdkqbxl")
public suspend fun machineName(`value`: Output) {
this.machineName = value
}
/**
* @param value The slot the physical machine is in the rack based on the BOM configuration.
*/
@JvmName("nyfwfwxpodtfxwsg")
public suspend fun rackSlot(`value`: Output) {
this.rackSlot = value
}
/**
* @param value The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag.
*/
@JvmName("cykcenaaigbolxsc")
public suspend fun serialNumber(`value`: Output) {
this.serialNumber = value
}
/**
* @param value The credentials of the baseboard management controller on this bare metal machine.
*/
@JvmName("lurtmwrojqgrmgjl")
public suspend fun bmcCredentials(`value`: AdministrativeCredentialsArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bmcCredentials = mapped
}
/**
* @param argument The credentials of the baseboard management controller on this bare metal machine.
*/
@JvmName("vtwnlcqfxtnldtbw")
public suspend fun bmcCredentials(argument: suspend AdministrativeCredentialsArgsBuilder.() -> Unit) {
val toBeMapped = AdministrativeCredentialsArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.bmcCredentials = mapped
}
/**
* @param value The MAC address of the BMC for this machine.
*/
@JvmName("viobgdhtyowfnxkc")
public suspend fun bmcMacAddress(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bmcMacAddress = mapped
}
/**
* @param value The MAC address associated with the PXE NIC card.
*/
@JvmName("csopxmpjiavfvqbn")
public suspend fun bootMacAddress(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.bootMacAddress = mapped
}
/**
* @param value The free-form additional information about the machine, e.g. an asset tag.
*/
@JvmName("ysqglbvewrddvjta")
public suspend fun machineDetails(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.machineDetails = mapped
}
/**
* @param value The user-provided name for the bare metal machine created from this specification.
* If not provided, the machine name will be generated programmatically.
*/
@JvmName("yhneflnawwibityn")
public suspend fun machineName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.machineName = mapped
}
/**
* @param value The slot the physical machine is in the rack based on the BOM configuration.
*/
@JvmName("meuaykhjwvdgrbcf")
public suspend fun rackSlot(`value`: Double) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.rackSlot = mapped
}
/**
* @param value The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag.
*/
@JvmName("pvevfejllddlypyd")
public suspend fun serialNumber(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.serialNumber = mapped
}
internal fun build(): BareMetalMachineConfigurationDataArgs =
BareMetalMachineConfigurationDataArgs(
bmcCredentials = bmcCredentials ?: throw PulumiNullFieldException("bmcCredentials"),
bmcMacAddress = bmcMacAddress ?: throw PulumiNullFieldException("bmcMacAddress"),
bootMacAddress = bootMacAddress ?: throw PulumiNullFieldException("bootMacAddress"),
machineDetails = machineDetails,
machineName = machineName,
rackSlot = rackSlot ?: throw PulumiNullFieldException("rackSlot"),
serialNumber = serialNumber ?: throw PulumiNullFieldException("serialNumber"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy