com.pulumi.gcp.compute.kotlin.inputs.InstanceSchedulingNodeAffinityArgs.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.compute.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.compute.inputs.InstanceSchedulingNodeAffinityArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property key The key for the node affinity label.
* @property operator The operator. Can be `IN` for node-affinities
* or `NOT_IN` for anti-affinities.
* @property values The values for the node affinity label.
*/
public data class InstanceSchedulingNodeAffinityArgs(
public val key: Output,
public val `operator`: Output,
public val values: Output>,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.compute.inputs.InstanceSchedulingNodeAffinityArgs =
com.pulumi.gcp.compute.inputs.InstanceSchedulingNodeAffinityArgs.builder()
.key(key.applyValue({ args0 -> args0 }))
.`operator`(`operator`.applyValue({ args0 -> args0 }))
.values(values.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}
/**
* Builder for [InstanceSchedulingNodeAffinityArgs].
*/
@PulumiTagMarker
public class InstanceSchedulingNodeAffinityArgsBuilder internal constructor() {
private var key: Output? = null
private var `operator`: Output? = null
private var values: Output>? = null
/**
* @param value The key for the node affinity label.
*/
@JvmName("yaarwfaaxejvxxiq")
public suspend fun key(`value`: Output) {
this.key = value
}
/**
* @param value The operator. Can be `IN` for node-affinities
* or `NOT_IN` for anti-affinities.
*/
@JvmName("sxcwxghvjyngmseq")
public suspend fun `operator`(`value`: Output) {
this.`operator` = value
}
/**
* @param value The values for the node affinity label.
*/
@JvmName("oacelicnqaqqlfng")
public suspend fun values(`value`: Output>) {
this.values = value
}
@JvmName("nckjonytfvobqruv")
public suspend fun values(vararg values: Output) {
this.values = Output.all(values.asList())
}
/**
* @param values The values for the node affinity label.
*/
@JvmName("klqpvpmvoiakfktr")
public suspend fun values(values: List
© 2015 - 2024 Weber Informatics LLC | Privacy Policy