![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.ec2.kotlin.inputs.LaunchTemplateCpuOptionsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.ec2.kotlin.inputs
import com.pulumi.awsnative.ec2.inputs.LaunchTemplateCpuOptionsArgs.builder
import com.pulumi.awsnative.ec2.kotlin.enums.LaunchTemplateCpuOptionsAmdSevSnp
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Specifies the CPU options for an instance. For more information, see [Optimize CPU options](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html) in the *User Guide*.
* ``CpuOptions`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).
* @property amdSevSnp Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see [AMD SEV-SNP](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html).
* @property coreCount The number of CPU cores for the instance.
* @property threadsPerCore The number of threads per CPU core. To disable multithreading for the instance, specify a value of ``1``. Otherwise, specify the default value of ``2``.
*/
public data class LaunchTemplateCpuOptionsArgs(
public val amdSevSnp: Output? = null,
public val coreCount: Output? = null,
public val threadsPerCore: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.ec2.inputs.LaunchTemplateCpuOptionsArgs =
com.pulumi.awsnative.ec2.inputs.LaunchTemplateCpuOptionsArgs.builder()
.amdSevSnp(amdSevSnp?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.coreCount(coreCount?.applyValue({ args0 -> args0 }))
.threadsPerCore(threadsPerCore?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [LaunchTemplateCpuOptionsArgs].
*/
@PulumiTagMarker
public class LaunchTemplateCpuOptionsArgsBuilder internal constructor() {
private var amdSevSnp: Output? = null
private var coreCount: Output? = null
private var threadsPerCore: Output? = null
/**
* @param value Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see [AMD SEV-SNP](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html).
*/
@JvmName("tkijdmnodgxywkem")
public suspend fun amdSevSnp(`value`: Output) {
this.amdSevSnp = value
}
/**
* @param value The number of CPU cores for the instance.
*/
@JvmName("shlbgdoteuacvxwp")
public suspend fun coreCount(`value`: Output) {
this.coreCount = value
}
/**
* @param value The number of threads per CPU core. To disable multithreading for the instance, specify a value of ``1``. Otherwise, specify the default value of ``2``.
*/
@JvmName("qumepqkrbgrxyhnt")
public suspend fun threadsPerCore(`value`: Output) {
this.threadsPerCore = value
}
/**
* @param value Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see [AMD SEV-SNP](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html).
*/
@JvmName("ryyqkimfnblpwpyk")
public suspend fun amdSevSnp(`value`: LaunchTemplateCpuOptionsAmdSevSnp?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.amdSevSnp = mapped
}
/**
* @param value The number of CPU cores for the instance.
*/
@JvmName("takdgfgaqosbyvqa")
public suspend fun coreCount(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.coreCount = mapped
}
/**
* @param value The number of threads per CPU core. To disable multithreading for the instance, specify a value of ``1``. Otherwise, specify the default value of ``2``.
*/
@JvmName("pjocukmyctetstkh")
public suspend fun threadsPerCore(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.threadsPerCore = mapped
}
internal fun build(): LaunchTemplateCpuOptionsArgs = LaunchTemplateCpuOptionsArgs(
amdSevSnp = amdSevSnp,
coreCount = coreCount,
threadsPerCore = threadsPerCore,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy