Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.compute.kotlin.inputs
import com.pulumi.azure.compute.inputs.OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
*
* @property additionalUnattendContents One or more `additional_unattend_content` blocks as defined below. Changing this forces a new resource to be created.
* @property adminPassword The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
* @property adminUsername The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
* @property computerNamePrefix The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the `name` field. If the value of the `name` field is not a valid `computer_name_prefix`, then you must specify `computer_name_prefix`. Changing this forces a new resource to be created.
* @property enableAutomaticUpdates Are automatic updates enabled for this Virtual Machine? Defaults to `true`.
* @property hotpatchingEnabled Should the VM be patched without requiring a reboot? Possible values are `true` or `false`. Defaults to `false`. For more information about hot patching please see the [product documentation](https://docs.microsoft.com/azure/automanage/automanage-hotpatch).
* > **NOTE:** Hotpatching can only be enabled if the `patch_mode` is set to `AutomaticByPlatform`, the `provision_vm_agent` is set to `true`, your `source_image_reference` references a hotpatching enabled image, the VM's `sku_name` is set to a Azure generation 2 directory within the GitHub Repository.
* @property patchAssessmentMode Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are `AutomaticByPlatform` or `ImageDefault`. Defaults to `ImageDefault`.
* > **NOTE:** If the `patch_assessment_mode` is set to `AutomaticByPlatform` then the `provision_vm_agent` field must be set to `true`.
* @property patchMode Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are `Manual`, `AutomaticByOS` and `AutomaticByPlatform`. Defaults to `AutomaticByOS`. For more information on patch modes please see the [product documentation](https://docs.microsoft.com/azure/virtual-machines/automatic-vm-guest-patching#patch-orchestration-modes).
* > **NOTE:** If `patch_mode` is set to `AutomaticByPlatform` the `provision_vm_agent` must be set to `true` and the `extension` must contain at least one application health extension.
* @property provisionVmAgent Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to `true`. Changing this value forces a new resource to be created.
* @property secrets One or more `secret` blocks as defined below.
* @property timezone Specifies the time zone of the virtual machine, the possible values are defined [here](https://jackstromberg.com/2017/01/list-of-time-zones-consumed-by-azure/).
* @property winrmListeners One or more `winrm_listener` blocks as defined below. Changing this forces a new resource to be created.
*/
public data class OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs(
public val additionalUnattendContents:
Output>? =
null,
public val adminPassword: Output,
public val adminUsername: Output,
public val computerNamePrefix: Output? = null,
public val enableAutomaticUpdates: Output? = null,
public val hotpatchingEnabled: Output? = null,
public val patchAssessmentMode: Output? = null,
public val patchMode: Output? = null,
public val provisionVmAgent: Output? = null,
public val secrets:
Output>? =
null,
public val timezone: Output? = null,
public val winrmListeners:
Output>? =
null,
) :
ConvertibleToJava {
override fun toJava():
com.pulumi.azure.compute.inputs.OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs =
com.pulumi.azure.compute.inputs.OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs.builder()
.additionalUnattendContents(
additionalUnattendContents?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.adminPassword(adminPassword.applyValue({ args0 -> args0 }))
.adminUsername(adminUsername.applyValue({ args0 -> args0 }))
.computerNamePrefix(computerNamePrefix?.applyValue({ args0 -> args0 }))
.enableAutomaticUpdates(enableAutomaticUpdates?.applyValue({ args0 -> args0 }))
.hotpatchingEnabled(hotpatchingEnabled?.applyValue({ args0 -> args0 }))
.patchAssessmentMode(patchAssessmentMode?.applyValue({ args0 -> args0 }))
.patchMode(patchMode?.applyValue({ args0 -> args0 }))
.provisionVmAgent(provisionVmAgent?.applyValue({ args0 -> args0 }))
.secrets(
secrets?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.timezone(timezone?.applyValue({ args0 -> args0 }))
.winrmListeners(
winrmListeners?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgs].
*/
@PulumiTagMarker
public class OrchestratedVirtualMachineScaleSetOsProfileWindowsConfigurationArgsBuilder internal
constructor() {
private var additionalUnattendContents:
Output>? =
null
private var adminPassword: Output? = null
private var adminUsername: Output? = null
private var computerNamePrefix: Output? = null
private var enableAutomaticUpdates: Output? = null
private var hotpatchingEnabled: Output? = null
private var patchAssessmentMode: Output? = null
private var patchMode: Output? = null
private var provisionVmAgent: Output? = null
private var secrets:
Output>? =
null
private var timezone: Output? = null
private var winrmListeners:
Output>? =
null
/**
* @param value One or more `additional_unattend_content` blocks as defined below. Changing this forces a new resource to be created.
*/
@JvmName("itgaftykbdduqkmg")
public suspend
fun additionalUnattendContents(`value`: Output>) {
this.additionalUnattendContents = value
}
@JvmName("buafovyjuikeqkbj")
public suspend fun additionalUnattendContents(
vararg
values: Output,
) {
this.additionalUnattendContents = Output.all(values.asList())
}
/**
* @param values One or more `additional_unattend_content` blocks as defined below. Changing this forces a new resource to be created.
*/
@JvmName("ntdixuncrusxilfo")
public suspend
fun additionalUnattendContents(values: List