com.pulumi.azurenative.appplatform.kotlin.inputs.ProbeArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.appplatform.kotlin.inputs
import com.pulumi.azurenative.appplatform.inputs.ProbeArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Any
import kotlin.Boolean
import kotlin.Int
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Probe describes a health check to be performed against an App Instance to determine whether it is alive or ready to receive traffic.
* @property disableProbe Indicate whether the probe is disabled.
* @property failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1.
* @property initialDelaySeconds Number of seconds after the App Instance has started before probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
* @property periodSeconds How often (in seconds) to perform the probe. Minimum value is 1.
* @property probeAction The action of the probe.
* @property successThreshold Minimum consecutive successes for the probe to be considered successful after having failed. Must be 1 for liveness and startup. Minimum value is 1.
* @property timeoutSeconds Number of seconds after which the probe times out. Minimum value is 1.
*/
public data class ProbeArgs(
public val disableProbe: Output,
public val failureThreshold: Output? = null,
public val initialDelaySeconds: Output? = null,
public val periodSeconds: Output? = null,
public val probeAction: Output? = null,
public val successThreshold: Output? = null,
public val timeoutSeconds: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.appplatform.inputs.ProbeArgs =
com.pulumi.azurenative.appplatform.inputs.ProbeArgs.builder()
.disableProbe(disableProbe.applyValue({ args0 -> args0 }))
.failureThreshold(failureThreshold?.applyValue({ args0 -> args0 }))
.initialDelaySeconds(initialDelaySeconds?.applyValue({ args0 -> args0 }))
.periodSeconds(periodSeconds?.applyValue({ args0 -> args0 }))
.probeAction(probeAction?.applyValue({ args0 -> args0 }))
.successThreshold(successThreshold?.applyValue({ args0 -> args0 }))
.timeoutSeconds(timeoutSeconds?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ProbeArgs].
*/
@PulumiTagMarker
public class ProbeArgsBuilder internal constructor() {
private var disableProbe: Output? = null
private var failureThreshold: Output? = null
private var initialDelaySeconds: Output? = null
private var periodSeconds: Output? = null
private var probeAction: Output? = null
private var successThreshold: Output? = null
private var timeoutSeconds: Output? = null
/**
* @param value Indicate whether the probe is disabled.
*/
@JvmName("twdrjficktjhgyhm")
public suspend fun disableProbe(`value`: Output) {
this.disableProbe = value
}
/**
* @param value Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1.
*/
@JvmName("udkgcfsgdepusphk")
public suspend fun failureThreshold(`value`: Output) {
this.failureThreshold = value
}
/**
* @param value Number of seconds after the App Instance has started before probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
*/
@JvmName("wfiplwqyxnapjrnf")
public suspend fun initialDelaySeconds(`value`: Output) {
this.initialDelaySeconds = value
}
/**
* @param value How often (in seconds) to perform the probe. Minimum value is 1.
*/
@JvmName("bhoqmlopndrkaynt")
public suspend fun periodSeconds(`value`: Output) {
this.periodSeconds = value
}
/**
* @param value The action of the probe.
*/
@JvmName("vhstpjeojjymvimi")
public suspend fun probeAction(`value`: Output) {
this.probeAction = value
}
/**
* @param value Minimum consecutive successes for the probe to be considered successful after having failed. Must be 1 for liveness and startup. Minimum value is 1.
*/
@JvmName("elmnuealxxcbdeck")
public suspend fun successThreshold(`value`: Output) {
this.successThreshold = value
}
/**
* @param value Number of seconds after which the probe times out. Minimum value is 1.
*/
@JvmName("fxeedyxoxayuikdf")
public suspend fun timeoutSeconds(`value`: Output) {
this.timeoutSeconds = value
}
/**
* @param value Indicate whether the probe is disabled.
*/
@JvmName("elolyxijyamywnkf")
public suspend fun disableProbe(`value`: Boolean) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.disableProbe = mapped
}
/**
* @param value Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1.
*/
@JvmName("dueyxublevufqrks")
public suspend fun failureThreshold(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.failureThreshold = mapped
}
/**
* @param value Number of seconds after the App Instance has started before probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
*/
@JvmName("unmnhpdqatvclqel")
public suspend fun initialDelaySeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.initialDelaySeconds = mapped
}
/**
* @param value How often (in seconds) to perform the probe. Minimum value is 1.
*/
@JvmName("ukopomxtamrargot")
public suspend fun periodSeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.periodSeconds = mapped
}
/**
* @param value The action of the probe.
*/
@JvmName("nnfthowfphhhvsuh")
public suspend fun probeAction(`value`: Any?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.probeAction = mapped
}
/**
* @param value Minimum consecutive successes for the probe to be considered successful after having failed. Must be 1 for liveness and startup. Minimum value is 1.
*/
@JvmName("gmyorqwmkqxnpyey")
public suspend fun successThreshold(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.successThreshold = mapped
}
/**
* @param value Number of seconds after which the probe times out. Minimum value is 1.
*/
@JvmName("hdpqxwaruuwphudc")
public suspend fun timeoutSeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.timeoutSeconds = mapped
}
internal fun build(): ProbeArgs = ProbeArgs(
disableProbe = disableProbe ?: throw PulumiNullFieldException("disableProbe"),
failureThreshold = failureThreshold,
initialDelaySeconds = initialDelaySeconds,
periodSeconds = periodSeconds,
probeAction = probeAction,
successThreshold = successThreshold,
timeoutSeconds = timeoutSeconds,
)
}