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

com.pulumi.awsnative.ssm.kotlin.outputs.PatchBaselineRule.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: 1.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.ssm.kotlin.outputs

import com.pulumi.awsnative.ssm.kotlin.enums.PatchBaselineRuleComplianceLevel
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 * Defines an approval rule for a patch baseline.
 * @property approveAfterDays The number of days after the release date of each patch matched by the rule that the patch is marked as approved in the patch baseline. For example, a value of `7` means that patches are approved seven days after they are released.
 * You must specify a value for `ApproveAfterDays` .
 * Exception: Not supported on Debian Server or Ubuntu Server.
 * @property approveUntilDate The cutoff date for auto approval of released patches. Any patches released on or before this date are installed automatically. Not supported on Debian Server or Ubuntu Server.
 * Enter dates in the format `YYYY-MM-DD` . For example, `2021-12-31` .
 * @property complianceLevel A compliance severity level for all approved patches in a patch baseline. Valid compliance severity levels include the following: `UNSPECIFIED` , `CRITICAL` , `HIGH` , `MEDIUM` , `LOW` , and `INFORMATIONAL` .
 * @property enableNonSecurity For managed nodes identified by the approval rule filters, enables a patch baseline to apply non-security updates available in the specified repository. The default value is `false` . Applies to Linux managed nodes only.
 * @property patchFilterGroup The patch filter group that defines the criteria for the rule.
 */
public data class PatchBaselineRule(
    public val approveAfterDays: Int? = null,
    public val approveUntilDate: String? = null,
    public val complianceLevel: PatchBaselineRuleComplianceLevel? = null,
    public val enableNonSecurity: Boolean? = null,
    public val patchFilterGroup: PatchBaselinePatchFilterGroup? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.ssm.outputs.PatchBaselineRule): PatchBaselineRule = PatchBaselineRule(
            approveAfterDays = javaType.approveAfterDays().map({ args0 -> args0 }).orElse(null),
            approveUntilDate = javaType.approveUntilDate().map({ args0 -> args0 }).orElse(null),
            complianceLevel = javaType.complianceLevel().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.ssm.kotlin.enums.PatchBaselineRuleComplianceLevel.Companion.toKotlin(args0)
                })
            }).orElse(null),
            enableNonSecurity = javaType.enableNonSecurity().map({ args0 -> args0 }).orElse(null),
            patchFilterGroup = javaType.patchFilterGroup().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.ssm.kotlin.outputs.PatchBaselinePatchFilterGroup.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy