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

com.pulumi.kubernetes.extensions.v1beta1.kotlin.outputs.RollingUpdateDaemonSetPatch.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.

The newest version!
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.kubernetes.extensions.v1beta1.kotlin.outputs

import com.pulumi.core.Either
import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 * Spec to control the desired behavior of daemon set rolling update.
 * @property maxUnavailable The maximum number of DaemonSet pods that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of total number of DaemonSet pods at the start of the update (ex: 10%). Absolute number is calculated from percentage by rounding up. This cannot be 0. Default value is 1. Example: when this is set to 30%, at most 30% of the total number of nodes that should be running the daemon pod (i.e. status.desiredNumberScheduled) can have their pods stopped for an update at any given time. The update starts by stopping at most 30% of those DaemonSet pods and then brings up new DaemonSet pods in their place. Once the new pods are available, it then proceeds onto other DaemonSet pods, thus ensuring that at least 70% of original number of DaemonSet pods are available at all times during the update.
 */
public data class RollingUpdateDaemonSetPatch(
    public val maxUnavailable: Either? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.kubernetes.extensions.v1beta1.outputs.RollingUpdateDaemonSetPatch): RollingUpdateDaemonSetPatch = RollingUpdateDaemonSetPatch(
            maxUnavailable = javaType.maxUnavailable().map({ args0 ->
                args0.transform(
                    { args0 -> args0 },
                    { args0 -> args0 },
                )
            }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy