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

com.pulumi.azure.compute.kotlin.outputs.OrchestratedVirtualMachineScaleSetOsDisk.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: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.compute.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property caching The Type of Caching which should be used for the Internal OS Disk. Possible values are `None`, `ReadOnly` and `ReadWrite`.
 * @property diffDiskSettings A `diff_disk_settings` block as defined above. Changing this forces a new resource to be created.
 * @property diskEncryptionSetId The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
 * > **Note:** Disk Encryption Sets are in Public Preview in a limited set of regions
 * @property diskSizeGb The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
 * @property storageAccountType The Type of Storage Account which should back this the Internal OS Disk. Possible values include `Standard_LRS`, `StandardSSD_LRS`, `StandardSSD_ZRS`, `Premium_LRS` and `Premium_ZRS`. Changing this forces a new resource to be created.
 * @property writeAcceleratorEnabled Specifies if Write Accelerator is enabled on the OS Disk. Defaults to `false`.
 */
public data class OrchestratedVirtualMachineScaleSetOsDisk(
    public val caching: String,
    public val diffDiskSettings: OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettings? = null,
    public val diskEncryptionSetId: String? = null,
    public val diskSizeGb: Int? = null,
    public val storageAccountType: String,
    public val writeAcceleratorEnabled: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.compute.outputs.OrchestratedVirtualMachineScaleSetOsDisk): OrchestratedVirtualMachineScaleSetOsDisk = OrchestratedVirtualMachineScaleSetOsDisk(
            caching = javaType.caching(),
            diffDiskSettings = javaType.diffDiskSettings().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azure.compute.kotlin.outputs.OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettings.Companion.toKotlin(args0)
                })
            }).orElse(null),
            diskEncryptionSetId = javaType.diskEncryptionSetId().map({ args0 -> args0 }).orElse(null),
            diskSizeGb = javaType.diskSizeGb().map({ args0 -> args0 }).orElse(null),
            storageAccountType = javaType.storageAccountType(),
            writeAcceleratorEnabled = javaType.writeAcceleratorEnabled().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy