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

com.pulumi.azure.dataprotection.kotlin.inputs.BackupInstanceKubernetesClusterBackupDatasourceParametersArgs.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.dataprotection.kotlin.inputs

import com.pulumi.azure.dataprotection.inputs.BackupInstanceKubernetesClusterBackupDatasourceParametersArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property clusterScopedResourcesEnabled Whether to include cluster scope resources during backup. Default to `false`. Changing this forces a new resource to be created.
 * @property excludedNamespaces Specifies the namespaces to be excluded during backup. Changing this forces a new resource to be created.
 * @property excludedResourceTypes Specifies the resource types to be excluded during backup. Changing this forces a new resource to be created.
 * @property includedNamespaces Specifies the namespaces to be included during backup. Changing this forces a new resource to be created.
 * @property includedResourceTypes Specifies the resource types to be included during backup. Changing this forces a new resource to be created.
 * @property labelSelectors Specifies the resources with such label selectors to be included during backup. Changing this forces a new resource to be created.
 * @property volumeSnapshotEnabled Whether to take volume snapshots during backup. Default to `false`. Changing this forces a new resource to be created.
 */
public data class BackupInstanceKubernetesClusterBackupDatasourceParametersArgs(
    public val clusterScopedResourcesEnabled: Output? = null,
    public val excludedNamespaces: Output>? = null,
    public val excludedResourceTypes: Output>? = null,
    public val includedNamespaces: Output>? = null,
    public val includedResourceTypes: Output>? = null,
    public val labelSelectors: Output>? = null,
    public val volumeSnapshotEnabled: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.dataprotection.inputs.BackupInstanceKubernetesClusterBackupDatasourceParametersArgs =
        com.pulumi.azure.dataprotection.inputs.BackupInstanceKubernetesClusterBackupDatasourceParametersArgs.builder()
            .clusterScopedResourcesEnabled(clusterScopedResourcesEnabled?.applyValue({ args0 -> args0 }))
            .excludedNamespaces(excludedNamespaces?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .excludedResourceTypes(excludedResourceTypes?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .includedNamespaces(includedNamespaces?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .includedResourceTypes(includedResourceTypes?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .labelSelectors(labelSelectors?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .volumeSnapshotEnabled(volumeSnapshotEnabled?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [BackupInstanceKubernetesClusterBackupDatasourceParametersArgs].
 */
@PulumiTagMarker
public class BackupInstanceKubernetesClusterBackupDatasourceParametersArgsBuilder internal constructor() {
    private var clusterScopedResourcesEnabled: Output? = null

    private var excludedNamespaces: Output>? = null

    private var excludedResourceTypes: Output>? = null

    private var includedNamespaces: Output>? = null

    private var includedResourceTypes: Output>? = null

    private var labelSelectors: Output>? = null

    private var volumeSnapshotEnabled: Output? = null

    /**
     * @param value Whether to include cluster scope resources during backup. Default to `false`. Changing this forces a new resource to be created.
     */
    @JvmName("euxtlvyhpgclwger")
    public suspend fun clusterScopedResourcesEnabled(`value`: Output) {
        this.clusterScopedResourcesEnabled = value
    }

    /**
     * @param value Specifies the namespaces to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("rlglatvqlpbjjrsw")
    public suspend fun excludedNamespaces(`value`: Output>) {
        this.excludedNamespaces = value
    }

    @JvmName("ecnpseglrihsorqx")
    public suspend fun excludedNamespaces(vararg values: Output) {
        this.excludedNamespaces = Output.all(values.asList())
    }

    /**
     * @param values Specifies the namespaces to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("gntkepgmboswnrhg")
    public suspend fun excludedNamespaces(values: List>) {
        this.excludedNamespaces = Output.all(values)
    }

    /**
     * @param value Specifies the resource types to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("hchfkwwpqkbjoohe")
    public suspend fun excludedResourceTypes(`value`: Output>) {
        this.excludedResourceTypes = value
    }

    @JvmName("hkctbwwnwqnynmtp")
    public suspend fun excludedResourceTypes(vararg values: Output) {
        this.excludedResourceTypes = Output.all(values.asList())
    }

    /**
     * @param values Specifies the resource types to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("iqfhvsnscjdkbpih")
    public suspend fun excludedResourceTypes(values: List>) {
        this.excludedResourceTypes = Output.all(values)
    }

    /**
     * @param value Specifies the namespaces to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("igchgudbailjfqka")
    public suspend fun includedNamespaces(`value`: Output>) {
        this.includedNamespaces = value
    }

    @JvmName("gniknbrirrhkqajb")
    public suspend fun includedNamespaces(vararg values: Output) {
        this.includedNamespaces = Output.all(values.asList())
    }

    /**
     * @param values Specifies the namespaces to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("tnnoswxjtvoovbol")
    public suspend fun includedNamespaces(values: List>) {
        this.includedNamespaces = Output.all(values)
    }

    /**
     * @param value Specifies the resource types to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("wiplmhexijlyqwvs")
    public suspend fun includedResourceTypes(`value`: Output>) {
        this.includedResourceTypes = value
    }

    @JvmName("ejncikahiiaoxlrt")
    public suspend fun includedResourceTypes(vararg values: Output) {
        this.includedResourceTypes = Output.all(values.asList())
    }

    /**
     * @param values Specifies the resource types to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("kmgytoecutrpoaan")
    public suspend fun includedResourceTypes(values: List>) {
        this.includedResourceTypes = Output.all(values)
    }

    /**
     * @param value Specifies the resources with such label selectors to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("dohcrpnfcphasoxe")
    public suspend fun labelSelectors(`value`: Output>) {
        this.labelSelectors = value
    }

    @JvmName("uohxtvdriokonjqp")
    public suspend fun labelSelectors(vararg values: Output) {
        this.labelSelectors = Output.all(values.asList())
    }

    /**
     * @param values Specifies the resources with such label selectors to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("cfcdbmnmryywnpuk")
    public suspend fun labelSelectors(values: List>) {
        this.labelSelectors = Output.all(values)
    }

    /**
     * @param value Whether to take volume snapshots during backup. Default to `false`. Changing this forces a new resource to be created.
     */
    @JvmName("dwferptkdchfgtwd")
    public suspend fun volumeSnapshotEnabled(`value`: Output) {
        this.volumeSnapshotEnabled = value
    }

    /**
     * @param value Whether to include cluster scope resources during backup. Default to `false`. Changing this forces a new resource to be created.
     */
    @JvmName("vvebcglmttiiacnj")
    public suspend fun clusterScopedResourcesEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clusterScopedResourcesEnabled = mapped
    }

    /**
     * @param value Specifies the namespaces to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("xrovydlshvqsmfdp")
    public suspend fun excludedNamespaces(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.excludedNamespaces = mapped
    }

    /**
     * @param values Specifies the namespaces to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("hqahkxccfsxnpxpl")
    public suspend fun excludedNamespaces(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.excludedNamespaces = mapped
    }

    /**
     * @param value Specifies the resource types to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("wrspkkfdygsvhpji")
    public suspend fun excludedResourceTypes(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.excludedResourceTypes = mapped
    }

    /**
     * @param values Specifies the resource types to be excluded during backup. Changing this forces a new resource to be created.
     */
    @JvmName("dgtkprwxjucnslqv")
    public suspend fun excludedResourceTypes(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.excludedResourceTypes = mapped
    }

    /**
     * @param value Specifies the namespaces to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("vycnpgqnqqbiydns")
    public suspend fun includedNamespaces(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.includedNamespaces = mapped
    }

    /**
     * @param values Specifies the namespaces to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("olhiundoilraqvyj")
    public suspend fun includedNamespaces(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.includedNamespaces = mapped
    }

    /**
     * @param value Specifies the resource types to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("lqbncyquvfmajubo")
    public suspend fun includedResourceTypes(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.includedResourceTypes = mapped
    }

    /**
     * @param values Specifies the resource types to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("rxvkbnjxpmwrobbt")
    public suspend fun includedResourceTypes(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.includedResourceTypes = mapped
    }

    /**
     * @param value Specifies the resources with such label selectors to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("banugadrcpwxphdy")
    public suspend fun labelSelectors(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.labelSelectors = mapped
    }

    /**
     * @param values Specifies the resources with such label selectors to be included during backup. Changing this forces a new resource to be created.
     */
    @JvmName("qrxmcijbauonnaqp")
    public suspend fun labelSelectors(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.labelSelectors = mapped
    }

    /**
     * @param value Whether to take volume snapshots during backup. Default to `false`. Changing this forces a new resource to be created.
     */
    @JvmName("aejhafsredadjtpm")
    public suspend fun volumeSnapshotEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.volumeSnapshotEnabled = mapped
    }

    internal fun build(): BackupInstanceKubernetesClusterBackupDatasourceParametersArgs =
        BackupInstanceKubernetesClusterBackupDatasourceParametersArgs(
            clusterScopedResourcesEnabled = clusterScopedResourcesEnabled,
            excludedNamespaces = excludedNamespaces,
            excludedResourceTypes = excludedResourceTypes,
            includedNamespaces = includedNamespaces,
            includedResourceTypes = includedResourceTypes,
            labelSelectors = labelSelectors,
            volumeSnapshotEnabled = volumeSnapshotEnabled,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy