azure-cli
Version:
Microsoft Azure Cross Platform Command Line tool
101 lines (95 loc) • 3.78 kB
JavaScript
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/
;
const models = require('./index');
/**
* Describes a storage profile.
*
*/
class ImageStorageProfile {
/**
* Create a ImageStorageProfile.
* @member {object} osDisk Specifies information about the operating system
* disk used by the virtual machine. <br><br> For more information about
* disks, see [About disks and VHDs for Azure virtual
* machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
* @member {string} [osDisk.osType] This property allows you to specify the
* type of the OS that is included in the disk if creating a VM from a custom
* image. <br><br> Possible values are: <br><br> **Windows** <br><br>
* **Linux**. Possible values include: 'Windows', 'Linux'
* @member {string} [osDisk.osState] The OS State. Possible values include:
* 'Generalized', 'Specialized'
* @member {object} [osDisk.snapshot] The snapshot.
* @member {string} [osDisk.snapshot.id] Resource Id
* @member {object} [osDisk.managedDisk] The managedDisk.
* @member {string} [osDisk.managedDisk.id] Resource Id
* @member {string} [osDisk.blobUri] The Virtual Hard Disk.
* @member {string} [osDisk.caching] Specifies the caching requirements.
* <br><br> Possible values are: <br><br> **None** <br><br> **ReadOnly**
* <br><br> **ReadWrite** <br><br> Default: **None for Standard storage.
* ReadOnly for Premium storage**. Possible values include: 'None',
* 'ReadOnly', 'ReadWrite'
* @member {number} [osDisk.diskSizeGB] Specifies the size of empty data
* disks in gigabytes. This element can be used to overwrite the name of the
* disk in a virtual machine image. <br><br> This value cannot be larger than
* 1023 GB
* @member {string} [osDisk.storageAccountType] Specifies the storage account
* type for the managed disk. Possible values are: Standard_LRS or
* Premium_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS'
* @member {array} [dataDisks] Specifies the parameters that are used to add
* a data disk to a virtual machine. <br><br> For more information about
* disks, see [About disks and VHDs for Azure virtual
* machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
*/
constructor() {
}
/**
* Defines the metadata of ImageStorageProfile
*
* @returns {object} metadata of ImageStorageProfile
*
*/
mapper() {
return {
required: false,
serializedName: 'ImageStorageProfile',
type: {
name: 'Composite',
className: 'ImageStorageProfile',
modelProperties: {
osDisk: {
required: true,
serializedName: 'osDisk',
type: {
name: 'Composite',
className: 'ImageOSDisk'
}
},
dataDisks: {
required: false,
serializedName: 'dataDisks',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'ImageDataDiskElementType',
type: {
name: 'Composite',
className: 'ImageDataDisk'
}
}
}
}
}
}
};
}
}
module.exports = ImageStorageProfile;