
com.pulumi.azure.compute.kotlin.outputs.OrchestratedVirtualMachineScaleSetExtension.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.compute.kotlin.outputs
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property autoUpgradeMinorVersionEnabled Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to `true`.
* @property extensionsToProvisionAfterVmCreations An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
* @property failureSuppressionEnabled Should failures from the extension be suppressed? Possible values are `true` or `false`.
* > **Note:** Operational failures such as not connecting to the VM will not be suppressed regardless of the `failure_suppression_enabled` value.
* @property forceExtensionExecutionOnChange A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
* @property name The name for the Virtual Machine Scale Set Extension.
* @property protectedSettings A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
* > **Note:** Keys within the `protected_settings` block are notoriously case-sensitive, where the casing required (e.g. `TitleCase` vs `snakeCase`) depends on the Extension being used. Please refer to the documentation for the specific Virtual Machine Extension you're looking to use for more information.
* @property protectedSettingsFromKeyVault A `protected_settings_from_key_vault` block as defined below.
* > **Note:** `protected_settings_from_key_vault` cannot be used with `protected_settings`
* @property publisher Specifies the Publisher of the Extension.
* @property settings A JSON String which specifies Settings for the Extension.
* @property type Specifies the Type of the Extension.
* @property typeHandlerVersion Specifies the version of the extension to use, available versions can be found using the Azure CLI.
*/
public data class OrchestratedVirtualMachineScaleSetExtension(
public val autoUpgradeMinorVersionEnabled: Boolean? = null,
public val extensionsToProvisionAfterVmCreations: List? = null,
public val failureSuppressionEnabled: Boolean? = null,
public val forceExtensionExecutionOnChange: String? = null,
public val name: String,
public val protectedSettings: String? = null,
public val protectedSettingsFromKeyVault: OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault? = null,
public val publisher: String,
public val settings: String? = null,
public val type: String,
public val typeHandlerVersion: String,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.azure.compute.outputs.OrchestratedVirtualMachineScaleSetExtension): OrchestratedVirtualMachineScaleSetExtension = OrchestratedVirtualMachineScaleSetExtension(
autoUpgradeMinorVersionEnabled = javaType.autoUpgradeMinorVersionEnabled().map({ args0 ->
args0
}).orElse(null),
extensionsToProvisionAfterVmCreations = javaType.extensionsToProvisionAfterVmCreations().map({ args0 ->
args0
}),
failureSuppressionEnabled = javaType.failureSuppressionEnabled().map({ args0 ->
args0
}).orElse(null),
forceExtensionExecutionOnChange = javaType.forceExtensionExecutionOnChange().map({ args0 ->
args0
}).orElse(null),
name = javaType.name(),
protectedSettings = javaType.protectedSettings().map({ args0 -> args0 }).orElse(null),
protectedSettingsFromKeyVault = javaType.protectedSettingsFromKeyVault().map({ args0 ->
args0.let({ args0 ->
com.pulumi.azure.compute.kotlin.outputs.OrchestratedVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVault.Companion.toKotlin(args0)
})
}).orElse(null),
publisher = javaType.publisher(),
settings = javaType.settings().map({ args0 -> args0 }).orElse(null),
type = javaType.type(),
typeHandlerVersion = javaType.typeHandlerVersion(),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy