com.pulumi.gcp.vmwareengine.kotlin.inputs.PrivateCloudNetworkConfigArgs.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.vmwareengine.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.vmwareengine.inputs.PrivateCloudNetworkConfigArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property dnsServerIp (Output)
* DNS Server IP of the Private Cloud.
* @property managementCidr Management CIDR used by VMware management appliances.
* @property managementIpAddressLayoutVersion (Output)
* The IP address layout version of the management IP address range.
* Possible versions include:
* * managementIpAddressLayoutVersion=1: Indicates the legacy IP address layout used by some existing private clouds. This is no longer supported for new private clouds
* as it does not support all features.
* * managementIpAddressLayoutVersion=2: Indicates the latest IP address layout
* used by all newly created private clouds. This version supports all current features.
* @property vmwareEngineNetwork The relative resource name of the VMware Engine network attached to the private cloud.
* Specify the name in the following form: projects/{project}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
* where {project} can either be a project number or a project ID.
* @property vmwareEngineNetworkCanonical (Output)
* The canonical name of the VMware Engine network in
* the form: projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
*/
public data class PrivateCloudNetworkConfigArgs(
public val dnsServerIp: Output? = null,
public val managementCidr: Output,
public val managementIpAddressLayoutVersion: Output? = null,
public val vmwareEngineNetwork: Output? = null,
public val vmwareEngineNetworkCanonical: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.vmwareengine.inputs.PrivateCloudNetworkConfigArgs =
com.pulumi.gcp.vmwareengine.inputs.PrivateCloudNetworkConfigArgs.builder()
.dnsServerIp(dnsServerIp?.applyValue({ args0 -> args0 }))
.managementCidr(managementCidr.applyValue({ args0 -> args0 }))
.managementIpAddressLayoutVersion(managementIpAddressLayoutVersion?.applyValue({ args0 -> args0 }))
.vmwareEngineNetwork(vmwareEngineNetwork?.applyValue({ args0 -> args0 }))
.vmwareEngineNetworkCanonical(vmwareEngineNetworkCanonical?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [PrivateCloudNetworkConfigArgs].
*/
@PulumiTagMarker
public class PrivateCloudNetworkConfigArgsBuilder internal constructor() {
private var dnsServerIp: Output? = null
private var managementCidr: Output? = null
private var managementIpAddressLayoutVersion: Output? = null
private var vmwareEngineNetwork: Output? = null
private var vmwareEngineNetworkCanonical: Output? = null
/**
* @param value (Output)
* DNS Server IP of the Private Cloud.
*/
@JvmName("guqjmuefgsloqnky")
public suspend fun dnsServerIp(`value`: Output) {
this.dnsServerIp = value
}
/**
* @param value Management CIDR used by VMware management appliances.
*/
@JvmName("yxlpsdirudulcrnh")
public suspend fun managementCidr(`value`: Output) {
this.managementCidr = value
}
/**
* @param value (Output)
* The IP address layout version of the management IP address range.
* Possible versions include:
* * managementIpAddressLayoutVersion=1: Indicates the legacy IP address layout used by some existing private clouds. This is no longer supported for new private clouds
* as it does not support all features.
* * managementIpAddressLayoutVersion=2: Indicates the latest IP address layout
* used by all newly created private clouds. This version supports all current features.
*/
@JvmName("ktdijgcioxlsmeix")
public suspend fun managementIpAddressLayoutVersion(`value`: Output) {
this.managementIpAddressLayoutVersion = value
}
/**
* @param value The relative resource name of the VMware Engine network attached to the private cloud.
* Specify the name in the following form: projects/{project}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
* where {project} can either be a project number or a project ID.
*/
@JvmName("sxqtdetaopceawxy")
public suspend fun vmwareEngineNetwork(`value`: Output) {
this.vmwareEngineNetwork = value
}
/**
* @param value (Output)
* The canonical name of the VMware Engine network in
* the form: projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
*/
@JvmName("biivwxutrouwqrej")
public suspend fun vmwareEngineNetworkCanonical(`value`: Output) {
this.vmwareEngineNetworkCanonical = value
}
/**
* @param value (Output)
* DNS Server IP of the Private Cloud.
*/
@JvmName("aeaewnpxwdbyabhm")
public suspend fun dnsServerIp(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dnsServerIp = mapped
}
/**
* @param value Management CIDR used by VMware management appliances.
*/
@JvmName("gecwqakupdycpnjw")
public suspend fun managementCidr(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.managementCidr = mapped
}
/**
* @param value (Output)
* The IP address layout version of the management IP address range.
* Possible versions include:
* * managementIpAddressLayoutVersion=1: Indicates the legacy IP address layout used by some existing private clouds. This is no longer supported for new private clouds
* as it does not support all features.
* * managementIpAddressLayoutVersion=2: Indicates the latest IP address layout
* used by all newly created private clouds. This version supports all current features.
*/
@JvmName("biwlamttbkenjafs")
public suspend fun managementIpAddressLayoutVersion(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.managementIpAddressLayoutVersion = mapped
}
/**
* @param value The relative resource name of the VMware Engine network attached to the private cloud.
* Specify the name in the following form: projects/{project}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
* where {project} can either be a project number or a project ID.
*/
@JvmName("btotwkoqoblnvqyc")
public suspend fun vmwareEngineNetwork(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.vmwareEngineNetwork = mapped
}
/**
* @param value (Output)
* The canonical name of the VMware Engine network in
* the form: projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmwareEngineNetworkId}
*/
@JvmName("sthxeispflgkkran")
public suspend fun vmwareEngineNetworkCanonical(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.vmwareEngineNetworkCanonical = mapped
}
internal fun build(): PrivateCloudNetworkConfigArgs = PrivateCloudNetworkConfigArgs(
dnsServerIp = dnsServerIp,
managementCidr = managementCidr ?: throw PulumiNullFieldException("managementCidr"),
managementIpAddressLayoutVersion = managementIpAddressLayoutVersion,
vmwareEngineNetwork = vmwareEngineNetwork,
vmwareEngineNetworkCanonical = vmwareEngineNetworkCanonical,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy