All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.compute.kotlin.inputs.HealthCheckHttp2HealthCheckArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.12.0.0
Show newest version
@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.HealthCheckHttp2HealthCheckArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property host The value of the host header in the HTTP2 health check request.
 * If left empty (default value), the public IP on behalf of which this health
 * check is performed will be used.
 * @property port The TCP port number for the HTTP2 health check request.
 * The default value is 443.
 * @property portName Port name as defined in InstanceGroup#NamedPort#name. If both port and
 * port_name are defined, port takes precedence.
 * @property portSpecification Specifies how port is selected for health checking, can be one of the
 * following values:
 *   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
 *   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
 *   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
 *   network endpoint is used for health checking. For other backends, the
 *   port or named port specified in the Backend Service is used for health
 *   checking.
 * If not specified, HTTP2 health check follows behavior specified in 'port' and
 * 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
 * @property proxyHeader Specifies the type of proxy header to append before sending data to the
 * backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
 * @property requestPath The request path of the HTTP2 health check request.
 * The default value is /.
 * @property response The bytes to match against the beginning of the response data. If left empty
 * (the default value), any response will indicate health. The response data
 * can only be ASCII.
 */
public data class HealthCheckHttp2HealthCheckArgs(
    public val host: Output? = null,
    public val port: Output? = null,
    public val portName: Output? = null,
    public val portSpecification: Output? = null,
    public val proxyHeader: Output? = null,
    public val requestPath: Output? = null,
    public val response: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.compute.inputs.HealthCheckHttp2HealthCheckArgs =
        com.pulumi.gcp.compute.inputs.HealthCheckHttp2HealthCheckArgs.builder()
            .host(host?.applyValue({ args0 -> args0 }))
            .port(port?.applyValue({ args0 -> args0 }))
            .portName(portName?.applyValue({ args0 -> args0 }))
            .portSpecification(portSpecification?.applyValue({ args0 -> args0 }))
            .proxyHeader(proxyHeader?.applyValue({ args0 -> args0 }))
            .requestPath(requestPath?.applyValue({ args0 -> args0 }))
            .response(response?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [HealthCheckHttp2HealthCheckArgs].
 */
@PulumiTagMarker
public class HealthCheckHttp2HealthCheckArgsBuilder internal constructor() {
    private var host: Output? = null

    private var port: Output? = null

    private var portName: Output? = null

    private var portSpecification: Output? = null

    private var proxyHeader: Output? = null

    private var requestPath: Output? = null

    private var response: Output? = null

    /**
     * @param value The value of the host header in the HTTP2 health check request.
     * If left empty (default value), the public IP on behalf of which this health
     * check is performed will be used.
     */
    @JvmName("gpgvnbeahxylfshb")
    public suspend fun host(`value`: Output) {
        this.host = value
    }

    /**
     * @param value The TCP port number for the HTTP2 health check request.
     * The default value is 443.
     */
    @JvmName("cdiyuycbhdicsdmb")
    public suspend fun port(`value`: Output) {
        this.port = value
    }

    /**
     * @param value Port name as defined in InstanceGroup#NamedPort#name. If both port and
     * port_name are defined, port takes precedence.
     */
    @JvmName("fhlydnyyavyquhsa")
    public suspend fun portName(`value`: Output) {
        this.portName = value
    }

    /**
     * @param value Specifies how port is selected for health checking, can be one of the
     * following values:
     *   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
     *   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
     *   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
     *   network endpoint is used for health checking. For other backends, the
     *   port or named port specified in the Backend Service is used for health
     *   checking.
     * If not specified, HTTP2 health check follows behavior specified in 'port' and
     * 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
     */
    @JvmName("ambuuhsrmorxthkl")
    public suspend fun portSpecification(`value`: Output) {
        this.portSpecification = value
    }

    /**
     * @param value Specifies the type of proxy header to append before sending data to the
     * backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
     */
    @JvmName("ltfsieuyyptwsfeb")
    public suspend fun proxyHeader(`value`: Output) {
        this.proxyHeader = value
    }

    /**
     * @param value The request path of the HTTP2 health check request.
     * The default value is /.
     */
    @JvmName("lvyeephtqinrlcwt")
    public suspend fun requestPath(`value`: Output) {
        this.requestPath = value
    }

    /**
     * @param value The bytes to match against the beginning of the response data. If left empty
     * (the default value), any response will indicate health. The response data
     * can only be ASCII.
     */
    @JvmName("ybsxkgnevlemqttm")
    public suspend fun response(`value`: Output) {
        this.response = value
    }

    /**
     * @param value The value of the host header in the HTTP2 health check request.
     * If left empty (default value), the public IP on behalf of which this health
     * check is performed will be used.
     */
    @JvmName("fnbjstjsotawvhfb")
    public suspend fun host(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.host = mapped
    }

    /**
     * @param value The TCP port number for the HTTP2 health check request.
     * The default value is 443.
     */
    @JvmName("vshhqbnstoqcoxcl")
    public suspend fun port(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.port = mapped
    }

    /**
     * @param value Port name as defined in InstanceGroup#NamedPort#name. If both port and
     * port_name are defined, port takes precedence.
     */
    @JvmName("ymayomtfarmsjdyo")
    public suspend fun portName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.portName = mapped
    }

    /**
     * @param value Specifies how port is selected for health checking, can be one of the
     * following values:
     *   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
     *   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
     *   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
     *   network endpoint is used for health checking. For other backends, the
     *   port or named port specified in the Backend Service is used for health
     *   checking.
     * If not specified, HTTP2 health check follows behavior specified in 'port' and
     * 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
     */
    @JvmName("nrhayklqycfmgckf")
    public suspend fun portSpecification(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.portSpecification = mapped
    }

    /**
     * @param value Specifies the type of proxy header to append before sending data to the
     * backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
     */
    @JvmName("wuaxmnuilihvfotq")
    public suspend fun proxyHeader(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.proxyHeader = mapped
    }

    /**
     * @param value The request path of the HTTP2 health check request.
     * The default value is /.
     */
    @JvmName("ttjdigxmkbfyuaub")
    public suspend fun requestPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.requestPath = mapped
    }

    /**
     * @param value The bytes to match against the beginning of the response data. If left empty
     * (the default value), any response will indicate health. The response data
     * can only be ASCII.
     */
    @JvmName("emqtqvshivsqebby")
    public suspend fun response(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.response = mapped
    }

    internal fun build(): HealthCheckHttp2HealthCheckArgs = HealthCheckHttp2HealthCheckArgs(
        host = host,
        port = port,
        portName = portName,
        portSpecification = portSpecification,
        proxyHeader = proxyHeader,
        requestPath = requestPath,
        response = response,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy