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

com.pulumi.kubernetes.extensions.v1beta1.kotlin.outputs.ReplicaSetSpec.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: 4.18.2.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

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

import com.pulumi.kubernetes.core.v1.kotlin.outputs.PodTemplateSpec
import com.pulumi.kubernetes.meta.v1.kotlin.outputs.LabelSelector
import kotlin.Int
import kotlin.Suppress

/**
 * ReplicaSetSpec is the specification of a ReplicaSet.
 * @property minReadySeconds Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)
 * @property replicas Replicas is the number of desired replicas. This is a pointer to distinguish between explicit zero and unspecified. Defaults to 1. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/#what-is-a-replicationcontroller
 * @property selector Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
 * @property template Template is the object that describes the pod that will be created if insufficient replicas are detected. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template
 */
public data class ReplicaSetSpec(
    public val minReadySeconds: Int? = null,
    public val replicas: Int? = null,
    public val selector: LabelSelector? = null,
    public val template: PodTemplateSpec? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.kubernetes.extensions.v1beta1.outputs.ReplicaSetSpec): ReplicaSetSpec = ReplicaSetSpec(
            minReadySeconds = javaType.minReadySeconds().map({ args0 -> args0 }).orElse(null),
            replicas = javaType.replicas().map({ args0 -> args0 }).orElse(null),
            selector = javaType.selector().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.kubernetes.meta.v1.kotlin.outputs.LabelSelector.Companion.toKotlin(args0)
                })
            }).orElse(null),
            template = javaType.template().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.kubernetes.core.v1.kotlin.outputs.PodTemplateSpec.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy