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

com.pulumi.azure.servicefabric.kotlin.inputs.ClusterUpgradePolicyArgs.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: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.servicefabric.kotlin.inputs

import com.pulumi.azure.servicefabric.inputs.ClusterUpgradePolicyArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 *
 * @property deltaHealthPolicy A `delta_health_policy` block as defined below
 * @property forceRestartEnabled Indicates whether to restart the Service Fabric node even if only dynamic configurations have changed.
 * @property healthCheckRetryTimeout Specifies the duration, in "hh:mm:ss" string format, after which Service Fabric retries the health check if the previous health check fails. Defaults to `00:45:00`.
 * @property healthCheckStableDuration Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits in order to verify that the cluster is stable before it continues to the next upgrade domain or completes the upgrade. This wait duration prevents undetected changes of health right after the health check is performed. Defaults to `00:01:00`.
 * @property healthCheckWaitDuration Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits before it performs the initial health check after it finishes the upgrade on the upgrade domain. Defaults to `00:00:30`.
 * @property healthPolicy A `health_policy` block as defined below
 * @property upgradeDomainTimeout Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes to upgrade a single upgrade domain. After this period, the upgrade fails. Defaults to `02:00:00`.
 * @property upgradeReplicaSetCheckTimeout Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits for a replica set to reconfigure into a safe state, if it is not already in a safe state, before Service Fabric proceeds with the upgrade. Defaults to `10675199.02:48:05.4775807`.
 * @property upgradeTimeout Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes for the entire upgrade. After this period, the upgrade fails. Defaults to `12:00:00`.
 */
public data class ClusterUpgradePolicyArgs(
    public val deltaHealthPolicy: Output? = null,
    public val forceRestartEnabled: Output? = null,
    public val healthCheckRetryTimeout: Output? = null,
    public val healthCheckStableDuration: Output? = null,
    public val healthCheckWaitDuration: Output? = null,
    public val healthPolicy: Output? = null,
    public val upgradeDomainTimeout: Output? = null,
    public val upgradeReplicaSetCheckTimeout: Output? = null,
    public val upgradeTimeout: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.servicefabric.inputs.ClusterUpgradePolicyArgs =
        com.pulumi.azure.servicefabric.inputs.ClusterUpgradePolicyArgs.builder()
            .deltaHealthPolicy(deltaHealthPolicy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .forceRestartEnabled(forceRestartEnabled?.applyValue({ args0 -> args0 }))
            .healthCheckRetryTimeout(healthCheckRetryTimeout?.applyValue({ args0 -> args0 }))
            .healthCheckStableDuration(healthCheckStableDuration?.applyValue({ args0 -> args0 }))
            .healthCheckWaitDuration(healthCheckWaitDuration?.applyValue({ args0 -> args0 }))
            .healthPolicy(healthPolicy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .upgradeDomainTimeout(upgradeDomainTimeout?.applyValue({ args0 -> args0 }))
            .upgradeReplicaSetCheckTimeout(upgradeReplicaSetCheckTimeout?.applyValue({ args0 -> args0 }))
            .upgradeTimeout(upgradeTimeout?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ClusterUpgradePolicyArgs].
 */
@PulumiTagMarker
public class ClusterUpgradePolicyArgsBuilder internal constructor() {
    private var deltaHealthPolicy: Output? = null

    private var forceRestartEnabled: Output? = null

    private var healthCheckRetryTimeout: Output? = null

    private var healthCheckStableDuration: Output? = null

    private var healthCheckWaitDuration: Output? = null

    private var healthPolicy: Output? = null

    private var upgradeDomainTimeout: Output? = null

    private var upgradeReplicaSetCheckTimeout: Output? = null

    private var upgradeTimeout: Output? = null

    /**
     * @param value A `delta_health_policy` block as defined below
     */
    @JvmName("dpnwwdqhkghnddci")
    public suspend fun deltaHealthPolicy(`value`: Output) {
        this.deltaHealthPolicy = value
    }

    /**
     * @param value Indicates whether to restart the Service Fabric node even if only dynamic configurations have changed.
     */
    @JvmName("onbkglolrrjtpobi")
    public suspend fun forceRestartEnabled(`value`: Output) {
        this.forceRestartEnabled = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, after which Service Fabric retries the health check if the previous health check fails. Defaults to `00:45:00`.
     */
    @JvmName("ifhyxwluxdfabxvd")
    public suspend fun healthCheckRetryTimeout(`value`: Output) {
        this.healthCheckRetryTimeout = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits in order to verify that the cluster is stable before it continues to the next upgrade domain or completes the upgrade. This wait duration prevents undetected changes of health right after the health check is performed. Defaults to `00:01:00`.
     */
    @JvmName("ajaqnoggrjbfofxl")
    public suspend fun healthCheckStableDuration(`value`: Output) {
        this.healthCheckStableDuration = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits before it performs the initial health check after it finishes the upgrade on the upgrade domain. Defaults to `00:00:30`.
     */
    @JvmName("ukacgcbuljkmxpxy")
    public suspend fun healthCheckWaitDuration(`value`: Output) {
        this.healthCheckWaitDuration = value
    }

    /**
     * @param value A `health_policy` block as defined below
     */
    @JvmName("wswtgjhiihqqbruo")
    public suspend fun healthPolicy(`value`: Output) {
        this.healthPolicy = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes to upgrade a single upgrade domain. After this period, the upgrade fails. Defaults to `02:00:00`.
     */
    @JvmName("wgoukamlsoeactyh")
    public suspend fun upgradeDomainTimeout(`value`: Output) {
        this.upgradeDomainTimeout = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits for a replica set to reconfigure into a safe state, if it is not already in a safe state, before Service Fabric proceeds with the upgrade. Defaults to `10675199.02:48:05.4775807`.
     */
    @JvmName("ngpxdowndhhlwabq")
    public suspend fun upgradeReplicaSetCheckTimeout(`value`: Output) {
        this.upgradeReplicaSetCheckTimeout = value
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes for the entire upgrade. After this period, the upgrade fails. Defaults to `12:00:00`.
     */
    @JvmName("mtwujmsolunvdlty")
    public suspend fun upgradeTimeout(`value`: Output) {
        this.upgradeTimeout = value
    }

    /**
     * @param value A `delta_health_policy` block as defined below
     */
    @JvmName("qfqfjjhtaaynivjf")
    public suspend fun deltaHealthPolicy(`value`: ClusterUpgradePolicyDeltaHealthPolicyArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.deltaHealthPolicy = mapped
    }

    /**
     * @param argument A `delta_health_policy` block as defined below
     */
    @JvmName("qgynycpweyejvljy")
    public suspend fun deltaHealthPolicy(argument: suspend ClusterUpgradePolicyDeltaHealthPolicyArgsBuilder.() -> Unit) {
        val toBeMapped = ClusterUpgradePolicyDeltaHealthPolicyArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.deltaHealthPolicy = mapped
    }

    /**
     * @param value Indicates whether to restart the Service Fabric node even if only dynamic configurations have changed.
     */
    @JvmName("obpgqkmcxemgngoy")
    public suspend fun forceRestartEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.forceRestartEnabled = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, after which Service Fabric retries the health check if the previous health check fails. Defaults to `00:45:00`.
     */
    @JvmName("humyvvdhgsagvlql")
    public suspend fun healthCheckRetryTimeout(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthCheckRetryTimeout = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits in order to verify that the cluster is stable before it continues to the next upgrade domain or completes the upgrade. This wait duration prevents undetected changes of health right after the health check is performed. Defaults to `00:01:00`.
     */
    @JvmName("torniyhkqqdjnwtp")
    public suspend fun healthCheckStableDuration(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthCheckStableDuration = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits before it performs the initial health check after it finishes the upgrade on the upgrade domain. Defaults to `00:00:30`.
     */
    @JvmName("iypagrcjipvmkpbi")
    public suspend fun healthCheckWaitDuration(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthCheckWaitDuration = mapped
    }

    /**
     * @param value A `health_policy` block as defined below
     */
    @JvmName("bkaedtipfhoabdce")
    public suspend fun healthPolicy(`value`: ClusterUpgradePolicyHealthPolicyArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthPolicy = mapped
    }

    /**
     * @param argument A `health_policy` block as defined below
     */
    @JvmName("rwfapnfyhqjokxgc")
    public suspend fun healthPolicy(argument: suspend ClusterUpgradePolicyHealthPolicyArgsBuilder.() -> Unit) {
        val toBeMapped = ClusterUpgradePolicyHealthPolicyArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.healthPolicy = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes to upgrade a single upgrade domain. After this period, the upgrade fails. Defaults to `02:00:00`.
     */
    @JvmName("vvtlnxawuyivsxrg")
    public suspend fun upgradeDomainTimeout(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.upgradeDomainTimeout = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits for a replica set to reconfigure into a safe state, if it is not already in a safe state, before Service Fabric proceeds with the upgrade. Defaults to `10675199.02:48:05.4775807`.
     */
    @JvmName("yamrbhfvardiwoin")
    public suspend fun upgradeReplicaSetCheckTimeout(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.upgradeReplicaSetCheckTimeout = mapped
    }

    /**
     * @param value Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes for the entire upgrade. After this period, the upgrade fails. Defaults to `12:00:00`.
     */
    @JvmName("rsdvmsljshlrnixr")
    public suspend fun upgradeTimeout(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.upgradeTimeout = mapped
    }

    internal fun build(): ClusterUpgradePolicyArgs = ClusterUpgradePolicyArgs(
        deltaHealthPolicy = deltaHealthPolicy,
        forceRestartEnabled = forceRestartEnabled,
        healthCheckRetryTimeout = healthCheckRetryTimeout,
        healthCheckStableDuration = healthCheckStableDuration,
        healthCheckWaitDuration = healthCheckWaitDuration,
        healthPolicy = healthPolicy,
        upgradeDomainTimeout = upgradeDomainTimeout,
        upgradeReplicaSetCheckTimeout = upgradeReplicaSetCheckTimeout,
        upgradeTimeout = upgradeTimeout,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy