com.pulumi.aws.ec2.kotlin.inputs.InstanceMetadataOptionsArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-kotlin Show documentation
Show all versions of pulumi-aws-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.aws.ec2.kotlin.inputs
import com.pulumi.aws.ec2.inputs.InstanceMetadataOptionsArgs.builder
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.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property httpEndpoint Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
* @property httpProtocolIpv6 Whether the IPv6 endpoint for the instance metadata service is enabled. Defaults to `disabled`.
* @property httpPutResponseHopLimit Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
* @property httpTokens Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`.
* @property instanceMetadataTags Enables or disables access to instance tags from the instance metadata service. Valid values include `enabled` or `disabled`. Defaults to `disabled`.
* For more information, see the documentation on the [Instance Metadata Service](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html).
*/
public data class InstanceMetadataOptionsArgs(
public val httpEndpoint: Output? = null,
public val httpProtocolIpv6: Output? = null,
public val httpPutResponseHopLimit: Output? = null,
public val httpTokens: Output? = null,
public val instanceMetadataTags: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.aws.ec2.inputs.InstanceMetadataOptionsArgs =
com.pulumi.aws.ec2.inputs.InstanceMetadataOptionsArgs.builder()
.httpEndpoint(httpEndpoint?.applyValue({ args0 -> args0 }))
.httpProtocolIpv6(httpProtocolIpv6?.applyValue({ args0 -> args0 }))
.httpPutResponseHopLimit(httpPutResponseHopLimit?.applyValue({ args0 -> args0 }))
.httpTokens(httpTokens?.applyValue({ args0 -> args0 }))
.instanceMetadataTags(instanceMetadataTags?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [InstanceMetadataOptionsArgs].
*/
@PulumiTagMarker
public class InstanceMetadataOptionsArgsBuilder internal constructor() {
private var httpEndpoint: Output? = null
private var httpProtocolIpv6: Output? = null
private var httpPutResponseHopLimit: Output? = null
private var httpTokens: Output? = null
private var instanceMetadataTags: Output? = null
/**
* @param value Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
*/
@JvmName("jswmrabjkeelrsib")
public suspend fun httpEndpoint(`value`: Output) {
this.httpEndpoint = value
}
/**
* @param value Whether the IPv6 endpoint for the instance metadata service is enabled. Defaults to `disabled`.
*/
@JvmName("yofirvujmfokxgkc")
public suspend fun httpProtocolIpv6(`value`: Output) {
this.httpProtocolIpv6 = value
}
/**
* @param value Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
*/
@JvmName("bqoyqsngahshlxfu")
public suspend fun httpPutResponseHopLimit(`value`: Output) {
this.httpPutResponseHopLimit = value
}
/**
* @param value Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`.
*/
@JvmName("dvqpkfkcofncwnpg")
public suspend fun httpTokens(`value`: Output) {
this.httpTokens = value
}
/**
* @param value Enables or disables access to instance tags from the instance metadata service. Valid values include `enabled` or `disabled`. Defaults to `disabled`.
* For more information, see the documentation on the [Instance Metadata Service](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html).
*/
@JvmName("pakdyuhmxdhjtlie")
public suspend fun instanceMetadataTags(`value`: Output) {
this.instanceMetadataTags = value
}
/**
* @param value Whether the metadata service is available. Valid values include `enabled` or `disabled`. Defaults to `enabled`.
*/
@JvmName("quhajesprfpdkqpa")
public suspend fun httpEndpoint(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpEndpoint = mapped
}
/**
* @param value Whether the IPv6 endpoint for the instance metadata service is enabled. Defaults to `disabled`.
*/
@JvmName("kwglxxxynqabvyqh")
public suspend fun httpProtocolIpv6(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpProtocolIpv6 = mapped
}
/**
* @param value Desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values are integer from `1` to `64`. Defaults to `1`.
*/
@JvmName("nlaivgsgyprekhfn")
public suspend fun httpPutResponseHopLimit(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpPutResponseHopLimit = mapped
}
/**
* @param value Whether or not the metadata service requires session tokens, also referred to as _Instance Metadata Service Version 2 (IMDSv2)_. Valid values include `optional` or `required`.
*/
@JvmName("svunjiwrladyqbml")
public suspend fun httpTokens(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.httpTokens = mapped
}
/**
* @param value Enables or disables access to instance tags from the instance metadata service. Valid values include `enabled` or `disabled`. Defaults to `disabled`.
* For more information, see the documentation on the [Instance Metadata Service](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html).
*/
@JvmName("evhvcrcctborfiln")
public suspend fun instanceMetadataTags(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.instanceMetadataTags = mapped
}
internal fun build(): InstanceMetadataOptionsArgs = InstanceMetadataOptionsArgs(
httpEndpoint = httpEndpoint,
httpProtocolIpv6 = httpProtocolIpv6,
httpPutResponseHopLimit = httpPutResponseHopLimit,
httpTokens = httpTokens,
instanceMetadataTags = instanceMetadataTags,
)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy