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

com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterMaintenanceWindowAutoUpgrade.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.containerservice.kotlin.outputs

import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property dayOfMonth The day of the month for the maintenance run. Required in combination with AbsoluteMonthly frequency. Value between 0 and 31 (inclusive).
 * @property dayOfWeek The day of the week for the maintenance run. Required in combination with weekly frequency. Possible values are `Friday`, `Monday`, `Saturday`, `Sunday`, `Thursday`, `Tuesday` and `Wednesday`.
 * @property duration The duration of the window for maintenance to run in hours. Possible options are between `4` to `24`.
 * @property frequency Frequency of maintenance. Possible options are `Weekly`, `AbsoluteMonthly` and `RelativeMonthly`.
 * @property interval The interval for maintenance runs. Depending on the frequency this interval is week or month based.
 * @property notAlloweds One or more `not_allowed` block as defined below.
 * @property startDate The date on which the maintenance window begins to take effect.
 * @property startTime The time for maintenance to begin, based on the timezone determined by `utc_offset`. Format is `HH:mm`.
 * @property utcOffset Used to determine the timezone for cluster maintenance.
 * @property weekIndex Specifies on which instance of the allowed days specified in `day_of_week` the maintenance occurs. Options are `First`, `Second`, `Third`, `Fourth`, and `Last`.
 * Required in combination with relative monthly frequency.
 */
public data class KubernetesClusterMaintenanceWindowAutoUpgrade(
    public val dayOfMonth: Int? = null,
    public val dayOfWeek: String? = null,
    public val duration: Int,
    public val frequency: String,
    public val interval: Int,
    public val notAlloweds: List? = null,
    public val startDate: String? = null,
    public val startTime: String? = null,
    public val utcOffset: String? = null,
    public val weekIndex: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.containerservice.outputs.KubernetesClusterMaintenanceWindowAutoUpgrade): KubernetesClusterMaintenanceWindowAutoUpgrade =
            KubernetesClusterMaintenanceWindowAutoUpgrade(
                dayOfMonth = javaType.dayOfMonth().map({ args0 -> args0 }).orElse(null),
                dayOfWeek = javaType.dayOfWeek().map({ args0 -> args0 }).orElse(null),
                duration = javaType.duration(),
                frequency = javaType.frequency(),
                interval = javaType.interval(),
                notAlloweds = javaType.notAlloweds().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterMaintenanceWindowAutoUpgradeNotAllowed.Companion.toKotlin(args0)
                    })
                }),
                startDate = javaType.startDate().map({ args0 -> args0 }).orElse(null),
                startTime = javaType.startTime().map({ args0 -> args0 }).orElse(null),
                utcOffset = javaType.utcOffset().map({ args0 -> args0 }).orElse(null),
                weekIndex = javaType.weekIndex().map({ args0 -> args0 }).orElse(null),
            )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy