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

com.pulumi.azurenative.compute.kotlin.inputs.PatchSettingsArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.compute.kotlin.inputs

import com.pulumi.azurenative.compute.inputs.PatchSettingsArgs.builder
import com.pulumi.azurenative.compute.kotlin.enums.WindowsPatchAssessmentMode
import com.pulumi.azurenative.compute.kotlin.enums.WindowsVMGuestPatchMode
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Specifies settings related to VM Guest Patching on Windows.
 * @property assessmentMode Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

Possible values are:

**ImageDefault** - You control the timing of patch assessments on a virtual machine.

**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. * @property automaticByPlatformSettings Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows. * @property enableHotpatching Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'. * @property patchMode Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

Possible values are:

**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */ public data class PatchSettingsArgs( public val assessmentMode: Output>? = null, public val automaticByPlatformSettings: Output? = null, public val enableHotpatching: Output? = null, public val patchMode: Output>? = null, ) : ConvertibleToJava { override fun toJava(): com.pulumi.azurenative.compute.inputs.PatchSettingsArgs = com.pulumi.azurenative.compute.inputs.PatchSettingsArgs.builder() .assessmentMode( assessmentMode?.applyValue({ args0 -> args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) }) }), ) .automaticByPlatformSettings( automaticByPlatformSettings?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }), ) .enableHotpatching(enableHotpatching?.applyValue({ args0 -> args0 })) .patchMode( patchMode?.applyValue({ args0 -> args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) }) }), ).build() } /** * Builder for [PatchSettingsArgs]. */ @PulumiTagMarker public class PatchSettingsArgsBuilder internal constructor() { private var assessmentMode: Output>? = null private var automaticByPlatformSettings: Output? = null private var enableHotpatching: Output? = null private var patchMode: Output>? = null /** * @param value Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

Possible values are:

**ImageDefault** - You control the timing of patch assessments on a virtual machine.

**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */ @JvmName("ylqrojxxmaxngfnt") public suspend fun assessmentMode(`value`: Output>) { this.assessmentMode = value } /** * @param value Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows. */ @JvmName("nabnavpanskjjpyp") public suspend fun automaticByPlatformSettings(`value`: Output) { this.automaticByPlatformSettings = value } /** * @param value Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'. */ @JvmName("wkjiofjyqahxmmsa") public suspend fun enableHotpatching(`value`: Output) { this.enableHotpatching = value } /** * @param value Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

Possible values are:

**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */ @JvmName("ufhyxbqshfodslsy") public suspend fun patchMode(`value`: Output>) { this.patchMode = value } /** * @param value Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

Possible values are:

**ImageDefault** - You control the timing of patch assessments on a virtual machine.

**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */ @JvmName("vktlugmrhqbiyvho") public suspend fun assessmentMode(`value`: Either?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.assessmentMode = mapped } /** * @param value Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

Possible values are:

**ImageDefault** - You control the timing of patch assessments on a virtual machine.

**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */ @JvmName("ufywbpuqpscpeieb") public fun assessmentMode(`value`: String) { val toBeMapped = Either.ofLeft(value) val mapped = toBeMapped.let({ args0 -> of(args0) }) this.assessmentMode = mapped } /** * @param value Specifies the mode of VM Guest patch assessment for the IaaS virtual machine.

Possible values are:

**ImageDefault** - You control the timing of patch assessments on a virtual machine.

**AutomaticByPlatform** - The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */ @JvmName("rqwlyinefdqqlstt") public fun assessmentMode(`value`: WindowsPatchAssessmentMode) { val toBeMapped = Either.ofRight(value) val mapped = toBeMapped.let({ args0 -> of(args0) }) this.assessmentMode = mapped } /** * @param value Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows. */ @JvmName("ybdqrkncyiemkqhh") public suspend fun automaticByPlatformSettings(`value`: WindowsVMGuestPatchAutomaticByPlatformSettingsArgs?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.automaticByPlatformSettings = mapped } /** * @param argument Specifies additional settings for patch mode AutomaticByPlatform in VM Guest Patching on Windows. */ @JvmName("eqjccthyxwtbaiek") public suspend fun automaticByPlatformSettings(argument: suspend WindowsVMGuestPatchAutomaticByPlatformSettingsArgsBuilder.() -> Unit) { val toBeMapped = WindowsVMGuestPatchAutomaticByPlatformSettingsArgsBuilder().applySuspend { argument() }.build() val mapped = of(toBeMapped) this.automaticByPlatformSettings = mapped } /** * @param value Enables customers to patch their Azure VMs without requiring a reboot. For enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' must be set to 'AutomaticByPlatform'. */ @JvmName("crjwpiuhfiywbrvx") public suspend fun enableHotpatching(`value`: Boolean?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.enableHotpatching = mapped } /** * @param value Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

Possible values are:

**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */ @JvmName("fhrdipvaljqpmjip") public suspend fun patchMode(`value`: Either?) { val toBeMapped = value val mapped = toBeMapped?.let({ args0 -> of(args0) }) this.patchMode = mapped } /** * @param value Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

Possible values are:

**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */ @JvmName("jgndgykjtrbmjjda") public fun patchMode(`value`: String) { val toBeMapped = Either.ofLeft(value) val mapped = toBeMapped.let({ args0 -> of(args0) }) this.patchMode = mapped } /** * @param value Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual machines associated to virtual machine scale set with OrchestrationMode as Flexible.

Possible values are:

**Manual** - You control the application of patches to a virtual machine. You do this by applying patches manually inside the VM. In this mode, automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates must be false

**AutomaticByOS** - The virtual machine will automatically be updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates must be true.

**AutomaticByPlatform** - the virtual machine will automatically updated by the platform. The properties provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true */ @JvmName("boxefgtveyqynihb") public fun patchMode(`value`: WindowsVMGuestPatchMode) { val toBeMapped = Either.ofRight(value) val mapped = toBeMapped.let({ args0 -> of(args0) }) this.patchMode = mapped } internal fun build(): PatchSettingsArgs = PatchSettingsArgs( assessmentMode = assessmentMode, automaticByPlatformSettings = automaticByPlatformSettings, enableHotpatching = enableHotpatching, patchMode = patchMode, ) }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy