diff --git a/lib/services/computeManagement2/lib/computeManagementClient.d.ts b/lib/services/computeManagement2/lib/computeManagementClient.d.ts
index 6726ab14f3..901a0d83cb 100644
--- a/lib/services/computeManagement2/lib/computeManagementClient.d.ts
+++ b/lib/services/computeManagement2/lib/computeManagementClient.d.ts
@@ -60,9 +60,9 @@ export default class ComputeManagementClient extends AzureServiceClient {
virtualMachineExtensions: operations.VirtualMachineExtensions;
virtualMachineImages: operations.VirtualMachineImages;
usageOperations: operations.UsageOperations;
+ virtualMachines: operations.VirtualMachines;
virtualMachineSizes: operations.VirtualMachineSizes;
images: operations.Images;
- virtualMachines: operations.VirtualMachines;
virtualMachineScaleSets: operations.VirtualMachineScaleSets;
virtualMachineScaleSetExtensions: operations.VirtualMachineScaleSetExtensions;
virtualMachineScaleSetRollingUpgrades: operations.VirtualMachineScaleSetRollingUpgrades;
diff --git a/lib/services/computeManagement2/lib/computeManagementClient.js b/lib/services/computeManagement2/lib/computeManagementClient.js
index 57e95a4cf4..b610b4618f 100644
--- a/lib/services/computeManagement2/lib/computeManagementClient.js
+++ b/lib/services/computeManagement2/lib/computeManagementClient.js
@@ -77,9 +77,9 @@ class ComputeManagementClient extends ServiceClient {
this.virtualMachineExtensions = new operations.VirtualMachineExtensions(this);
this.virtualMachineImages = new operations.VirtualMachineImages(this);
this.usageOperations = new operations.UsageOperations(this);
+ this.virtualMachines = new operations.VirtualMachines(this);
this.virtualMachineSizes = new operations.VirtualMachineSizes(this);
this.images = new operations.Images(this);
- this.virtualMachines = new operations.VirtualMachines(this);
this.virtualMachineScaleSets = new operations.VirtualMachineScaleSets(this);
this.virtualMachineScaleSetExtensions = new operations.VirtualMachineScaleSetExtensions(this);
this.virtualMachineScaleSetRollingUpgrades = new operations.VirtualMachineScaleSetRollingUpgrades(this);
diff --git a/lib/services/computeManagement2/lib/models/bootDiagnostics.js b/lib/services/computeManagement2/lib/models/bootDiagnostics.js
index 840741d822..e5976c4736 100644
--- a/lib/services/computeManagement2/lib/models/bootDiagnostics.js
+++ b/lib/services/computeManagement2/lib/models/bootDiagnostics.js
@@ -12,9 +12,8 @@
/**
* Boot Diagnostics is a debugging feature which allows you to view Console
- * Output and Screenshot to diagnose VM status.
For Linux Virtual
- * Machines, you can easily view the output of your console log.
For
- * both Windows and Linux virtual machines, Azure also enables you to see a
+ * Output and Screenshot to diagnose VM status.
You can easily view
+ * the output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
*
*/
diff --git a/lib/services/computeManagement2/lib/models/bootDiagnosticsInstanceView.js b/lib/services/computeManagement2/lib/models/bootDiagnosticsInstanceView.js
index e577b799be..ac22bee1dd 100644
--- a/lib/services/computeManagement2/lib/models/bootDiagnosticsInstanceView.js
+++ b/lib/services/computeManagement2/lib/models/bootDiagnosticsInstanceView.js
@@ -21,6 +21,17 @@ class BootDiagnosticsInstanceView {
* URI.
* @member {string} [serialConsoleLogBlobUri] The Linux serial console log
* blob Uri.
+ * @member {object} [status] The boot diagnostics status information for the
+ * VM.
NOTE: It will be set only if there are errors encountered in
+ * enabling boot diagnostics.
+ * @member {string} [status.code] The status code.
+ * @member {string} [status.level] The level code. Possible values include:
+ * 'Info', 'Warning', 'Error'
+ * @member {string} [status.displayStatus] The short localizable label for
+ * the status.
+ * @member {string} [status.message] The detailed status message, including
+ * for alerts and error messages.
+ * @member {date} [status.time] The time of the status.
*/
constructor() {
}
@@ -41,6 +52,7 @@ class BootDiagnosticsInstanceView {
modelProperties: {
consoleScreenshotBlobUri: {
required: false,
+ readOnly: true,
serializedName: 'consoleScreenshotBlobUri',
type: {
name: 'String'
@@ -48,10 +60,20 @@ class BootDiagnosticsInstanceView {
},
serialConsoleLogBlobUri: {
required: false,
+ readOnly: true,
serializedName: 'serialConsoleLogBlobUri',
type: {
name: 'String'
}
+ },
+ status: {
+ required: false,
+ readOnly: true,
+ serializedName: 'status',
+ type: {
+ name: 'Composite',
+ className: 'InstanceViewStatus'
+ }
}
}
}
diff --git a/lib/services/computeManagement2/lib/models/diagnosticsProfile.js b/lib/services/computeManagement2/lib/models/diagnosticsProfile.js
index 1b3c01eca7..8d712a8186 100644
--- a/lib/services/computeManagement2/lib/models/diagnosticsProfile.js
+++ b/lib/services/computeManagement2/lib/models/diagnosticsProfile.js
@@ -20,9 +20,8 @@ class DiagnosticsProfile {
* Create a DiagnosticsProfile.
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the
- * output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [bootDiagnostics.enabled] Whether boot diagnostics
* should be enabled on the Virtual Machine.
diff --git a/lib/services/computeManagement2/lib/models/diffDiskSettings.js b/lib/services/computeManagement2/lib/models/diffDiskSettings.js
new file mode 100644
index 0000000000..255adbef70
--- /dev/null
+++ b/lib/services/computeManagement2/lib/models/diffDiskSettings.js
@@ -0,0 +1,55 @@
+/*
+ * 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.
+ */
+
+'use strict';
+
+/**
+ * Describes the parameters of differencing disk settings that can be be
+ * specified for operating system disk.
NOTE: The differencing disk
+ * settings can only be specified for managed disk.
+ *
+ */
+class DiffDiskSettings {
+ /**
+ * Create a DiffDiskSettings.
+ * @member {string} [option] Specifies the differencing disk settings for
+ * operating system disk. Possible values include: 'Local'
+ */
+ constructor() {
+ }
+
+ /**
+ * Defines the metadata of DiffDiskSettings
+ *
+ * @returns {object} metadata of DiffDiskSettings
+ *
+ */
+ mapper() {
+ return {
+ required: false,
+ serializedName: 'DiffDiskSettings',
+ type: {
+ name: 'Composite',
+ className: 'DiffDiskSettings',
+ modelProperties: {
+ option: {
+ required: false,
+ serializedName: 'option',
+ type: {
+ name: 'String'
+ }
+ }
+ }
+ }
+ };
+ }
+}
+
+module.exports = DiffDiskSettings;
diff --git a/lib/services/computeManagement2/lib/models/index.d.ts b/lib/services/computeManagement2/lib/models/index.d.ts
index 224cc17e17..c19fceec38 100644
--- a/lib/services/computeManagement2/lib/models/index.d.ts
+++ b/lib/services/computeManagement2/lib/models/index.d.ts
@@ -704,6 +704,21 @@ export interface VirtualHardDisk {
uri?: string;
}
+/**
+ * @class
+ * Initializes a new instance of the DiffDiskSettings class.
+ * @constructor
+ * Describes the parameters of differencing disk settings that can be be
+ * specified for operating system disk.
NOTE: The differencing disk
+ * settings can only be specified for managed disk.
+ *
+ * @member {string} [option] Specifies the differencing disk settings for
+ * operating system disk. Possible values include: 'Local'
+ */
+export interface DiffDiskSettings {
+ option?: string;
+}
+
/**
* @class
* Initializes a new instance of the ManagedDiskParameters class.
@@ -766,6 +781,10 @@ export interface ManagedDiskParameters extends SubResource {
* Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite'
* @member {boolean} [writeAcceleratorEnabled] Specifies whether
* writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [diffDiskSettings] Specifies the differencing Disk Settings
+ * for the operating system disk used by the virtual machine.
+ * @member {string} [diffDiskSettings.option] Specifies the differencing disk
+ * settings for operating system disk. Possible values include: 'Local'
* @member {string} createOption Specifies how the virtual machine should be
* created.
Possible values are:
**Attach** \u2013 This value
* is used when you are using a specialized disk to create the virtual
@@ -791,6 +810,7 @@ export interface OSDisk {
image?: VirtualHardDisk;
caching?: string;
writeAcceleratorEnabled?: boolean;
+ diffDiskSettings?: DiffDiskSettings;
createOption: string;
diskSizeGB?: number;
managedDisk?: ManagedDiskParameters;
@@ -913,6 +933,10 @@ export interface DataDisk {
* 'ReadWrite'
* @member {boolean} [osDisk.writeAcceleratorEnabled] Specifies whether
* writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [osDisk.diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine.
+ * @member {string} [osDisk.diffDiskSettings.option] Specifies the differencing
+ * disk settings for operating system disk. Possible values include: 'Local'
* @member {string} [osDisk.createOption] Specifies how the virtual machine
* should be created.
Possible values are:
**Attach** \u2013
* This value is used when you are using a specialized disk to create the
@@ -1290,9 +1314,8 @@ export interface NetworkProfile {
* Initializes a new instance of the BootDiagnostics class.
* @constructor
* Boot Diagnostics is a debugging feature which allows you to view Console
- * Output and Screenshot to diagnose VM status.
For Linux Virtual
- * Machines, you can easily view the output of your console log.
For
- * both Windows and Linux virtual machines, Azure also enables you to see a
+ * Output and Screenshot to diagnose VM status.
You can easily view
+ * the output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
*
* @member {boolean} [enabled] Whether boot diagnostics should be enabled on
@@ -1314,9 +1337,9 @@ export interface BootDiagnostics {
*
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the output
- * of your console log.
For both Windows and Linux virtual machines,
- * Azure also enables you to see a screenshot of the VM from the hypervisor.
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
+ * hypervisor.
* @member {boolean} [bootDiagnostics.enabled] Whether boot diagnostics should
* be enabled on the Virtual Machine.
* @member {string} [bootDiagnostics.storageUri] Uri of the storage account to
@@ -1395,10 +1418,22 @@ export interface DiskInstanceView {
* @member {string} [consoleScreenshotBlobUri] The console screenshot blob URI.
* @member {string} [serialConsoleLogBlobUri] The Linux serial console log blob
* Uri.
+ * @member {object} [status] The boot diagnostics status information for the
+ * VM.
NOTE: It will be set only if there are errors encountered in
+ * enabling boot diagnostics.
+ * @member {string} [status.code] The status code.
+ * @member {string} [status.level] The level code. Possible values include:
+ * 'Info', 'Warning', 'Error'
+ * @member {string} [status.displayStatus] The short localizable label for the
+ * status.
+ * @member {string} [status.message] The detailed status message, including for
+ * alerts and error messages.
+ * @member {date} [status.time] The time of the status.
*/
export interface BootDiagnosticsInstanceView {
- consoleScreenshotBlobUri?: string;
- serialConsoleLogBlobUri?: string;
+ readonly consoleScreenshotBlobUri?: string;
+ readonly serialConsoleLogBlobUri?: string;
+ readonly status?: InstanceViewStatus;
}
/**
@@ -1516,13 +1551,24 @@ export interface MaintenanceRedeployStatus {
* @member {array} [extensions] The extensions information.
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the output
- * of your console log.
For both Windows and Linux virtual machines,
- * Azure also enables you to see a screenshot of the VM from the hypervisor.
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
+ * hypervisor.
* @member {string} [bootDiagnostics.consoleScreenshotBlobUri] The console
* screenshot blob URI.
* @member {string} [bootDiagnostics.serialConsoleLogBlobUri] The Linux serial
* console log blob Uri.
+ * @member {object} [bootDiagnostics.status] The boot diagnostics status
+ * information for the VM.
NOTE: It will be set only if there are
+ * errors encountered in enabling boot diagnostics.
+ * @member {string} [bootDiagnostics.status.code] The status code.
+ * @member {string} [bootDiagnostics.status.level] The level code. Possible
+ * values include: 'Info', 'Warning', 'Error'
+ * @member {string} [bootDiagnostics.status.displayStatus] The short
+ * localizable label for the status.
+ * @member {string} [bootDiagnostics.status.message] The detailed status
+ * message, including for alerts and error messages.
+ * @member {date} [bootDiagnostics.status.time] The time of the status.
* @member {array} [statuses] The resource status information.
*/
export interface VirtualMachineInstanceView {
@@ -1690,6 +1736,12 @@ export interface VirtualMachineInstanceView {
* 'ReadOnly', 'ReadWrite'
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled] Specifies
* whether writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the virtual
+ * machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -1815,9 +1867,8 @@ export interface VirtualMachineInstanceView {
* state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether boot
* diagnostics should be enabled on the Virtual Machine.
@@ -1886,14 +1937,25 @@ export interface VirtualMachineInstanceView {
* @member {array} [instanceView.extensions] The extensions information.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri] The
* console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri] The
* Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot diagnostics
+ * status information for the VM.
NOTE: It will be set only if there
+ * are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level code.
+ * Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The detailed
+ * status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [licenseType] Specifies that the image or disk that is
* being used was licensed on-premises. This element is only used for images
@@ -2095,6 +2157,12 @@ export interface VirtualMachine extends Resource {
* 'ReadOnly', 'ReadWrite'
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled] Specifies
* whether writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the virtual
+ * machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -2220,9 +2288,8 @@ export interface VirtualMachine extends Resource {
* state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether boot
* diagnostics should be enabled on the Virtual Machine.
@@ -2291,14 +2358,25 @@ export interface VirtualMachine extends Resource {
* @member {array} [instanceView.extensions] The extensions information.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri] The
* console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri] The
* Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot diagnostics
+ * status information for the VM.
NOTE: It will be set only if there
+ * are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level code.
+ * Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The detailed
+ * status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [licenseType] Specifies that the image or disk that is
* being used was licensed on-premises. This element is only used for images
@@ -2901,6 +2979,10 @@ export interface VirtualMachineScaleSetManagedDiskParameters {
* the imageReference element described above. If you are using a marketplace
* image, you also use the plan element previously described. Possible values
* include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [diffDiskSettings] Specifies the differencing Disk Settings
+ * for the operating system disk used by the virtual machine scale set.
+ * @member {string} [diffDiskSettings.option] Specifies the differencing disk
+ * settings for operating system disk. Possible values include: 'Local'
* @member {number} [diskSizeGB] Specifies the size of the operating system
* disk in gigabytes. This element can be used to overwrite the size of the
* disk in a virtual machine image.
This value cannot be larger than
@@ -2925,6 +3007,7 @@ export interface VirtualMachineScaleSetOSDisk {
caching?: string;
writeAcceleratorEnabled?: boolean;
createOption: string;
+ diffDiskSettings?: DiffDiskSettings;
diskSizeGB?: number;
osType?: string;
image?: VirtualHardDisk;
@@ -3047,6 +3130,11 @@ export interface VirtualMachineScaleSetDataDisk {
* the imageReference element described above. If you are using a marketplace
* image, you also use the plan element previously described. Possible values
* include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [osDisk.diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine scale
+ * set.
+ * @member {string} [osDisk.diffDiskSettings.option] Specifies the differencing
+ * disk settings for operating system disk. Possible values include: 'Local'
* @member {number} [osDisk.diskSizeGB] Specifies the size of the operating
* system disk in gigabytes. This element can be used to overwrite the size of
* the disk in a virtual machine image.
This value cannot be larger
@@ -3625,6 +3713,12 @@ export interface VirtualMachineScaleSetExtensionProfile {
* you also use the imageReference element described above. If you are using a
* marketplace image, you also use the plan element previously described.
* Possible values include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the virtual
+ * machine scale set.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {number} [storageProfile.osDisk.diskSizeGB] Specifies the size of
* the operating system disk in gigabytes. This element can be used to
* overwrite the size of the disk in a virtual machine image.
This
@@ -3676,9 +3770,8 @@ export interface VirtualMachineScaleSetExtensionProfile {
* state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether boot
* diagnostics should be enabled on the Virtual Machine.
@@ -3808,9 +3901,8 @@ export interface VirtualMachineScaleSetVMProfile {
* diagnostics profile.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether boot
* diagnostics should be enabled on the Virtual Machine.
@@ -4042,6 +4134,14 @@ export interface VirtualMachineScaleSetUpdateVMProfile {
* described above. If you are using a marketplace image, you also use the
* plan element previously described. Possible values include: 'FromImage',
* 'Empty', 'Attach'
+ * @member {object}
+ * [virtualMachineProfile.storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the virtual
+ * machine scale set.
+ * @member {string}
+ * [virtualMachineProfile.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
* @member {number} [virtualMachineProfile.storageProfile.osDisk.diskSizeGB]
* Specifies the size of the operating system disk in gigabytes. This element
* can be used to overwrite the size of the disk in a virtual machine image.
@@ -4099,9 +4199,8 @@ export interface VirtualMachineScaleSetUpdateVMProfile {
* boot diagnostic settings state.
Minimum api-version: 2015-06-15.
* @member {object} [virtualMachineProfile.diagnosticsProfile.bootDiagnostics]
* Boot Diagnostics is a debugging feature which allows you to view Console
- * Output and Screenshot to diagnose VM status.
For Linux Virtual
- * Machines, you can easily view the output of your console log.
For
- * both Windows and Linux virtual machines, Azure also enables you to see a
+ * Output and Screenshot to diagnose VM status.
You can easily view
+ * the output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
* @member {boolean}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics.enabled] Whether
@@ -4349,9 +4448,8 @@ export interface VirtualMachineScaleSet extends Resource {
* machine scale set diagnostics profile.
* @member {object} [virtualMachineProfile.diagnosticsProfile.bootDiagnostics]
* Boot Diagnostics is a debugging feature which allows you to view Console
- * Output and Screenshot to diagnose VM status.
For Linux Virtual
- * Machines, you can easily view the output of your console log.
For
- * both Windows and Linux virtual machines, Azure also enables you to see a
+ * Output and Screenshot to diagnose VM status.
You can easily view
+ * the output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
* @member {boolean}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics.enabled] Whether
@@ -4880,13 +4978,24 @@ export interface VirtualMachineHealthStatus {
* @member {date} [vmHealth.status.time] The time of the status.
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the output
- * of your console log.
For both Windows and Linux virtual machines,
- * Azure also enables you to see a screenshot of the VM from the hypervisor.
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
+ * hypervisor.
* @member {string} [bootDiagnostics.consoleScreenshotBlobUri] The console
* screenshot blob URI.
* @member {string} [bootDiagnostics.serialConsoleLogBlobUri] The Linux serial
* console log blob Uri.
+ * @member {object} [bootDiagnostics.status] The boot diagnostics status
+ * information for the VM.
NOTE: It will be set only if there are
+ * errors encountered in enabling boot diagnostics.
+ * @member {string} [bootDiagnostics.status.code] The status code.
+ * @member {string} [bootDiagnostics.status.level] The level code. Possible
+ * values include: 'Info', 'Warning', 'Error'
+ * @member {string} [bootDiagnostics.status.displayStatus] The short
+ * localizable label for the status.
+ * @member {string} [bootDiagnostics.status.message] The detailed status
+ * message, including for alerts and error messages.
+ * @member {date} [bootDiagnostics.status.time] The time of the status.
* @member {array} [statuses] The resource status information.
* @member {string} [placementGroupId] The placement group in which the VM is
* running. If the VM is deallocated it will not have a placementGroupId.
@@ -4975,14 +5084,25 @@ export interface VirtualMachineScaleSetVMInstanceView {
* @member {date} [instanceView.vmHealth.status.time] The time of the status.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri] The
* console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri] The
* Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot diagnostics
+ * status information for the VM.
NOTE: It will be set only if there
+ * are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level code.
+ * Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The detailed
+ * status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [instanceView.placementGroupId] The placement group in
* which the VM is running. If the VM is deallocated it will not have a
@@ -5118,6 +5238,12 @@ export interface VirtualMachineScaleSetVMInstanceView {
* 'ReadOnly', 'ReadWrite'
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled] Specifies
* whether writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the virtual
+ * machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -5245,9 +5371,8 @@ export interface VirtualMachineScaleSetVMInstanceView {
* state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot to
- * diagnose VM status.
For Linux Virtual Machines, you can easily view
- * the output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * diagnose VM status.
You can easily view the output of your console
+ * log.
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether boot
* diagnostics should be enabled on the Virtual Machine.
@@ -6880,27 +7005,27 @@ export interface ListUsagesResult extends Array {
/**
* @class
- * Initializes a new instance of the ImageListResult class.
+ * Initializes a new instance of the VirtualMachineListResult class.
* @constructor
- * The List Image operation response.
+ * The List Virtual Machine operation response.
*
- * @member {string} [nextLink] The uri to fetch the next page of Images. Call
- * ListNext() with this to fetch the next page of Images.
+ * @member {string} [nextLink] The URI to fetch the next page of VMs. Call
+ * ListNext() with this URI to fetch the next page of Virtual Machines.
*/
-export interface ImageListResult extends Array {
+export interface VirtualMachineListResult extends Array {
nextLink?: string;
}
/**
* @class
- * Initializes a new instance of the VirtualMachineListResult class.
+ * Initializes a new instance of the ImageListResult class.
* @constructor
- * The List Virtual Machine operation response.
+ * The List Image operation response.
*
- * @member {string} [nextLink] The URI to fetch the next page of VMs. Call
- * ListNext() with this URI to fetch the next page of Virtual Machines.
+ * @member {string} [nextLink] The uri to fetch the next page of Images. Call
+ * ListNext() with this to fetch the next page of Images.
*/
-export interface VirtualMachineListResult extends Array {
+export interface ImageListResult extends Array {
nextLink?: string;
}
diff --git a/lib/services/computeManagement2/lib/models/index.js b/lib/services/computeManagement2/lib/models/index.js
index 53c9f67379..fcbbc7572e 100644
--- a/lib/services/computeManagement2/lib/models/index.js
+++ b/lib/services/computeManagement2/lib/models/index.js
@@ -48,6 +48,7 @@ exports.KeyVaultSecretReference = require('./keyVaultSecretReference');
exports.KeyVaultKeyReference = require('./keyVaultKeyReference');
exports.DiskEncryptionSettings = require('./diskEncryptionSettings');
exports.VirtualHardDisk = require('./virtualHardDisk');
+exports.DiffDiskSettings = require('./diffDiskSettings');
exports.ManagedDiskParameters = require('./managedDiskParameters');
exports.OSDisk = require('./oSDisk');
exports.DataDisk = require('./dataDisk');
@@ -204,8 +205,8 @@ exports.ComputeOperationListResult = require('./computeOperationListResult');
exports.AvailabilitySetListResult = require('./availabilitySetListResult');
exports.VirtualMachineSizeListResult = require('./virtualMachineSizeListResult');
exports.ListUsagesResult = require('./listUsagesResult');
-exports.ImageListResult = require('./imageListResult');
exports.VirtualMachineListResult = require('./virtualMachineListResult');
+exports.ImageListResult = require('./imageListResult');
exports.VirtualMachineScaleSetListResult = require('./virtualMachineScaleSetListResult');
exports.VirtualMachineScaleSetListWithLinkResult = require('./virtualMachineScaleSetListWithLinkResult');
exports.VirtualMachineScaleSetListSkusResult = require('./virtualMachineScaleSetListSkusResult');
diff --git a/lib/services/computeManagement2/lib/models/oSDisk.js b/lib/services/computeManagement2/lib/models/oSDisk.js
index 7c553f0713..18e3a4c0dd 100644
--- a/lib/services/computeManagement2/lib/models/oSDisk.js
+++ b/lib/services/computeManagement2/lib/models/oSDisk.js
@@ -59,6 +59,10 @@ class OSDisk {
* 'ReadWrite'
* @member {boolean} [writeAcceleratorEnabled] Specifies whether
* writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine.
+ * @member {string} [diffDiskSettings.option] Specifies the differencing disk
+ * settings for operating system disk. Possible values include: 'Local'
* @member {string} createOption Specifies how the virtual machine should be
* created.
Possible values are:
**Attach** \u2013 This value
* is used when you are using a specialized disk to create the virtual
@@ -147,6 +151,14 @@ class OSDisk {
name: 'Boolean'
}
},
+ diffDiskSettings: {
+ required: false,
+ serializedName: 'diffDiskSettings',
+ type: {
+ name: 'Composite',
+ className: 'DiffDiskSettings'
+ }
+ },
createOption: {
required: true,
serializedName: 'createOption',
diff --git a/lib/services/computeManagement2/lib/models/storageProfile.js b/lib/services/computeManagement2/lib/models/storageProfile.js
index 42c1cdb5e0..cf4f2ce1e7 100644
--- a/lib/services/computeManagement2/lib/models/storageProfile.js
+++ b/lib/services/computeManagement2/lib/models/storageProfile.js
@@ -77,6 +77,11 @@ class StorageProfile {
* 'ReadOnly', 'ReadWrite'
* @member {boolean} [osDisk.writeAcceleratorEnabled] Specifies whether
* writeAccelerator should be enabled or disabled on the disk.
+ * @member {object} [osDisk.diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine.
+ * @member {string} [osDisk.diffDiskSettings.option] Specifies the
+ * differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [osDisk.createOption] Specifies how the virtual machine
* should be created.
Possible values are:
**Attach** \u2013
* This value is used when you are using a specialized disk to create the
diff --git a/lib/services/computeManagement2/lib/models/virtualMachine.js b/lib/services/computeManagement2/lib/models/virtualMachine.js
index 1bfd785c30..0487bd8b55 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachine.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachine.js
@@ -170,6 +170,12 @@ class VirtualMachine extends models['Resource'] {
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled]
* Specifies whether writeAccelerator should be enabled or disabled on the
* disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the
+ * virtual machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -300,9 +306,8 @@ class VirtualMachine extends models['Resource'] {
* settings state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is
* a debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether
* boot diagnostics should be enabled on the Virtual Machine.
@@ -371,14 +376,26 @@ class VirtualMachine extends models['Resource'] {
* @member {array} [instanceView.extensions] The extensions information.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri]
* The console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri]
* The Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot
+ * diagnostics status information for the VM.
NOTE: It will be set
+ * only if there are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status
+ * code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level
+ * code. Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The
+ * detailed status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [licenseType] Specifies that the image or disk that is
* being used was licensed on-premises. This element is only used for images
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineInstanceView.js b/lib/services/computeManagement2/lib/models/virtualMachineInstanceView.js
index 0092fc874e..05b74a3195 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineInstanceView.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineInstanceView.js
@@ -56,14 +56,24 @@ class VirtualMachineInstanceView {
* @member {array} [extensions] The extensions information.
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the
- * output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {string} [bootDiagnostics.consoleScreenshotBlobUri] The console
* screenshot blob URI.
* @member {string} [bootDiagnostics.serialConsoleLogBlobUri] The Linux
* serial console log blob Uri.
+ * @member {object} [bootDiagnostics.status] The boot diagnostics status
+ * information for the VM.
NOTE: It will be set only if there are
+ * errors encountered in enabling boot diagnostics.
+ * @member {string} [bootDiagnostics.status.code] The status code.
+ * @member {string} [bootDiagnostics.status.level] The level code. Possible
+ * values include: 'Info', 'Warning', 'Error'
+ * @member {string} [bootDiagnostics.status.displayStatus] The short
+ * localizable label for the status.
+ * @member {string} [bootDiagnostics.status.message] The detailed status
+ * message, including for alerts and error messages.
+ * @member {date} [bootDiagnostics.status.time] The time of the status.
* @member {array} [statuses] The resource status information.
*/
constructor() {
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSet.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSet.js
index 648247509e..fd29c2b1da 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSet.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSet.js
@@ -231,6 +231,14 @@ class VirtualMachineScaleSet extends models['Resource'] {
* image, you also use the imageReference element described above. If you are
* using a marketplace image, you also use the plan element previously
* described. Possible values include: 'FromImage', 'Empty', 'Attach'
+ * @member {object}
+ * [virtualMachineProfile.storageProfile.osDisk.diffDiskSettings] Specifies
+ * the differencing Disk Settings for the operating system disk used by the
+ * virtual machine scale set.
+ * @member {string}
+ * [virtualMachineProfile.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk.
+ * Possible values include: 'Local'
* @member {number} [virtualMachineProfile.storageProfile.osDisk.diskSizeGB]
* Specifies the size of the operating system disk in gigabytes. This element
* can be used to overwrite the size of the disk in a virtual machine image.
@@ -292,9 +300,8 @@ class VirtualMachineScaleSet extends models['Resource'] {
* @member {object}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics] Boot
* Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
* @member {boolean}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics.enabled] Whether
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetOSDisk.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetOSDisk.js
index c604d7389a..d1cbfc3320 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetOSDisk.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetOSDisk.js
@@ -32,6 +32,11 @@ class VirtualMachineScaleSetOSDisk {
* use the imageReference element described above. If you are using a
* marketplace image, you also use the plan element previously described.
* Possible values include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine scale
+ * set.
+ * @member {string} [diffDiskSettings.option] Specifies the differencing disk
+ * settings for operating system disk. Possible values include: 'Local'
* @member {number} [diskSizeGB] Specifies the size of the operating system
* disk in gigabytes. This element can be used to overwrite the size of the
* disk in a virtual machine image.
This value cannot be larger than
@@ -97,6 +102,14 @@ class VirtualMachineScaleSetOSDisk {
name: 'String'
}
},
+ diffDiskSettings: {
+ required: false,
+ serializedName: 'diffDiskSettings',
+ type: {
+ name: 'Composite',
+ className: 'DiffDiskSettings'
+ }
+ },
diskSizeGB: {
required: false,
serializedName: 'diskSizeGB',
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetStorageProfile.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetStorageProfile.js
index 5196601dfb..9baa4fc435 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetStorageProfile.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetStorageProfile.js
@@ -52,6 +52,12 @@ class VirtualMachineScaleSetStorageProfile {
* use the imageReference element described above. If you are using a
* marketplace image, you also use the plan element previously described.
* Possible values include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [osDisk.diffDiskSettings] Specifies the differencing Disk
+ * Settings for the operating system disk used by the virtual machine scale
+ * set.
+ * @member {string} [osDisk.diffDiskSettings.option] Specifies the
+ * differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {number} [osDisk.diskSizeGB] Specifies the size of the operating
* system disk in gigabytes. This element can be used to overwrite the size
* of the disk in a virtual machine image.
This value cannot be
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdate.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdate.js
index 36b3b105c5..9479f32f11 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdate.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdate.js
@@ -193,9 +193,8 @@ class VirtualMachineScaleSetUpdate extends models['UpdateResource'] {
* @member {object}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics] Boot
* Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
* @member {boolean}
* [virtualMachineProfile.diagnosticsProfile.bootDiagnostics.enabled] Whether
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdateVMProfile.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdateVMProfile.js
index 876c3adfc4..6894c64882 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdateVMProfile.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetUpdateVMProfile.js
@@ -107,9 +107,8 @@ class VirtualMachineScaleSetUpdateVMProfile {
* diagnostics profile.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is
* a debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether
* boot diagnostics should be enabled on the Virtual Machine.
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVM.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVM.js
index 3376670278..0c7b259f9a 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVM.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVM.js
@@ -85,14 +85,26 @@ class VirtualMachineScaleSetVM extends models['Resource'] {
* @member {date} [instanceView.vmHealth.status.time] The time of the status.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri]
* The console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri]
* The Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot
+ * diagnostics status information for the VM.
NOTE: It will be set
+ * only if there are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status
+ * code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level
+ * code. Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The
+ * detailed status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [instanceView.placementGroupId] The placement group in
* which the VM is running. If the VM is deallocated it will not have a
@@ -234,6 +246,12 @@ class VirtualMachineScaleSetVM extends models['Resource'] {
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled]
* Specifies whether writeAccelerator should be enabled or disabled on the
* disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the
+ * virtual machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -366,9 +384,8 @@ class VirtualMachineScaleSetVM extends models['Resource'] {
* settings state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is
* a debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether
* boot diagnostics should be enabled on the Virtual Machine.
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMInstanceView.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMInstanceView.js
index 2b34d4980f..e786396ccb 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMInstanceView.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMInstanceView.js
@@ -59,14 +59,24 @@ class VirtualMachineScaleSetVMInstanceView {
* @member {date} [vmHealth.status.time] The time of the status.
* @member {object} [bootDiagnostics] Boot Diagnostics is a debugging feature
* which allows you to view Console Output and Screenshot to diagnose VM
- * status.
For Linux Virtual Machines, you can easily view the
- * output of your console log.
For both Windows and Linux virtual
- * machines, Azure also enables you to see a screenshot of the VM from the
+ * status.
You can easily view the output of your console log.
+ *
Azure also enables you to see a screenshot of the VM from the
* hypervisor.
* @member {string} [bootDiagnostics.consoleScreenshotBlobUri] The console
* screenshot blob URI.
* @member {string} [bootDiagnostics.serialConsoleLogBlobUri] The Linux
* serial console log blob Uri.
+ * @member {object} [bootDiagnostics.status] The boot diagnostics status
+ * information for the VM.
NOTE: It will be set only if there are
+ * errors encountered in enabling boot diagnostics.
+ * @member {string} [bootDiagnostics.status.code] The status code.
+ * @member {string} [bootDiagnostics.status.level] The level code. Possible
+ * values include: 'Info', 'Warning', 'Error'
+ * @member {string} [bootDiagnostics.status.displayStatus] The short
+ * localizable label for the status.
+ * @member {string} [bootDiagnostics.status.message] The detailed status
+ * message, including for alerts and error messages.
+ * @member {date} [bootDiagnostics.status.time] The time of the status.
* @member {array} [statuses] The resource status information.
* @member {string} [placementGroupId] The placement group in which the VM is
* running. If the VM is deallocated it will not have a placementGroupId.
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMProfile.js b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMProfile.js
index 62c9b40196..c03ebe43d0 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMProfile.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineScaleSetVMProfile.js
@@ -141,6 +141,12 @@ class VirtualMachineScaleSetVMProfile {
* image, you also use the imageReference element described above. If you are
* using a marketplace image, you also use the plan element previously
* described. Possible values include: 'FromImage', 'Empty', 'Attach'
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the
+ * virtual machine scale set.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {number} [storageProfile.osDisk.diskSizeGB] Specifies the size of
* the operating system disk in gigabytes. This element can be used to
* overwrite the size of the disk in a virtual machine image.
This
@@ -193,9 +199,8 @@ class VirtualMachineScaleSetVMProfile {
* settings state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is
* a debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether
* boot diagnostics should be enabled on the Virtual Machine.
diff --git a/lib/services/computeManagement2/lib/models/virtualMachineUpdate.js b/lib/services/computeManagement2/lib/models/virtualMachineUpdate.js
index e0e1277183..0bc64c4604 100644
--- a/lib/services/computeManagement2/lib/models/virtualMachineUpdate.js
+++ b/lib/services/computeManagement2/lib/models/virtualMachineUpdate.js
@@ -170,6 +170,12 @@ class VirtualMachineUpdate extends models['UpdateResource'] {
* @member {boolean} [storageProfile.osDisk.writeAcceleratorEnabled]
* Specifies whether writeAccelerator should be enabled or disabled on the
* disk.
+ * @member {object} [storageProfile.osDisk.diffDiskSettings] Specifies the
+ * differencing Disk Settings for the operating system disk used by the
+ * virtual machine.
+ * @member {string} [storageProfile.osDisk.diffDiskSettings.option] Specifies
+ * the differencing disk settings for operating system disk. Possible values
+ * include: 'Local'
* @member {string} [storageProfile.osDisk.createOption] Specifies how the
* virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -300,9 +306,8 @@ class VirtualMachineUpdate extends models['UpdateResource'] {
* settings state.
Minimum api-version: 2015-06-15.
* @member {object} [diagnosticsProfile.bootDiagnostics] Boot Diagnostics is
* a debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {boolean} [diagnosticsProfile.bootDiagnostics.enabled] Whether
* boot diagnostics should be enabled on the Virtual Machine.
@@ -371,14 +376,26 @@ class VirtualMachineUpdate extends models['UpdateResource'] {
* @member {array} [instanceView.extensions] The extensions information.
* @member {object} [instanceView.bootDiagnostics] Boot Diagnostics is a
* debugging feature which allows you to view Console Output and Screenshot
- * to diagnose VM status.
For Linux Virtual Machines, you can easily
- * view the output of your console log.
For both Windows and Linux
- * virtual machines, Azure also enables you to see a screenshot of the VM
+ * to diagnose VM status.
You can easily view the output of your
+ * console log.
Azure also enables you to see a screenshot of the VM
* from the hypervisor.
* @member {string} [instanceView.bootDiagnostics.consoleScreenshotBlobUri]
* The console screenshot blob URI.
* @member {string} [instanceView.bootDiagnostics.serialConsoleLogBlobUri]
* The Linux serial console log blob Uri.
+ * @member {object} [instanceView.bootDiagnostics.status] The boot
+ * diagnostics status information for the VM.
NOTE: It will be set
+ * only if there are errors encountered in enabling boot diagnostics.
+ * @member {string} [instanceView.bootDiagnostics.status.code] The status
+ * code.
+ * @member {string} [instanceView.bootDiagnostics.status.level] The level
+ * code. Possible values include: 'Info', 'Warning', 'Error'
+ * @member {string} [instanceView.bootDiagnostics.status.displayStatus] The
+ * short localizable label for the status.
+ * @member {string} [instanceView.bootDiagnostics.status.message] The
+ * detailed status message, including for alerts and error messages.
+ * @member {date} [instanceView.bootDiagnostics.status.time] The time of the
+ * status.
* @member {array} [instanceView.statuses] The resource status information.
* @member {string} [licenseType] Specifies that the image or disk that is
* being used was licensed on-premises. This element is only used for images
diff --git a/lib/services/computeManagement2/lib/operations/index.d.ts b/lib/services/computeManagement2/lib/operations/index.d.ts
index be29115991..7c080b3d76 100644
--- a/lib/services/computeManagement2/lib/operations/index.d.ts
+++ b/lib/services/computeManagement2/lib/operations/index.d.ts
@@ -2246,19 +2246,19 @@ export interface UsageOperations {
/**
* @class
- * VirtualMachineSizes
+ * VirtualMachines
* __NOTE__: An instance of this class is automatically created for an
* instance of the ComputeManagementClient.
*/
-export interface VirtualMachineSizes {
+export interface VirtualMachines {
/**
- * This API is deprecated. Use [Resources
- * Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)
+ * Gets all the virtual machines under the specified subscription for the
+ * specified location.
*
- * @param {string} location The location upon which virtual-machine-sizes is
- * queried.
+ * @param {string} location The location for which virtual machines under the
+ * subscription are queried.
*
* @param {object} [options] Optional Parameters.
*
@@ -2267,18 +2267,18 @@ export interface VirtualMachineSizes {
*
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- listWithHttpOperationResponse(location: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ listByLocationWithHttpOperationResponse(location: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * This API is deprecated. Use [Resources
- * Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)
+ * Gets all the virtual machines under the specified subscription for the
+ * specified location.
*
- * @param {string} location The location upon which virtual-machine-sizes is
- * queried.
+ * @param {string} location The location for which virtual machines under the
+ * subscription are queried.
*
* @param {object} [options] Optional Parameters.
*
@@ -2292,7 +2292,7 @@ export interface VirtualMachineSizes {
*
* {Promise} A promise is returned.
*
- * @resolve {VirtualMachineSizeListResult} - The deserialized result object.
+ * @resolve {VirtualMachineListResult} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*
@@ -2300,97 +2300,38 @@ export interface VirtualMachineSizes {
*
* {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * {VirtualMachineSizeListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineSizeListResult} for more
+ * {VirtualMachineListResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineListResult} for more
* information.
*
* {WebResource} [request] - The HTTP Request object if an error did not occur.
*
* {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- list(location: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- list(location: string, callback: ServiceCallback): void;
- list(location: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-}
-
-/**
- * @class
- * Images
- * __NOTE__: An instance of this class is automatically created for an
- * instance of the ComputeManagementClient.
- */
-export interface Images {
+ listByLocation(location: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ listByLocation(location: string, callback: ServiceCallback): void;
+ listByLocation(location: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
/**
- * Create or update an image.
+ * Captures the VM by copying virtual hard disks of the VM and outputs a
+ * template that can be used to create similar VMs.
*
* @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} imageName The name of the image.
- *
- * @param {object} parameters Parameters supplied to the Create Image
- * operation.
- *
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
- *
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
- *
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
- *
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
- *
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
- *
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
- *
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
- *
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
- *
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
- *
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
- *
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
- *
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {object} parameters Parameters supplied to the Capture Virtual
+ * Machine operation.
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
+ * prefix.
*
- * @param {string} parameters.location Resource location
+ * @param {string} parameters.destinationContainerName The destination
+ * container name.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
+ * destination virtual hard disk, in case of conflict.
*
* @param {object} [options] Optional Parameters.
*
@@ -2399,81 +2340,31 @@ export interface Images {
*
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- createOrUpdateWithHttpOperationResponse(resourceGroupName: string, imageName: string, parameters: models.Image, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ captureWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * Create or update an image.
+ * Captures the VM by copying virtual hard disks of the VM and outputs a
+ * template that can be used to create similar VMs.
*
* @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} imageName The name of the image.
- *
- * @param {object} parameters Parameters supplied to the Create Image
- * operation.
- *
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
- *
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
- *
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
- *
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
- *
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
- *
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
- *
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
- *
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
- *
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
- *
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
- *
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
- *
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {object} parameters Parameters supplied to the Capture Virtual
+ * Machine operation.
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
+ * prefix.
*
- * @param {string} parameters.location Resource location
+ * @param {string} parameters.destinationContainerName The destination
+ * container name.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
+ * destination virtual hard disk, in case of conflict.
*
* @param {object} [options] Optional Parameters.
*
@@ -2487,7 +2378,7 @@ export interface Images {
*
* {Promise} A promise is returned.
*
- * @resolve {Image} - The deserialized result object.
+ * @resolve {VirtualMachineCaptureResult} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*
@@ -2495,138 +2386,192 @@ export interface Images {
*
* {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * {Image} [result] - The deserialized result object if an error did not occur.
- * See {@link Image} for more information.
+ * {VirtualMachineCaptureResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineCaptureResult} for more
+ * information.
*
* {WebResource} [request] - The HTTP Request object if an error did not occur.
*
* {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- createOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- createOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, callback: ServiceCallback): void;
- createOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+ capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, callback: ServiceCallback): void;
+ capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
/**
- * Update an image.
+ * The operation to create or update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} imageName The name of the image.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Update Image
+ * @param {object} parameters Parameters supplied to the Create Virtual Machine
* operation.
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
- *
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
- *
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
- *
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
- *
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
- *
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
- *
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * @returns {Promise} A promise is returned
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * @reject {Error|ServiceError} - The error object.
- */
- updateWithHttpOperationResponse(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Update an image.
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @param {string} imageName The name of the image.
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @param {object} parameters Parameters supplied to the Update Image
- * operation.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
+ *
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
+ *
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
* @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
* caching requirements.
Possible values are:
**None**
@@ -2634,187 +2579,237 @@ export interface Images {
* Standard storage. ReadOnly for Premium storage**. Possible values include:
* 'None', 'ReadOnly', 'ReadWrite'
*
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
+ * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
+ * Specifies whether writeAccelerator should be enabled or disabled on the
+ * disk.
*
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
+ * the virtual machine should be created.
Possible values are:
+ * **Attach** \u2013 This value is used when you are using a specialized disk
+ * to create the virtual machine.
**FromImage** \u2013 This value is
+ * used when you are using an image to create the virtual machine. If you are
+ * using a platform image, you also use the imageReference element described
+ * above. If you are using a marketplace image, you also use the plan element
+ * previously described. Possible values include: 'FromImage', 'Empty',
+ * 'Attach'
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
+ * size of an empty data disk in gigabytes. This element can be used to
+ * overwrite the size of the disk in a virtual machine image.
This
+ * value cannot be larger than 1023 GB
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
+ * disk parameters.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string}
+ * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
+ * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
+ * be used with data disks, it cannot be used with OS Disk. Possible values
+ * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
+ * Id
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {array} [parameters.storageProfile.dataDisks] Specifies the
+ * parameters that are used to add a data disk to a virtual machine.
+ * 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).
*
- * {Promise} A promise is returned.
+ * @param {object} [parameters.additionalCapabilities] Specifies additional
+ * capabilities enabled or disabled on the virtual machine.
*
- * @resolve {Image} - The deserialized result object.
+ * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
+ * flag that enables or disables a capability to have one or more managed data
+ * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
+ * disks with storage account type UltraSSD_LRS can be added to a virtual
+ * machine or virtual machine scale set only if this property is enabled.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.osProfile] Specifies the operating system
+ * settings for the virtual machine.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.osProfile.computerName] Specifies the host OS
+ * name of the virtual machine.
**Max-length (Windows):** 15
+ * characters
**Max-length (Linux):** 64 characters.
For
+ * naming conventions and restrictions see [Azure infrastructure services
+ * implementation
+ * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
+ * the administrator account.
**Windows-only restriction:** Cannot end
+ * in "."
**Disallowed values:** "administrator", "admin", "user",
+ * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
+ * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
+ * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
+ * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
+ * (Linux):** 1 character
**Max-length (Linux):** 64 characters
+ *
**Max-length (Windows):** 20 characters
For root
+ * access to the Linux VM, see [Using root privileges on Linux virtual machines
+ * in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * For a list of built-in system users on Linux that should not be used in this
+ * field, see [Selecting User Names for Linux on
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {Image} [result] - The deserialized result object if an error did not occur.
- * See {@link Image} for more information.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- update(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- update(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, callback: ServiceCallback): void;
- update(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Deletes an Image.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} imageName The name of the image.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- deleteMethodWithHttpOperationResponse(resourceGroupName: string, imageName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Deletes an Image.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} imageName The name of the image.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {null} - The deserialized result object.
+ * @param {string} [parameters.osProfile.adminPassword] Specifies the password
+ * of the administrator account.
**Minimum-length (Windows):** 8
+ * characters
**Minimum-length (Linux):** 6 characters
+ * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
+ * characters
**Complexity requirements:** 3 out of 4 conditions below
+ * need to be fulfilled
Has lower characters
Has upper characters
+ * Has a digit
Has a special character (Regex match [\W_])
+ * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
+ * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
+ * "iloveyou!"
For resetting the password, see [How to reset the
+ * Remote Desktop service or its login password in a Windows
+ * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
For resetting root password, see [Manage users, SSH, and check or
+ * repair disks on Azure Linux VMs using the VMAccess
+ * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {string} [parameters.osProfile.customData] Specifies a base-64
+ * encoded string of custom data. The base-64 encoded string is decoded to a
+ * binary array that is saved as a file on the Virtual Machine. The maximum
+ * length of the binary array is 65535 bytes.
For using cloud-init for
+ * your VM, see [Using cloud-init to customize a Linux VM during
+ * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
+ * Windows operating system settings on the virtual machine.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
+ * whether virtual machine agent should be provisioned on the virtual machine.
+ *
When this property is not specified in the request body, default
+ * behavior is to set it to true. This will ensure that VM Agent is installed
+ * on the VM so that extensions can be added to the VM later.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
+ * whether virtual machine is enabled for automatic updates.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
+ * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- deleteMethod(resourceGroupName: string, imageName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- deleteMethod(resourceGroupName: string, imageName: string, callback: ServiceCallback): void;
- deleteMethod(resourceGroupName: string, imageName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Gets an image.
+ * @param {array}
+ * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
+ * Specifies additional base-64 encoded XML formatted information that can be
+ * included in the Unattend.xml file, which is used by Windows Setup.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
+ * the Windows Remote Management listeners. This enables remote Windows
+ * PowerShell.
*
- * @param {string} imageName The name of the image.
+ * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
+ * The list of Windows Remote Management listeners
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
+ * Linux operating system settings on the virtual machine.
For a list
+ * of supported Linux distributions, see [Linux on Azure-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ *
For running non-endorsed distributions, see [Information for
+ * Non-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
*
- * @param {string} [options.expand] The expand expression to apply on the
- * operation.
+ * @param {boolean}
+ * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
+ * Specifies whether password authentication should be disabled.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
+ * ssh key configuration for a Linux OS.
*
- * @returns {Promise} A promise is returned
+ * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
+ * list of SSH public keys used to authenticate with linux based VMs.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
+ * Indicates whether virtual machine agent should be provisioned on the virtual
+ * machine.
When this property is not specified in the request body,
+ * default behavior is to set it to true. This will ensure that VM Agent is
+ * installed on the VM so that extensions can be added to the VM later.
*
- * @reject {Error|ServiceError} - The error object.
- */
- getWithHttpOperationResponse(resourceGroupName: string, imageName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Gets an image.
+ * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
+ * that should be installed onto the virtual machine.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
+ * whether extension operations should be allowed on the virtual machine.
+ *
This may only be set to False when no extensions are present on the
+ * virtual machine.
*
- * @param {string} imageName The name of the image.
+ * @param {object} [parameters.networkProfile] Specifies the network interfaces
+ * of the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
+ * list of resource Ids for the network interfaces associated with the virtual
+ * machine.
*
- * @param {string} [options.expand] The expand expression to apply on the
- * operation.
+ * @param {object} [parameters.diagnosticsProfile] Specifies the boot
+ * diagnostic settings state.
Minimum api-version: 2015-06-15.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
+ * Diagnostics is a debugging feature which allows you to view Console Output
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
+ * screenshot of the VM from the hypervisor.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
+ * Whether boot diagnostics should be enabled on the Virtual Machine.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
+ * Uri of the storage account to use for placing the console output and
+ * screenshot.
*
- * {Promise} A promise is returned.
+ * @param {object} [parameters.availabilitySet] Specifies information about the
+ * availability set that the virtual machine should be assigned to. Virtual
+ * machines specified in the same availability set are allocated to different
+ * nodes to maximize availability. For more information about availability
+ * sets, see [Manage the availability of virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
For more information on Azure planned maintainance, see [Planned
+ * maintenance for virtual machines in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Currently, a VM can only be added to availability set at creation
+ * time. An existing VM cannot be added to an availability set.
*
- * @resolve {Image} - The deserialized result object.
+ * @param {string} [parameters.availabilitySet.id] Resource Id
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {string} [parameters.licenseType] Specifies that the image or disk
+ * that is being used was licensed on-premises. This element is only used for
+ * images that contain the Windows Server operating system.
Possible
+ * values are:
Windows_Client
Windows_Server
If this
+ * element is included in a request for an update, the value must match the
+ * initial value. This value cannot be updated.
For more information,
+ * see [Azure Hybrid Use Benefit for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Minimum api-version: 2015-06-15
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object} [parameters.identity] The identity of the virtual machine,
+ * if configured.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.identity.type] The type of identity used for the
+ * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
+ * implicitly created identity and a set of user assigned identities. The type
+ * 'None' will remove any identities from the virtual machine. Possible values
+ * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
+ * 'None'
*
- * {Image} [result] - The deserialized result object if an error did not occur.
- * See {@link Image} for more information.
+ * @param {object} [parameters.identity.userAssignedIdentities] The list of
+ * user identities associated with the Virtual Machine. The user identity
+ * dictionary key references will be ARM resource ids in the form:
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {array} [parameters.zones] The virtual machine zones.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- get(resourceGroupName: string, imageName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise;
- get(resourceGroupName: string, imageName: string, callback: ServiceCallback): void;
- get(resourceGroupName: string, imageName: string, options: { expand? : string, customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Gets the list of images under a resource group.
+ * @param {string} parameters.location Resource location
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
*
@@ -2823,252 +2818,419 @@ export interface Images {
*
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- listByResourceGroupWithHttpOperationResponse(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ createOrUpdateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * Gets the list of images under a resource group.
+ * The operation to create or update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} parameters Parameters supplied to the Create Virtual Machine
+ * operation.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * @resolve {ImageListResult} - The deserialized result object.
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
- * {ImageListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link ImageListResult} for more information.
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- listByResourceGroup(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- listByResourceGroup(resourceGroupName: string, callback: ServiceCallback): void;
- listByResourceGroup(resourceGroupName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Gets the list of Images in the subscription. Use nextLink property in the
- * response to get the next page of Images. Do this till nextLink is null to
- * fetch all the Images.
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * @returns {Promise} A promise is returned
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * @reject {Error|ServiceError} - The error object.
- */
- listWithHttpOperationResponse(options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Gets the list of Images in the subscription. Use nextLink property in the
- * response to get the next page of Images. Do this till nextLink is null to
- * fetch all the Images.
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * {Promise} A promise is returned.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @resolve {ImageListResult} - The deserialized result object.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * {ImageListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link ImageListResult} for more information.
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- list(options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- list(callback: ServiceCallback): void;
- list(options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Create or update an image.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
*
- * @param {string} imageName The name of the image.
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
- * @param {object} parameters Parameters supplied to the Create Image
- * operation.
+ * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
+ * caching requirements.
Possible values are:
**None**
+ *
**ReadOnly**
**ReadWrite**
Default: **None for
+ * Standard storage. ReadOnly for Premium storage**. Possible values include:
+ * 'None', 'ReadOnly', 'ReadWrite'
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
+ * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
+ * Specifies whether writeAccelerator should be enabled or disabled on the
+ * disk.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
*
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
+ * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
+ * the virtual machine should be created.
Possible values are:
+ * **Attach** \u2013 This value is used when you are using a specialized disk
+ * to create the virtual machine.
**FromImage** \u2013 This value is
+ * used when you are using an image to create the virtual machine. If you are
+ * using a platform image, you also use the imageReference element described
+ * above. If you are using a marketplace image, you also use the plan element
+ * previously described. Possible values include: 'FromImage', 'Empty',
+ * 'Attach'
*
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
+ * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
+ * size of an empty data disk in gigabytes. This element can be used to
+ * overwrite the size of the disk in a virtual machine image.
This
+ * value cannot be larger than 1023 GB
*
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
+ * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
+ * disk parameters.
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
+ * @param {string}
+ * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
+ * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
+ * be used with data disks, it cannot be used with OS Disk. Possible values
+ * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
*
* @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
* Id
*
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
- *
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
- *
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
- *
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
- *
* @param {array} [parameters.storageProfile.dataDisks] Specifies the
* parameters that are used to add a data disk to a virtual machine.
* 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).
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
- *
- * @param {string} parameters.location Resource location
- *
- * @param {object} [parameters.tags] Resource tags
+ * @param {object} [parameters.additionalCapabilities] Specifies additional
+ * capabilities enabled or disabled on the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
+ * flag that enables or disables a capability to have one or more managed data
+ * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
+ * disks with storage account type UltraSSD_LRS can be added to a virtual
+ * machine or virtual machine scale set only if this property is enabled.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.osProfile] Specifies the operating system
+ * settings for the virtual machine.
*
- * @returns {Promise} A promise is returned
+ * @param {string} [parameters.osProfile.computerName] Specifies the host OS
+ * name of the virtual machine.
**Max-length (Windows):** 15
+ * characters
**Max-length (Linux):** 64 characters.
For
+ * naming conventions and restrictions see [Azure infrastructure services
+ * implementation
+ * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
+ * the administrator account.
**Windows-only restriction:** Cannot end
+ * in "."
**Disallowed values:** "administrator", "admin", "user",
+ * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
+ * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
+ * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
+ * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
+ * (Linux):** 1 character
**Max-length (Linux):** 64 characters
+ *
**Max-length (Windows):** 20 characters
For root
+ * access to the Linux VM, see [Using root privileges on Linux virtual machines
+ * in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * For a list of built-in system users on Linux that should not be used in this
+ * field, see [Selecting User Names for Linux on
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * @reject {Error|ServiceError} - The error object.
- */
- beginCreateOrUpdateWithHttpOperationResponse(resourceGroupName: string, imageName: string, parameters: models.Image, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Create or update an image.
+ * @param {string} [parameters.osProfile.adminPassword] Specifies the password
+ * of the administrator account.
**Minimum-length (Windows):** 8
+ * characters
**Minimum-length (Linux):** 6 characters
+ * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
+ * characters
**Complexity requirements:** 3 out of 4 conditions below
+ * need to be fulfilled
Has lower characters
Has upper characters
+ * Has a digit
Has a special character (Regex match [\W_])
+ * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
+ * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
+ * "iloveyou!"
For resetting the password, see [How to reset the
+ * Remote Desktop service or its login password in a Windows
+ * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
For resetting root password, see [Manage users, SSH, and check or
+ * repair disks on Azure Linux VMs using the VMAccess
+ * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.osProfile.customData] Specifies a base-64
+ * encoded string of custom data. The base-64 encoded string is decoded to a
+ * binary array that is saved as a file on the Virtual Machine. The maximum
+ * length of the binary array is 65535 bytes.
For using cloud-init for
+ * your VM, see [Using cloud-init to customize a Linux VM during
+ * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * @param {string} imageName The name of the image.
+ * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
+ * Windows operating system settings on the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Create Image
- * operation.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
+ * whether virtual machine agent should be provisioned on the virtual machine.
+ *
When this property is not specified in the request body, default
+ * behavior is to set it to true. This will ensure that VM Agent is installed
+ * on the VM so that extensions can be added to the VM later.
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
+ * whether virtual machine is enabled for automatic updates.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
+ * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * @param {array}
+ * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
+ * Specifies additional base-64 encoded XML formatted information that can be
+ * included in the Unattend.xml file, which is used by Windows Setup.
*
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
+ * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
+ * the Windows Remote Management listeners. This enables remote Windows
+ * PowerShell.
*
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
+ * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
+ * The list of Windows Remote Management listeners
*
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
+ * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
+ * Linux operating system settings on the virtual machine.
For a list
+ * of supported Linux distributions, see [Linux on Azure-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ *
For running non-endorsed distributions, see [Information for
+ * Non-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
+ * @param {boolean}
+ * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
+ * Specifies whether password authentication should be disabled.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
+ * ssh key configuration for a Linux OS.
*
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
+ * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
+ * list of SSH public keys used to authenticate with linux based VMs.
*
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
+ * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
+ * Indicates whether virtual machine agent should be provisioned on the virtual
+ * machine.
When this property is not specified in the request body,
+ * default behavior is to set it to true. This will ensure that VM Agent is
+ * installed on the VM so that extensions can be added to the VM later.
*
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
+ * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
+ * that should be installed onto the virtual machine.
*
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
+ * whether extension operations should be allowed on the virtual machine.
+ *
This may only be set to False when no extensions are present on the
+ * virtual machine.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {object} [parameters.networkProfile] Specifies the network interfaces
+ * of the virtual machine.
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
+ * list of resource Ids for the network interfaces associated with the virtual
+ * machine.
+ *
+ * @param {object} [parameters.diagnosticsProfile] Specifies the boot
+ * diagnostic settings state.
Minimum api-version: 2015-06-15.
+ *
+ * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
+ * Diagnostics is a debugging feature which allows you to view Console Output
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
+ * screenshot of the VM from the hypervisor.
+ *
+ * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
+ * Whether boot diagnostics should be enabled on the Virtual Machine.
+ *
+ * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
+ * Uri of the storage account to use for placing the console output and
+ * screenshot.
+ *
+ * @param {object} [parameters.availabilitySet] Specifies information about the
+ * availability set that the virtual machine should be assigned to. Virtual
+ * machines specified in the same availability set are allocated to different
+ * nodes to maximize availability. For more information about availability
+ * sets, see [Manage the availability of virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
For more information on Azure planned maintainance, see [Planned
+ * maintenance for virtual machines in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Currently, a VM can only be added to availability set at creation
+ * time. An existing VM cannot be added to an availability set.
+ *
+ * @param {string} [parameters.availabilitySet.id] Resource Id
+ *
+ * @param {string} [parameters.licenseType] Specifies that the image or disk
+ * that is being used was licensed on-premises. This element is only used for
+ * images that contain the Windows Server operating system.
Possible
+ * values are:
Windows_Client
Windows_Server
If this
+ * element is included in a request for an update, the value must match the
+ * initial value. This value cannot be updated.
For more information,
+ * see [Azure Hybrid Use Benefit for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Minimum api-version: 2015-06-15
+ *
+ * @param {object} [parameters.identity] The identity of the virtual machine,
+ * if configured.
+ *
+ * @param {string} [parameters.identity.type] The type of identity used for the
+ * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
+ * implicitly created identity and a set of user assigned identities. The type
+ * 'None' will remove any identities from the virtual machine. Possible values
+ * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
+ * 'None'
+ *
+ * @param {object} [parameters.identity.userAssignedIdentities] The list of
+ * user identities associated with the Virtual Machine. The user identity
+ * dictionary key references will be ARM resource ids in the form:
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+ *
+ * @param {array} [parameters.zones] The virtual machine zones.
*
* @param {string} parameters.location Resource location
*
@@ -3086,7 +3248,7 @@ export interface Images {
*
* {Promise} A promise is returned.
*
- * @resolve {Image} - The deserialized result object.
+ * @resolve {VirtualMachine} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*
@@ -3094,138 +3256,191 @@ export interface Images {
*
* {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * {Image} [result] - The deserialized result object if an error did not occur.
- * See {@link Image} for more information.
+ * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachine} for more information.
*
* {WebResource} [request] - The HTTP Request object if an error did not occur.
*
* {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- beginCreateOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- beginCreateOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, callback: ServiceCallback): void;
- beginCreateOrUpdate(resourceGroupName: string, imageName: string, parameters: models.Image, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, callback: ServiceCallback): void;
+ createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
/**
- * Update an image.
+ * The operation to update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} imageName The name of the image.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Update Image
+ * @param {object} parameters Parameters supplied to the Update Virtual Machine
* operation.
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
- *
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
- *
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
- *
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
- *
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
- * @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * @returns {Promise} A promise is returned
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @reject {Error|ServiceError} - The error object.
- */
- beginUpdateWithHttpOperationResponse(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Update an image.
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * @param {string} imageName The name of the image.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * @param {object} parameters Parameters supplied to the Update Image
- * operation.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @param {object} [parameters.sourceVirtualMachine] The source virtual machine
- * from which Image is created.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * @param {string} parameters.storageProfile.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.
Possible values are:
**Windows**
- *
**Linux**. Possible values include: 'Windows', 'Linux'
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * @param {string} parameters.storageProfile.osDisk.osState The OS State.
- * Possible values include: 'Generalized', 'Specialized'
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * @param {object} [parameters.storageProfile.osDisk.snapshot] The snapshot.
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The
- * managedDisk.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
*
- * @param {string} [parameters.storageProfile.osDisk.blobUri] The Virtual Hard
- * Disk.
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
* @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
* caching requirements.
Possible values are:
**None**
@@ -3233,15 +3448,44 @@ export interface Images {
* Standard storage. ReadOnly for Premium storage**. Possible values include:
* 'None', 'ReadOnly', 'ReadWrite'
*
+ * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
+ * Specifies whether writeAccelerator should be enabled or disabled on the
+ * disk.
+ *
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
+ *
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
+ *
+ * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
+ * the virtual machine should be created.
Possible values are:
+ * **Attach** \u2013 This value is used when you are using a specialized disk
+ * to create the virtual machine.
**FromImage** \u2013 This value is
+ * used when you are using an image to create the virtual machine. If you are
+ * using a platform image, you also use the imageReference element described
+ * above. If you are using a marketplace image, you also use the plan element
+ * previously described. Possible values include: 'FromImage', 'Empty',
+ * 'Attach'
+ *
* @param {number} [parameters.storageProfile.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.
This value cannot
- * be larger than 1023 GB
+ * size of an empty data disk in gigabytes. This element can be used to
+ * overwrite the size of the disk in a virtual machine image.
This
+ * value cannot be larger than 1023 GB
*
- * @param {string} [parameters.storageProfile.osDisk.storageAccountType]
- * Specifies the storage account type for the managed disk. UltraSSD_LRS cannot
- * be used with OS Disk. Possible values include: 'Standard_LRS',
- * 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
+ * disk parameters.
+ *
+ * @param {string}
+ * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
+ * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
+ * be used with data disks, it cannot be used with OS Disk. Possible values
+ * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ *
+ * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
+ * Id
*
* @param {array} [parameters.storageProfile.dataDisks] Specifies the
* parameters that are used to add a data disk to a virtual machine.
@@ -3249,107 +3493,190 @@ export interface Images {
* virtual
* machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
*
- * @param {boolean} [parameters.storageProfile.zoneResilient] Specifies whether
- * an image is zone resilient or not. Default is false. Zone resilient images
- * can be created only in regions that provide Zone Redundant Storage (ZRS).
- *
- * @param {object} [parameters.tags] Resource tags
+ * @param {object} [parameters.additionalCapabilities] Specifies additional
+ * capabilities enabled or disabled on the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
+ * flag that enables or disables a capability to have one or more managed data
+ * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
+ * disks with storage account type UltraSSD_LRS can be added to a virtual
+ * machine or virtual machine scale set only if this property is enabled.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.osProfile] Specifies the operating system
+ * settings for the virtual machine.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} [parameters.osProfile.computerName] Specifies the host OS
+ * name of the virtual machine.
**Max-length (Windows):** 15
+ * characters
**Max-length (Linux):** 64 characters.
For
+ * naming conventions and restrictions see [Azure infrastructure services
+ * implementation
+ * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
+ * the administrator account.
**Windows-only restriction:** Cannot end
+ * in "."
**Disallowed values:** "administrator", "admin", "user",
+ * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
+ * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
+ * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
+ * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
+ * (Linux):** 1 character
**Max-length (Linux):** 64 characters
+ *
**Max-length (Windows):** 20 characters
For root
+ * access to the Linux VM, see [Using root privileges on Linux virtual machines
+ * in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * For a list of built-in system users on Linux that should not be used in this
+ * field, see [Selecting User Names for Linux on
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.osProfile.adminPassword] Specifies the password
+ * of the administrator account.
**Minimum-length (Windows):** 8
+ * characters
**Minimum-length (Linux):** 6 characters
+ * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
+ * characters
**Complexity requirements:** 3 out of 4 conditions below
+ * need to be fulfilled
Has lower characters
Has upper characters
+ * Has a digit
Has a special character (Regex match [\W_])
+ * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
+ * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
+ * "iloveyou!"
For resetting the password, see [How to reset the
+ * Remote Desktop service or its login password in a Windows
+ * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
For resetting root password, see [Manage users, SSH, and check or
+ * repair disks on Azure Linux VMs using the VMAccess
+ * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
*
- * @resolve {Image} - The deserialized result object.
+ * @param {string} [parameters.osProfile.customData] Specifies a base-64
+ * encoded string of custom data. The base-64 encoded string is decoded to a
+ * binary array that is saved as a file on the Virtual Machine. The maximum
+ * length of the binary array is 65535 bytes.
For using cloud-init for
+ * your VM, see [Using cloud-init to customize a Linux VM during
+ * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
+ * Windows operating system settings on the virtual machine.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
+ * whether virtual machine agent should be provisioned on the virtual machine.
+ *
When this property is not specified in the request body, default
+ * behavior is to set it to true. This will ensure that VM Agent is installed
+ * on the VM so that extensions can be added to the VM later.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
+ * whether virtual machine is enabled for automatic updates.
*
- * {Image} [result] - The deserialized result object if an error did not occur.
- * See {@link Image} for more information.
+ * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
+ * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {array}
+ * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
+ * Specifies additional base-64 encoded XML formatted information that can be
+ * included in the Unattend.xml file, which is used by Windows Setup.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- beginUpdate(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- beginUpdate(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, callback: ServiceCallback): void;
- beginUpdate(resourceGroupName: string, imageName: string, parameters: models.ImageUpdate, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Deletes an Image.
+ * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
+ * the Windows Remote Management listeners. This enables remote Windows
+ * PowerShell.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
+ * The list of Windows Remote Management listeners
*
- * @param {string} imageName The name of the image.
+ * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
+ * Linux operating system settings on the virtual machine.
For a list
+ * of supported Linux distributions, see [Linux on Azure-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ *
For running non-endorsed distributions, see [Information for
+ * Non-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
*
- * @param {object} [options] Optional Parameters.
+ * @param {boolean}
+ * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
+ * Specifies whether password authentication should be disabled.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
+ * ssh key configuration for a Linux OS.
*
- * @returns {Promise} A promise is returned
+ * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
+ * list of SSH public keys used to authenticate with linux based VMs.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
+ * Indicates whether virtual machine agent should be provisioned on the virtual
+ * machine.
When this property is not specified in the request body,
+ * default behavior is to set it to true. This will ensure that VM Agent is
+ * installed on the VM so that extensions can be added to the VM later.
*
- * @reject {Error|ServiceError} - The error object.
- */
- beginDeleteMethodWithHttpOperationResponse(resourceGroupName: string, imageName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Deletes an Image.
+ * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
+ * that should be installed onto the virtual machine.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
+ * whether extension operations should be allowed on the virtual machine.
+ *
This may only be set to False when no extensions are present on the
+ * virtual machine.
*
- * @param {string} imageName The name of the image.
+ * @param {object} [parameters.networkProfile] Specifies the network interfaces
+ * of the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
+ * list of resource Ids for the network interfaces associated with the virtual
+ * machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.diagnosticsProfile] Specifies the boot
+ * diagnostic settings state.
Minimum api-version: 2015-06-15.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
+ * Diagnostics is a debugging feature which allows you to view Console Output
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
+ * screenshot of the VM from the hypervisor.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
+ * Whether boot diagnostics should be enabled on the Virtual Machine.
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
+ * Uri of the storage account to use for placing the console output and
+ * screenshot.
*
- * @resolve {null} - The deserialized result object.
+ * @param {object} [parameters.availabilitySet] Specifies information about the
+ * availability set that the virtual machine should be assigned to. Virtual
+ * machines specified in the same availability set are allocated to different
+ * nodes to maximize availability. For more information about availability
+ * sets, see [Manage the availability of virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
For more information on Azure planned maintainance, see [Planned
+ * maintenance for virtual machines in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Currently, a VM can only be added to availability set at creation
+ * time. An existing VM cannot be added to an availability set.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {string} [parameters.availabilitySet.id] Resource Id
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.licenseType] Specifies that the image or disk
+ * that is being used was licensed on-premises. This element is only used for
+ * images that contain the Windows Server operating system.
Possible
+ * values are:
Windows_Client
Windows_Server
If this
+ * element is included in a request for an update, the value must match the
+ * initial value. This value cannot be updated.
For more information,
+ * see [Azure Hybrid Use Benefit for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Minimum api-version: 2015-06-15
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {object} [parameters.identity] The identity of the virtual machine,
+ * if configured.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {string} [parameters.identity.type] The type of identity used for the
+ * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
+ * implicitly created identity and a set of user assigned identities. The type
+ * 'None' will remove any identities from the virtual machine. Possible values
+ * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
+ * 'None'
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {object} [parameters.identity.userAssignedIdentities] The list of
+ * user identities associated with the Virtual Machine. The user identity
+ * dictionary key references will be ARM resource ids in the form:
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- beginDeleteMethod(resourceGroupName: string, imageName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- beginDeleteMethod(resourceGroupName: string, imageName: string, callback: ServiceCallback): void;
- beginDeleteMethod(resourceGroupName: string, imageName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Gets the list of images under a resource group.
+ * @param {array} [parameters.zones] The virtual machine zones.
*
- * @param {string} nextPageLink The NextLink from the previous successful call
- * to List operation.
+ * @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
*
@@ -3358,236 +3685,42 @@ export interface Images {
*
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- listByResourceGroupNextWithHttpOperationResponse(nextPageLink: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ updateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * Gets the list of images under a resource group.
- *
- * @param {string} nextPageLink The NextLink from the previous successful call
- * to List operation.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {ImageListResult} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
+ * The operation to update a virtual machine.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} resourceGroupName The name of the resource group.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} vmName The name of the virtual machine.
*
- * {ImageListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link ImageListResult} for more information.
+ * @param {object} parameters Parameters supplied to the Update Virtual Machine
+ * operation.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- listByResourceGroupNext(nextPageLink: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- listByResourceGroupNext(nextPageLink: string, callback: ServiceCallback): void;
- listByResourceGroupNext(nextPageLink: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Gets the list of Images in the subscription. Use nextLink property in the
- * response to get the next page of Images. Do this till nextLink is null to
- * fetch all the Images.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * @param {string} nextPageLink The NextLink from the previous successful call
- * to List operation.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- listNextWithHttpOperationResponse(nextPageLink: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Gets the list of Images in the subscription. Use nextLink property in the
- * response to get the next page of Images. Do this till nextLink is null to
- * fetch all the Images.
- *
- * @param {string} nextPageLink The NextLink from the previous successful call
- * to List operation.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {ImageListResult} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
- *
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
- *
- * {ImageListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link ImageListResult} for more information.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- listNext(nextPageLink: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- listNext(nextPageLink: string, callback: ServiceCallback): void;
- listNext(nextPageLink: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-}
-
-/**
- * @class
- * VirtualMachines
- * __NOTE__: An instance of this class is automatically created for an
- * instance of the ComputeManagementClient.
- */
-export interface VirtualMachines {
-
-
- /**
- * Captures the VM by copying virtual hard disks of the VM and outputs a
- * template that can be used to create similar VMs.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} parameters Parameters supplied to the Capture Virtual
- * Machine operation.
- *
- * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
- * prefix.
- *
- * @param {string} parameters.destinationContainerName The destination
- * container name.
- *
- * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
- * destination virtual hard disk, in case of conflict.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- captureWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Captures the VM by copying virtual hard disks of the VM and outputs a
- * template that can be used to create similar VMs.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} parameters Parameters supplied to the Capture Virtual
- * Machine operation.
- *
- * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
- * prefix.
- *
- * @param {string} parameters.destinationContainerName The destination
- * container name.
- *
- * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
- * destination virtual hard disk, in case of conflict.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {VirtualMachineCaptureResult} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
- *
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
- *
- * {VirtualMachineCaptureResult} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineCaptureResult} for more
- * information.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, callback: ServiceCallback): void;
- capture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to create or update a virtual machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} parameters Parameters supplied to the Create Virtual Machine
- * operation.
- *
- * @param {object} [parameters.plan] Specifies information about the
- * marketplace image used to create the virtual machine. This element is only
- * used for marketplace images. Before you can use a marketplace image from an
- * API, you must enable the image for programmatic use. In the Azure portal,
- * find the marketplace image that you want to use and then click **Want to
- * deploy programmatically, Get Started ->**. Enter any required information
- * and then click **Save**.
- *
- * @param {string} [parameters.plan.name] The plan ID.
- *
- * @param {string} [parameters.plan.publisher] The publisher ID.
- *
- * @param {string} [parameters.plan.product] Specifies the product of the image
- * from the marketplace. This is the same value as Offer under the
- * imageReference element.
- *
- * @param {string} [parameters.plan.promotionCode] The promotion code.
- *
- * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
- * for the virtual machine.
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
* @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
* the virtual machine. For more information about virtual machine sizes, see
@@ -3742,6 +3875,14 @@ export interface VirtualMachines {
* Specifies whether writeAccelerator should be enabled or disabled on the
* disk.
*
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
+ *
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
+ *
* @param {string} parameters.storageProfile.osDisk.createOption Specifies how
* the virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -3906,9 +4047,8 @@ export interface VirtualMachines {
*
* @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
* Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
*
* @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
@@ -3959,8 +4099,6 @@ export interface VirtualMachines {
*
* @param {array} [parameters.zones] The virtual machine zones.
*
- * @param {string} parameters.location Resource location
- *
* @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
@@ -3968,418 +4106,716 @@ export interface VirtualMachines {
* @param {object} [options.customHeaders] Headers that will be added to the
* request
*
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachine} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachine} for more information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, callback: ServiceCallback): void;
+ update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * The operation to delete a virtual machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- createOrUpdateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ deleteMethodWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * The operation to create or update a virtual machine.
+ * The operation to delete a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {string} vmName The name of the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Create Virtual Machine
- * operation.
+ * @param {object} [options] Optional Parameters.
*
- * @param {object} [parameters.plan] Specifies information about the
- * marketplace image used to create the virtual machine. This element is only
- * used for marketplace images. Before you can use a marketplace image from an
- * API, you must enable the image for programmatic use. In the Azure portal,
- * find the marketplace image that you want to use and then click **Want to
- * deploy programmatically, Get Started ->**. Enter any required information
- * and then click **Save**.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string} [parameters.plan.name] The plan ID.
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {string} [parameters.plan.publisher] The publisher ID.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {string} [parameters.plan.product] Specifies the product of the image
- * from the marketplace. This is the same value as Offer under the
- * imageReference element.
+ * {Promise} A promise is returned.
*
- * @param {string} [parameters.plan.promotionCode] The promotion code.
+ * @resolve {null} - The deserialized result object.
*
- * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
- * for the virtual machine.
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
- * the virtual machine. For more information about virtual machine sizes, see
- * [Sizes for virtual
- * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
- *
The available VM sizes depend on region and availability set. For a
- * list of available sizes use these APIs:
[List all available
- * virtual machine sizes in an availability
- * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
- *
[List all available virtual machine sizes in a
- * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
- *
[List all available virtual machine sizes for
- * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
- * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
- * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
- * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
- * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
- * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
- * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
- * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
- * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
- * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
- * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
- * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
- * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
- * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
- * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
- * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
- * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
- * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
- * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
- * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
- * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
- * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
- * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
- * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
- * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
- * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
- * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
- * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
- * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
- * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
- * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
- * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
- * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
- * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
- * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
- * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
- * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
- * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
- * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
- * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
- * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
- * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
- * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
- * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
- * 'Standard_NV12', 'Standard_NV24'
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {null} [result] - The deserialized result object if an error did not occur.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ deleteMethod(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ deleteMethod(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ deleteMethod(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Retrieves information about the model view or the instance view of a virtual
+ * machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {string} [options.expand] The expand expression to apply on the
+ * operation. Possible values include: 'instanceView'
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ getWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Retrieves information about the model view or the instance view of a virtual
+ * machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {string} [options.expand] The expand expression to apply on the
+ * operation. Possible values include: 'instanceView'
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachine} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachine} for more information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ get(resourceGroupName: string, vmName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise;
+ get(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ get(resourceGroupName: string, vmName: string, options: { expand? : string, customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Retrieves information about the run-time state of a virtual machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ instanceViewWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Retrieves information about the run-time state of a virtual machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachineInstanceView} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachineInstanceView} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineInstanceView} for more
+ * information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ instanceView(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ instanceView(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ instanceView(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Converts virtual machine disks from blob-based to managed disks. Virtual
+ * machine must be stop-deallocated before invoking this operation.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ convertToManagedDisksWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Converts virtual machine disks from blob-based to managed disks. Virtual
+ * machine must be stop-deallocated before invoking this operation.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {null} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {null} [result] - The deserialized result object if an error did not occur.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ convertToManagedDisks(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ convertToManagedDisks(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ convertToManagedDisks(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Shuts down the virtual machine and releases the compute resources. You are
+ * not billed for the compute resources that this virtual machine uses.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ deallocateWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Shuts down the virtual machine and releases the compute resources. You are
+ * not billed for the compute resources that this virtual machine uses.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {null} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {null} [result] - The deserialized result object if an error did not occur.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ deallocate(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ deallocate(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ deallocate(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Sets the state of the virtual machine to generalized.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ generalizeWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Sets the state of the virtual machine to generalized.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * {Promise} A promise is returned.
*
- * @param {object} [parameters.storageProfile.imageReference] Specifies
- * information about the image to use. You can specify information about
- * platform images, marketplace images, or virtual machine images. This element
- * is required when you want to use a platform image, marketplace image, or
- * virtual machine image, but is not used in other creation operations.
+ * @resolve {null} - The deserialized result object.
*
- * @param {string} [parameters.storageProfile.imageReference.publisher] The
- * image publisher.
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
- * the offer of the platform image or marketplace image used to create the
- * virtual machine.
+ * {ServiceCallback} optionalCallback(err, result, request, response)
*
- * @param {string} [parameters.storageProfile.imageReference.sku] The image
- * SKU.
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * @param {string} [parameters.storageProfile.imageReference.version] Specifies
- * the version of the platform image or marketplace image used to create the
- * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
- * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
- * latest version of an image available at deploy time. Even if you use
- * 'latest', the VM image will not automatically update after deploy time even
- * if a new version becomes available.
+ * {null} [result] - The deserialized result object if an error did not occur.
*
- * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ generalize(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ generalize(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ generalize(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Lists all of the virtual machines in the specified resource group. Use the
+ * nextLink property in the response to get the next page of virtual machines.
*
- * @param {string} [parameters.storageProfile.osDisk.osType] This property
- * allows you to specify the type of the OS that is included in the disk if
- * creating a VM from user-image or a specialized VHD.
Possible values
- * are:
**Windows**
**Linux**. Possible values include:
- * 'Windows', 'Linux'
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
- * Specifies the encryption settings for the OS Disk.
Minimum
- * api-version: 2015-06-15
+ * @param {object} [options] Optional Parameters.
*
- * @param {object}
- * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
- * Specifies the location of the disk encryption key, which is a Key Vault
- * Secret.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string}
- * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
- * The URL referencing a secret in a Key Vault.
+ * @returns {Promise} A promise is returned
*
- * @param {object}
- * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
- * The relative URL of the Key Vault containing the secret.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {object}
- * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
- * Specifies the location of the key encryption key in Key Vault.
+ * @reject {Error|ServiceError} - The error object.
+ */
+ listWithHttpOperationResponse(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Lists all of the virtual machines in the specified resource group. Use the
+ * nextLink property in the response to get the next page of virtual machines.
*
- * @param {string}
- * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
- * The URL referencing a key encryption key in Key Vault.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object}
- * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
- * The relative URL of the Key Vault containing the key.
+ * @param {object} [options] Optional Parameters.
*
- * @param {boolean}
- * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
- * whether disk encryption should be enabled on the virtual machine.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
- * disk.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {object} [parameters.storageProfile.osDisk.image] The source user
- * image virtual hard disk. The virtual hard disk will be copied before being
- * attached to the virtual machine. If SourceImage is provided, the destination
- * virtual hard drive must not exist.
+ * {Promise} A promise is returned.
*
- * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
- * virtual hard disk's uri.
+ * @resolve {VirtualMachineListResult} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachineListResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineListResult} for more
+ * information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ list(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ list(resourceGroupName: string, callback: ServiceCallback): void;
+ list(resourceGroupName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Lists all of the virtual machines in the specified subscription. Use the
+ * nextLink property in the response to get the next page of virtual machines.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ listAllWithHttpOperationResponse(options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Lists all of the virtual machines in the specified subscription. Use the
+ * nextLink property in the response to get the next page of virtual machines.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachineListResult} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachineListResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineListResult} for more
+ * information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ listAll(options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ listAll(callback: ServiceCallback): void;
+ listAll(options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Lists all available virtual machine sizes to which the specified virtual
+ * machine can be resized.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ */
+ listAvailableSizesWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Lists all available virtual machine sizes to which the specified virtual
+ * machine can be resized.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachineSizeListResult} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachineSizeListResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineSizeListResult} for more
+ * information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ listAvailableSizes(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ listAvailableSizes(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ listAvailableSizes(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * The operation to power off (stop) a virtual machine. The virtual machine can
+ * be restarted with the same provisioned resources. You are still charged for
+ * this virtual machine.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
+ *
+ * @param {object} [options] Optional Parameters.
+ *
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @returns {Promise} A promise is returned
+ *
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
+ * @reject {Error|ServiceError} - The error object.
+ */
+ powerOffWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * The operation to power off (stop) a virtual machine. The virtual machine can
+ * be restarted with the same provisioned resources. You are still charged for
+ * this virtual machine.
*
- * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
- * Specifies whether writeAccelerator should be enabled or disabled on the
- * disk.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
- * the virtual machine should be created.
Possible values are:
- * **Attach** \u2013 This value is used when you are using a specialized disk
- * to create the virtual machine.
**FromImage** \u2013 This value is
- * used when you are using an image to create the virtual machine. If you are
- * using a platform image, you also use the imageReference element described
- * above. If you are using a marketplace image, you also use the plan element
- * previously described. Possible values include: 'FromImage', 'Empty',
- * 'Attach'
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
- * size of an empty data disk in gigabytes. This element can be used to
- * overwrite the size of the disk in a virtual machine image.
This
- * value cannot be larger than 1023 GB
+ * @param {object} [options] Optional Parameters.
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
- * disk parameters.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string}
- * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
- * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
- * be used with data disks, it cannot be used with OS Disk. Possible values
- * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * {Promise} A promise is returned.
*
- * @param {object} [parameters.additionalCapabilities] Specifies additional
- * capabilities enabled or disabled on the virtual machine.
+ * @resolve {null} - The deserialized result object.
*
- * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
- * flag that enables or disables a capability to have one or more managed data
- * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
- * disks with storage account type UltraSSD_LRS can be added to a virtual
- * machine or virtual machine scale set only if this property is enabled.
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {object} [parameters.osProfile] Specifies the operating system
- * settings for the virtual machine.
+ * {ServiceCallback} optionalCallback(err, result, request, response)
*
- * @param {string} [parameters.osProfile.computerName] Specifies the host OS
- * name of the virtual machine.
**Max-length (Windows):** 15
- * characters
**Max-length (Linux):** 64 characters.
For
- * naming conventions and restrictions see [Azure infrastructure services
- * implementation
- * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
- * the administrator account.
**Windows-only restriction:** Cannot end
- * in "."
**Disallowed values:** "administrator", "admin", "user",
- * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
- * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
- * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
- * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
- * (Linux):** 1 character
**Max-length (Linux):** 64 characters
- *
**Max-length (Windows):** 20 characters
For root
- * access to the Linux VM, see [Using root privileges on Linux virtual machines
- * in
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
- * For a list of built-in system users on Linux that should not be used in this
- * field, see [Selecting User Names for Linux on
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * {null} [result] - The deserialized result object if an error did not occur.
*
- * @param {string} [parameters.osProfile.adminPassword] Specifies the password
- * of the administrator account.
**Minimum-length (Windows):** 8
- * characters
**Minimum-length (Linux):** 6 characters
- * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
- * characters
**Complexity requirements:** 3 out of 4 conditions below
- * need to be fulfilled
Has lower characters
Has upper characters
- * Has a digit
Has a special character (Regex match [\W_])
- * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
- * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
- * "iloveyou!"
For resetting the password, see [How to reset the
- * Remote Desktop service or its login password in a Windows
- * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
For resetting root password, see [Manage users, SSH, and check or
- * repair disks on Azure Linux VMs using the VMAccess
- * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
*
- * @param {string} [parameters.osProfile.customData] Specifies a base-64
- * encoded string of custom data. The base-64 encoded string is decoded to a
- * binary array that is saved as a file on the Virtual Machine. The maximum
- * length of the binary array is 65535 bytes.
For using cloud-init for
- * your VM, see [Using cloud-init to customize a Linux VM during
- * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ powerOff(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ powerOff(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ powerOff(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * The operation to restart a virtual machine.
*
- * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
- * Windows operating system settings on the virtual machine.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {boolean}
- * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
- * whether virtual machine agent should be provisioned on the virtual machine.
- *
When this property is not specified in the request body, default
- * behavior is to set it to true. This will ensure that VM Agent is installed
- * on the VM so that extensions can be added to the VM later.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {boolean}
- * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
- * whether virtual machine is enabled for automatic updates.
+ * @param {object} [options] Optional Parameters.
*
- * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
- * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {array}
- * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
- * Specifies additional base-64 encoded XML formatted information that can be
- * included in the Unattend.xml file, which is used by Windows Setup.
+ * @returns {Promise} A promise is returned
*
- * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
- * the Windows Remote Management listeners. This enables remote Windows
- * PowerShell.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
- * The list of Windows Remote Management listeners
+ * @reject {Error|ServiceError} - The error object.
+ */
+ restartWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * The operation to restart a virtual machine.
*
- * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
- * Linux operating system settings on the virtual machine.
For a list
- * of supported Linux distributions, see [Linux on Azure-Endorsed
- * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
- *
For running non-endorsed distributions, see [Information for
- * Non-Endorsed
- * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {boolean}
- * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
- * Specifies whether password authentication should be disabled.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
- * ssh key configuration for a Linux OS.
+ * @param {object} [options] Optional Parameters.
*
- * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
- * list of SSH public keys used to authenticate with linux based VMs.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
- * Indicates whether virtual machine agent should be provisioned on the virtual
- * machine.
When this property is not specified in the request body,
- * default behavior is to set it to true. This will ensure that VM Agent is
- * installed on the VM so that extensions can be added to the VM later.
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
- * that should be installed onto the virtual machine.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
- * whether extension operations should be allowed on the virtual machine.
- *
This may only be set to False when no extensions are present on the
- * virtual machine.
+ * {Promise} A promise is returned.
*
- * @param {object} [parameters.networkProfile] Specifies the network interfaces
- * of the virtual machine.
+ * @resolve {null} - The deserialized result object.
*
- * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
- * list of resource Ids for the network interfaces associated with the virtual
- * machine.
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {object} [parameters.diagnosticsProfile] Specifies the boot
- * diagnostic settings state.
Minimum api-version: 2015-06-15.
+ * {ServiceCallback} optionalCallback(err, result, request, response)
*
- * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
- * Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
- * screenshot of the VM from the hypervisor.
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
- * Whether boot diagnostics should be enabled on the Virtual Machine.
+ * {null} [result] - The deserialized result object if an error did not occur.
*
- * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
- * Uri of the storage account to use for placing the console output and
- * screenshot.
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
*
- * @param {object} [parameters.availabilitySet] Specifies information about the
- * availability set that the virtual machine should be assigned to. Virtual
- * machines specified in the same availability set are allocated to different
- * nodes to maximize availability. For more information about availability
- * sets, see [Manage the availability of virtual
- * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
- *
For more information on Azure planned maintainance, see [Planned
- * maintenance for virtual machines in
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
Currently, a VM can only be added to availability set at creation
- * time. An existing VM cannot be added to an availability set.
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ restart(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ restart(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ restart(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * The operation to start a virtual machine.
*
- * @param {string} [parameters.availabilitySet.id] Resource Id
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} [parameters.licenseType] Specifies that the image or disk
- * that is being used was licensed on-premises. This element is only used for
- * images that contain the Windows Server operating system.
Possible
- * values are:
Windows_Client
Windows_Server
If this
- * element is included in a request for an update, the value must match the
- * initial value. This value cannot be updated.
For more information,
- * see [Azure Hybrid Use Benefit for Windows
- * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
Minimum api-version: 2015-06-15
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object} [parameters.identity] The identity of the virtual machine,
- * if configured.
+ * @param {object} [options] Optional Parameters.
*
- * @param {string} [parameters.identity.type] The type of identity used for the
- * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
- * implicitly created identity and a set of user assigned identities. The type
- * 'None' will remove any identities from the virtual machine. Possible values
- * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
- * 'None'
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {object} [parameters.identity.userAssignedIdentities] The list of
- * user identities associated with the Virtual Machine. The user identity
- * dictionary key references will be ARM resource ids in the form:
- * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+ * @returns {Promise} A promise is returned
*
- * @param {array} [parameters.zones] The virtual machine zones.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {string} parameters.location Resource location
+ * @reject {Error|ServiceError} - The error object.
+ */
+ startWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * The operation to start a virtual machine.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
*
* @param {object} [options] Optional Parameters.
*
@@ -4393,7 +4829,7 @@ export interface VirtualMachines {
*
* {Promise} A promise is returned.
*
- * @resolve {VirtualMachine} - The deserialized result object.
+ * @resolve {null} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*
@@ -4401,442 +4837,306 @@ export interface VirtualMachines {
*
* {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachine} for more information.
+ * {null} [result] - The deserialized result object if an error did not occur.
*
* {WebResource} [request] - The HTTP Request object if an error did not occur.
*
* {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, callback: ServiceCallback): void;
- createOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+ start(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ start(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ start(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
/**
- * The operation to update a virtual machine.
+ * The operation to redeploy a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {string} vmName The name of the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Update Virtual Machine
- * operation.
+ * @param {object} [options] Optional Parameters.
*
- * @param {object} [parameters.plan] Specifies information about the
- * marketplace image used to create the virtual machine. This element is only
- * used for marketplace images. Before you can use a marketplace image from an
- * API, you must enable the image for programmatic use. In the Azure portal,
- * find the marketplace image that you want to use and then click **Want to
- * deploy programmatically, Get Started ->**. Enter any required information
- * and then click **Save**.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string} [parameters.plan.name] The plan ID.
+ * @returns {Promise} A promise is returned
*
- * @param {string} [parameters.plan.publisher] The publisher ID.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {string} [parameters.plan.product] Specifies the product of the image
- * from the marketplace. This is the same value as Offer under the
- * imageReference element.
+ * @reject {Error|ServiceError} - The error object.
+ */
+ redeployWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * The operation to redeploy a virtual machine.
*
- * @param {string} [parameters.plan.promotionCode] The promotion code.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
- * for the virtual machine.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
- * the virtual machine. For more information about virtual machine sizes, see
- * [Sizes for virtual
- * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
- *
The available VM sizes depend on region and availability set. For a
- * list of available sizes use these APIs:
[List all available
- * virtual machine sizes in an availability
- * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
- *
[List all available virtual machine sizes in a
- * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
- *
[List all available virtual machine sizes for
- * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
- * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
- * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
- * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
- * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
- * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
- * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
- * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
- * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
- * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
- * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
- * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
- * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
- * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
- * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
- * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
- * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
- * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
- * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
- * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
- * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
- * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
- * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
- * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
- * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
- * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
- * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
- * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
- * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
- * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
- * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
- * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
- * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
- * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
- * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
- * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
- * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
- * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
- * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
- * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
- * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
- * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
- * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
- * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
- * 'Standard_NV12', 'Standard_NV24'
+ * @param {object} [options] Optional Parameters.
*
- * @param {object} [parameters.storageProfile] Specifies the storage settings
- * for the virtual machine disks.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {object} [parameters.storageProfile.imageReference] Specifies
- * information about the image to use. You can specify information about
- * platform images, marketplace images, or virtual machine images. This element
- * is required when you want to use a platform image, marketplace image, or
- * virtual machine image, but is not used in other creation operations.
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {string} [parameters.storageProfile.imageReference.publisher] The
- * image publisher.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
- * the offer of the platform image or marketplace image used to create the
- * virtual machine.
+ * {Promise} A promise is returned.
*
- * @param {string} [parameters.storageProfile.imageReference.sku] The image
- * SKU.
+ * @resolve {null} - The deserialized result object.
*
- * @param {string} [parameters.storageProfile.imageReference.version] Specifies
- * the version of the platform image or marketplace image used to create the
- * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
- * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
- * latest version of an image available at deploy time. Even if you use
- * 'latest', the VM image will not automatically update after deploy time even
- * if a new version becomes available.
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
+ * {ServiceCallback} optionalCallback(err, result, request, response)
*
- * @param {object} [parameters.storageProfile.osDisk] Specifies information
- * about the operating system disk used by the virtual machine.
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).
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * @param {string} [parameters.storageProfile.osDisk.osType] This property
- * allows you to specify the type of the OS that is included in the disk if
- * creating a VM from user-image or a specialized VHD.
Possible values
- * are:
**Windows**
**Linux**. Possible values include:
- * 'Windows', 'Linux'
+ * {null} [result] - The deserialized result object if an error did not occur.
*
- * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
- * Specifies the encryption settings for the OS Disk.
Minimum
- * api-version: 2015-06-15
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
*
- * @param {object}
- * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
- * Specifies the location of the disk encryption key, which is a Key Vault
- * Secret.
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ redeploy(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ redeploy(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ redeploy(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * The operation to perform maintenance on a virtual machine.
*
- * @param {string}
- * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
- * The URL referencing a secret in a Key Vault.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object}
- * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
- * The relative URL of the Key Vault containing the secret.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {object}
- * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
- * Specifies the location of the key encryption key in Key Vault.
+ * @param {object} [options] Optional Parameters.
*
- * @param {string}
- * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
- * The URL referencing a key encryption key in Key Vault.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {object}
- * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
- * The relative URL of the Key Vault containing the key.
+ * @returns {Promise} A promise is returned
*
- * @param {boolean}
- * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
- * whether disk encryption should be enabled on the virtual machine.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
+ * @reject {Error|ServiceError} - The error object.
+ */
+ performMaintenanceWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * The operation to perform maintenance on a virtual machine.
*
- * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
- * disk.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [parameters.storageProfile.osDisk.image] The source user
- * image virtual hard disk. The virtual hard disk will be copied before being
- * attached to the virtual machine. If SourceImage is provided, the destination
- * virtual hard drive must not exist.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
- * virtual hard disk's uri.
+ * @param {object} [options] Optional Parameters.
*
- * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
- * caching requirements.
Possible values are:
**None**
- *
**ReadOnly**
**ReadWrite**
Default: **None for
- * Standard storage. ReadOnly for Premium storage**. Possible values include:
- * 'None', 'ReadOnly', 'ReadWrite'
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
+ *
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ *
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
+ *
+ * {Promise} A promise is returned.
+ *
+ * @resolve {null} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {null} [result] - The deserialized result object if an error did not occur.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ performMaintenance(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ performMaintenance(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
+ performMaintenance(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Run command on the VM.
+ *
+ * @param {string} resourceGroupName The name of the resource group.
+ *
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
- * Specifies whether writeAccelerator should be enabled or disabled on the
- * disk.
+ * @param {object} parameters Parameters supplied to the Run command operation.
*
- * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
- * the virtual machine should be created.
Possible values are:
- * **Attach** \u2013 This value is used when you are using a specialized disk
- * to create the virtual machine.
**FromImage** \u2013 This value is
- * used when you are using an image to create the virtual machine. If you are
- * using a platform image, you also use the imageReference element described
- * above. If you are using a marketplace image, you also use the plan element
- * previously described. Possible values include: 'FromImage', 'Empty',
- * 'Attach'
+ * @param {string} parameters.commandId The run command id.
*
- * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
- * size of an empty data disk in gigabytes. This element can be used to
- * overwrite the size of the disk in a virtual machine image.
This
- * value cannot be larger than 1023 GB
+ * @param {array} [parameters.script] Optional. The script to be executed.
+ * When this value is given, the given script will override the default script
+ * of the command.
*
- * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
- * disk parameters.
+ * @param {array} [parameters.parameters] The run command parameters.
*
- * @param {string}
- * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
- * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
- * be used with data disks, it cannot be used with OS Disk. Possible values
- * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
+ * @param {object} [options] Optional Parameters.
*
- * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
- * Id
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {array} [parameters.storageProfile.dataDisks] Specifies the
- * parameters that are used to add a data disk to a virtual machine.
- * 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).
+ * @returns {Promise} A promise is returned
*
- * @param {object} [parameters.additionalCapabilities] Specifies additional
- * capabilities enabled or disabled on the virtual machine.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
- * flag that enables or disables a capability to have one or more managed data
- * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
- * disks with storage account type UltraSSD_LRS can be added to a virtual
- * machine or virtual machine scale set only if this property is enabled.
+ * @reject {Error|ServiceError} - The error object.
+ */
+ runCommandWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.RunCommandInput, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Run command on the VM.
*
- * @param {object} [parameters.osProfile] Specifies the operating system
- * settings for the virtual machine.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {string} [parameters.osProfile.computerName] Specifies the host OS
- * name of the virtual machine.
**Max-length (Windows):** 15
- * characters
**Max-length (Linux):** 64 characters.
For
- * naming conventions and restrictions see [Azure infrastructure services
- * implementation
- * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
- * the administrator account.
**Windows-only restriction:** Cannot end
- * in "."
**Disallowed values:** "administrator", "admin", "user",
- * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
- * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
- * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
- * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
- * (Linux):** 1 character
**Max-length (Linux):** 64 characters
- *
**Max-length (Windows):** 20 characters
For root
- * access to the Linux VM, see [Using root privileges on Linux virtual machines
- * in
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
- * For a list of built-in system users on Linux that should not be used in this
- * field, see [Selecting User Names for Linux on
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * @param {object} parameters Parameters supplied to the Run command operation.
*
- * @param {string} [parameters.osProfile.adminPassword] Specifies the password
- * of the administrator account.
**Minimum-length (Windows):** 8
- * characters
**Minimum-length (Linux):** 6 characters
- * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
- * characters
**Complexity requirements:** 3 out of 4 conditions below
- * need to be fulfilled
Has lower characters
Has upper characters
- * Has a digit
Has a special character (Regex match [\W_])
- * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
- * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
- * "iloveyou!"
For resetting the password, see [How to reset the
- * Remote Desktop service or its login password in a Windows
- * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
For resetting root password, see [Manage users, SSH, and check or
- * repair disks on Azure Linux VMs using the VMAccess
- * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
+ * @param {string} parameters.commandId The run command id.
*
- * @param {string} [parameters.osProfile.customData] Specifies a base-64
- * encoded string of custom data. The base-64 encoded string is decoded to a
- * binary array that is saved as a file on the Virtual Machine. The maximum
- * length of the binary array is 65535 bytes.
For using cloud-init for
- * your VM, see [Using cloud-init to customize a Linux VM during
- * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * @param {array} [parameters.script] Optional. The script to be executed.
+ * When this value is given, the given script will override the default script
+ * of the command.
*
- * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
- * Windows operating system settings on the virtual machine.
+ * @param {array} [parameters.parameters] The run command parameters.
*
- * @param {boolean}
- * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
- * whether virtual machine agent should be provisioned on the virtual machine.
- *
When this property is not specified in the request body, default
- * behavior is to set it to true. This will ensure that VM Agent is installed
- * on the VM so that extensions can be added to the VM later.
+ * @param {object} [options] Optional Parameters.
*
- * @param {boolean}
- * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
- * whether virtual machine is enabled for automatic updates.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
- * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @param {array}
- * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
- * Specifies additional base-64 encoded XML formatted information that can be
- * included in the Unattend.xml file, which is used by Windows Setup.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
- * the Windows Remote Management listeners. This enables remote Windows
- * PowerShell.
+ * {Promise} A promise is returned.
*
- * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
- * The list of Windows Remote Management listeners
+ * @resolve {RunCommandResult} - The deserialized result object.
*
- * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
- * Linux operating system settings on the virtual machine.
For a list
- * of supported Linux distributions, see [Linux on Azure-Endorsed
- * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
- *
For running non-endorsed distributions, see [Information for
- * Non-Endorsed
- * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
+ * @reject {Error|ServiceError} - The error object.
*
- * @param {boolean}
- * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
- * Specifies whether password authentication should be disabled.
+ * {ServiceCallback} optionalCallback(err, result, request, response)
*
- * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
- * ssh key configuration for a Linux OS.
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
- * list of SSH public keys used to authenticate with linux based VMs.
+ * {RunCommandResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link RunCommandResult} for more information.
*
- * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
- * Indicates whether virtual machine agent should be provisioned on the virtual
- * machine.
When this property is not specified in the request body,
- * default behavior is to set it to true. This will ensure that VM Agent is
- * installed on the VM so that extensions can be added to the VM later.
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
*
- * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
- * that should be installed onto the virtual machine.
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
+ */
+ runCommand(resourceGroupName: string, vmName: string, parameters: models.RunCommandInput, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ runCommand(resourceGroupName: string, vmName: string, parameters: models.RunCommandInput, callback: ServiceCallback): void;
+ runCommand(resourceGroupName: string, vmName: string, parameters: models.RunCommandInput, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
+
+ /**
+ * Captures the VM by copying virtual hard disks of the VM and outputs a
+ * template that can be used to create similar VMs.
*
- * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
- * whether extension operations should be allowed on the virtual machine.
- *
This may only be set to False when no extensions are present on the
- * virtual machine.
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [parameters.networkProfile] Specifies the network interfaces
- * of the virtual machine.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
- * list of resource Ids for the network interfaces associated with the virtual
- * machine.
+ * @param {object} parameters Parameters supplied to the Capture Virtual
+ * Machine operation.
*
- * @param {object} [parameters.diagnosticsProfile] Specifies the boot
- * diagnostic settings state.
Minimum api-version: 2015-06-15.
+ * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
+ * prefix.
*
- * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
- * Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
- * screenshot of the VM from the hypervisor.
+ * @param {string} parameters.destinationContainerName The destination
+ * container name.
*
- * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
- * Whether boot diagnostics should be enabled on the Virtual Machine.
+ * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
+ * destination virtual hard disk, in case of conflict.
*
- * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
- * Uri of the storage account to use for placing the console output and
- * screenshot.
+ * @param {object} [options] Optional Parameters.
*
- * @param {object} [parameters.availabilitySet] Specifies information about the
- * availability set that the virtual machine should be assigned to. Virtual
- * machines specified in the same availability set are allocated to different
- * nodes to maximize availability. For more information about availability
- * sets, see [Manage the availability of virtual
- * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
- *
For more information on Azure planned maintainance, see [Planned
- * maintenance for virtual machines in
- * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
Currently, a VM can only be added to availability set at creation
- * time. An existing VM cannot be added to an availability set.
+ * @param {object} [options.customHeaders] Headers that will be added to the
+ * request
*
- * @param {string} [parameters.availabilitySet.id] Resource Id
+ * @returns {Promise} A promise is returned
*
- * @param {string} [parameters.licenseType] Specifies that the image or disk
- * that is being used was licensed on-premises. This element is only used for
- * images that contain the Windows Server operating system.
Possible
- * values are:
Windows_Client
Windows_Server
If this
- * element is included in a request for an update, the value must match the
- * initial value. This value cannot be updated.
For more information,
- * see [Azure Hybrid Use Benefit for Windows
- * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
- *
Minimum api-version: 2015-06-15
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
- * @param {object} [parameters.identity] The identity of the virtual machine,
- * if configured.
+ * @reject {Error|ServiceError} - The error object.
+ */
+ beginCaptureWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+
+ /**
+ * Captures the VM by copying virtual hard disks of the VM and outputs a
+ * template that can be used to create similar VMs.
*
- * @param {string} [parameters.identity.type] The type of identity used for the
- * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
- * implicitly created identity and a set of user assigned identities. The type
- * 'None' will remove any identities from the virtual machine. Possible values
- * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
- * 'None'
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {object} [parameters.identity.userAssignedIdentities] The list of
- * user identities associated with the Virtual Machine. The user identity
- * dictionary key references will be ARM resource ids in the form:
- * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+ * @param {string} vmName The name of the virtual machine.
*
- * @param {array} [parameters.zones] The virtual machine zones.
+ * @param {object} parameters Parameters supplied to the Capture Virtual
+ * Machine operation.
+ *
+ * @param {string} parameters.vhdPrefix The captured virtual hard disk's name
+ * prefix.
+ *
+ * @param {string} parameters.destinationContainerName The destination
+ * container name.
*
- * @param {object} [parameters.tags] Resource tags
+ * @param {boolean} parameters.overwriteVhds Specifies whether to overwrite the
+ * destination virtual hard disk, in case of conflict.
*
* @param {object} [options] Optional Parameters.
*
* @param {object} [options.customHeaders] Headers that will be added to the
* request
*
- * @returns {Promise} A promise is returned
+ * @param {ServiceCallback} [optionalCallback] - The optional callback.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @returns {ServiceCallback|Promise} If a callback was passed as the last
+ * parameter then it returns the callback else returns a Promise.
*
- * @reject {Error|ServiceError} - The error object.
+ * {Promise} A promise is returned.
+ *
+ * @resolve {VirtualMachineCaptureResult} - The deserialized result object.
+ *
+ * @reject {Error|ServiceError} - The error object.
+ *
+ * {ServiceCallback} optionalCallback(err, result, request, response)
+ *
+ * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ *
+ * {VirtualMachineCaptureResult} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachineCaptureResult} for more
+ * information.
+ *
+ * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ *
+ * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- updateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ beginCapture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ beginCapture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, callback: ServiceCallback): void;
+ beginCapture(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineCaptureParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
+
/**
- * The operation to update a virtual machine.
+ * The operation to create or update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {string} vmName The name of the virtual machine.
*
- * @param {object} parameters Parameters supplied to the Update Virtual Machine
+ * @param {object} parameters Parameters supplied to the Create Virtual Machine
* operation.
*
* @param {object} [parameters.plan] Specifies information about the
@@ -5013,6 +5313,14 @@ export interface VirtualMachines {
* Specifies whether writeAccelerator should be enabled or disabled on the
* disk.
*
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
+ *
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
+ *
* @param {string} parameters.storageProfile.osDisk.createOption Specifies how
* the virtual machine should be created.
Possible values are:
* **Attach** \u2013 This value is used when you are using a specialized disk
@@ -5177,9 +5485,8 @@ export interface VirtualMachines {
*
* @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
* Diagnostics is a debugging feature which allows you to view Console Output
- * and Screenshot to diagnose VM status.
For Linux Virtual Machines,
- * you can easily view the output of your console log.
For both
- * Windows and Linux virtual machines, Azure also enables you to see a
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
* screenshot of the VM from the hypervisor.
*
* @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
@@ -5230,111 +5537,12 @@ export interface VirtualMachines {
*
* @param {array} [parameters.zones] The virtual machine zones.
*
- * @param {object} [parameters.tags] Resource tags
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {VirtualMachine} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
- *
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
- *
- * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachine} for more information.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, callback: ServiceCallback): void;
- update(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to delete a virtual machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- deleteMethodWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * The operation to delete a virtual machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {null} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
- *
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
- *
- * {null} [result] - The deserialized result object if an error did not occur.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- deleteMethod(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- deleteMethod(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- deleteMethod(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Retrieves information about the model view or the instance view of a virtual
- * machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} parameters.location Resource location
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
*
- * @param {string} [options.expand] The expand expression to apply on the
- * operation. Possible values include: 'instanceView'
- *
* @param {object} [options.customHeaders] Headers that will be added to the
* request
*
@@ -5344,313 +5552,419 @@ export interface VirtualMachines {
*
* @reject {Error|ServiceError} - The error object.
*/
- getWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Retrieves information about the model view or the instance view of a virtual
- * machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {string} [options.expand] The expand expression to apply on the
- * operation. Possible values include: 'instanceView'
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {VirtualMachine} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
- *
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
- *
- * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachine} for more information.
- *
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
- *
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- get(resourceGroupName: string, vmName: string, options?: { expand? : string, customHeaders? : { [headerName: string]: string; } }): Promise;
- get(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- get(resourceGroupName: string, vmName: string, options: { expand? : string, customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Retrieves information about the run-time state of a virtual machine.
- *
- * @param {string} resourceGroupName The name of the resource group.
- *
- * @param {string} vmName The name of the virtual machine.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- instanceViewWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ beginCreateOrUpdateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * Retrieves information about the run-time state of a virtual machine.
+ * The operation to create or update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {string} vmName The name of the virtual machine.
*
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
- *
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
- *
- * {Promise} A promise is returned.
- *
- * @resolve {VirtualMachineInstanceView} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- *
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object} parameters Parameters supplied to the Create Virtual Machine
+ * operation.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * {VirtualMachineInstanceView} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineInstanceView} for more
- * information.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- instanceView(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- instanceView(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- instanceView(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Converts virtual machine disks from blob-based to managed disks. Virtual
- * machine must be stop-deallocated before invoking this operation.
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * @returns {Promise} A promise is returned
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * @reject {Error|ServiceError} - The error object.
- */
- convertToManagedDisksWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Converts virtual machine disks from blob-based to managed disks. Virtual
- * machine must be stop-deallocated before invoking this operation.
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * {Promise} A promise is returned.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * @resolve {null} - The deserialized result object.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- convertToManagedDisks(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- convertToManagedDisks(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- convertToManagedDisks(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Shuts down the virtual machine and releases the compute resources. You are
- * not billed for the compute resources that this virtual machine uses.
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
+ * caching requirements.
Possible values are:
**None**
+ *
**ReadOnly**
**ReadWrite**
Default: **None for
+ * Standard storage. ReadOnly for Premium storage**. Possible values include:
+ * 'None', 'ReadOnly', 'ReadWrite'
*
- * @returns {Promise} A promise is returned
+ * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
+ * Specifies whether writeAccelerator should be enabled or disabled on the
+ * disk.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
*
- * @reject {Error|ServiceError} - The error object.
- */
- deallocateWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Shuts down the virtual machine and releases the compute resources. You are
- * not billed for the compute resources that this virtual machine uses.
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
+ * the virtual machine should be created.
Possible values are:
+ * **Attach** \u2013 This value is used when you are using a specialized disk
+ * to create the virtual machine.
**FromImage** \u2013 This value is
+ * used when you are using an image to create the virtual machine. If you are
+ * using a platform image, you also use the imageReference element described
+ * above. If you are using a marketplace image, you also use the plan element
+ * previously described. Possible values include: 'FromImage', 'Empty',
+ * 'Attach'
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
+ * size of an empty data disk in gigabytes. This element can be used to
+ * overwrite the size of the disk in a virtual machine image.
This
+ * value cannot be larger than 1023 GB
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
+ * disk parameters.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string}
+ * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
+ * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
+ * be used with data disks, it cannot be used with OS Disk. Possible values
+ * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
+ * Id
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {array} [parameters.storageProfile.dataDisks] Specifies the
+ * parameters that are used to add a data disk to a virtual machine.
+ * 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).
*
- * {Promise} A promise is returned.
+ * @param {object} [parameters.additionalCapabilities] Specifies additional
+ * capabilities enabled or disabled on the virtual machine.
*
- * @resolve {null} - The deserialized result object.
+ * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
+ * flag that enables or disables a capability to have one or more managed data
+ * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
+ * disks with storage account type UltraSSD_LRS can be added to a virtual
+ * machine or virtual machine scale set only if this property is enabled.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.osProfile] Specifies the operating system
+ * settings for the virtual machine.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.osProfile.computerName] Specifies the host OS
+ * name of the virtual machine.
**Max-length (Windows):** 15
+ * characters
**Max-length (Linux):** 64 characters.
For
+ * naming conventions and restrictions see [Azure infrastructure services
+ * implementation
+ * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
+ * the administrator account.
**Windows-only restriction:** Cannot end
+ * in "."
**Disallowed values:** "administrator", "admin", "user",
+ * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
+ * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
+ * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
+ * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
+ * (Linux):** 1 character
**Max-length (Linux):** 64 characters
+ *
**Max-length (Windows):** 20 characters
For root
+ * access to the Linux VM, see [Using root privileges on Linux virtual machines
+ * in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * For a list of built-in system users on Linux that should not be used in this
+ * field, see [Selecting User Names for Linux on
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {string} [parameters.osProfile.adminPassword] Specifies the password
+ * of the administrator account.
**Minimum-length (Windows):** 8
+ * characters
**Minimum-length (Linux):** 6 characters
+ * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
+ * characters
**Complexity requirements:** 3 out of 4 conditions below
+ * need to be fulfilled
Has lower characters
Has upper characters
+ * Has a digit
Has a special character (Regex match [\W_])
+ * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
+ * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
+ * "iloveyou!"
For resetting the password, see [How to reset the
+ * Remote Desktop service or its login password in a Windows
+ * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
For resetting root password, see [Manage users, SSH, and check or
+ * repair disks on Azure Linux VMs using the VMAccess
+ * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.osProfile.customData] Specifies a base-64
+ * encoded string of custom data. The base-64 encoded string is decoded to a
+ * binary array that is saved as a file on the Virtual Machine. The maximum
+ * length of the binary array is 65535 bytes.
For using cloud-init for
+ * your VM, see [Using cloud-init to customize a Linux VM during
+ * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- deallocate(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- deallocate(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- deallocate(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Sets the state of the virtual machine to generalized.
+ * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
+ * Windows operating system settings on the virtual machine.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
+ * whether virtual machine agent should be provisioned on the virtual machine.
+ *
When this property is not specified in the request body, default
+ * behavior is to set it to true. This will ensure that VM Agent is installed
+ * on the VM so that extensions can be added to the VM later.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
+ * whether virtual machine is enabled for automatic updates.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
+ * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {array}
+ * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
+ * Specifies additional base-64 encoded XML formatted information that can be
+ * included in the Unattend.xml file, which is used by Windows Setup.
*
- * @returns {Promise} A promise is returned
+ * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
+ * the Windows Remote Management listeners. This enables remote Windows
+ * PowerShell.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
+ * The list of Windows Remote Management listeners
*
- * @reject {Error|ServiceError} - The error object.
- */
- generalizeWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Sets the state of the virtual machine to generalized.
+ * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
+ * Linux operating system settings on the virtual machine.
For a list
+ * of supported Linux distributions, see [Linux on Azure-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ *
For running non-endorsed distributions, see [Information for
+ * Non-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {boolean}
+ * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
+ * Specifies whether password authentication should be disabled.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
+ * ssh key configuration for a Linux OS.
*
- * @param {object} [options] Optional Parameters.
+ * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
+ * list of SSH public keys used to authenticate with linux based VMs.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
+ * Indicates whether virtual machine agent should be provisioned on the virtual
+ * machine.
When this property is not specified in the request body,
+ * default behavior is to set it to true. This will ensure that VM Agent is
+ * installed on the VM so that extensions can be added to the VM later.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
+ * that should be installed onto the virtual machine.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
+ * whether extension operations should be allowed on the virtual machine.
+ *
This may only be set to False when no extensions are present on the
+ * virtual machine.
*
- * {Promise} A promise is returned.
+ * @param {object} [parameters.networkProfile] Specifies the network interfaces
+ * of the virtual machine.
*
- * @resolve {null} - The deserialized result object.
+ * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
+ * list of resource Ids for the network interfaces associated with the virtual
+ * machine.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.diagnosticsProfile] Specifies the boot
+ * diagnostic settings state.
Minimum api-version: 2015-06-15.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
+ * Diagnostics is a debugging feature which allows you to view Console Output
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
+ * screenshot of the VM from the hypervisor.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
+ * Whether boot diagnostics should be enabled on the Virtual Machine.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
+ * Uri of the storage account to use for placing the console output and
+ * screenshot.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {object} [parameters.availabilitySet] Specifies information about the
+ * availability set that the virtual machine should be assigned to. Virtual
+ * machines specified in the same availability set are allocated to different
+ * nodes to maximize availability. For more information about availability
+ * sets, see [Manage the availability of virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
For more information on Azure planned maintainance, see [Planned
+ * maintenance for virtual machines in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Currently, a VM can only be added to availability set at creation
+ * time. An existing VM cannot be added to an availability set.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- generalize(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- generalize(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- generalize(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Lists all of the virtual machines in the specified resource group. Use the
- * nextLink property in the response to get the next page of virtual machines.
+ * @param {string} [parameters.availabilitySet.id] Resource Id
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.licenseType] Specifies that the image or disk
+ * that is being used was licensed on-premises. This element is only used for
+ * images that contain the Windows Server operating system.
Possible
+ * values are:
Windows_Client
Windows_Server
If this
+ * element is included in a request for an update, the value must match the
+ * initial value. This value cannot be updated.
For more information,
+ * see [Azure Hybrid Use Benefit for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Minimum api-version: 2015-06-15
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.identity] The identity of the virtual machine,
+ * if configured.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.identity.type] The type of identity used for the
+ * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
+ * implicitly created identity and a set of user assigned identities. The type
+ * 'None' will remove any identities from the virtual machine. Possible values
+ * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
+ * 'None'
*
- * @returns {Promise} A promise is returned
+ * @param {object} [parameters.identity.userAssignedIdentities] The list of
+ * user identities associated with the Virtual Machine. The user identity
+ * dictionary key references will be ARM resource ids in the form:
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {array} [parameters.zones] The virtual machine zones.
*
- * @reject {Error|ServiceError} - The error object.
- */
- listWithHttpOperationResponse(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Lists all of the virtual machines in the specified resource group. Use the
- * nextLink property in the response to get the next page of virtual machines.
+ * @param {string} parameters.location Resource location
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
*
@@ -5664,7 +5978,7 @@ export interface VirtualMachines {
*
* {Promise} A promise is returned.
*
- * @resolve {VirtualMachineListResult} - The deserialized result object.
+ * @resolve {VirtualMachine} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*
@@ -5672,261 +5986,427 @@ export interface VirtualMachines {
*
* {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
*
- * {VirtualMachineListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineListResult} for more
- * information.
+ * {VirtualMachine} [result] - The deserialized result object if an error did not occur.
+ * See {@link VirtualMachine} for more information.
*
* {WebResource} [request] - The HTTP Request object if an error did not occur.
*
* {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
*/
- list(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- list(resourceGroupName: string, callback: ServiceCallback): void;
- list(resourceGroupName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
+ beginCreateOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
+ beginCreateOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, callback: ServiceCallback): void;
+ beginCreateOrUpdate(resourceGroupName: string, vmName: string, parameters: models.VirtualMachine, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
- /**
- * Lists all of the virtual machines in the specified subscription. Use the
- * nextLink property in the response to get the next page of virtual machines.
- *
- * @param {object} [options] Optional Parameters.
- *
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
- *
- * @returns {Promise} A promise is returned
- *
- * @resolve {HttpOperationResponse} - The deserialized result object.
- *
- * @reject {Error|ServiceError} - The error object.
- */
- listAllWithHttpOperationResponse(options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * Lists all of the virtual machines in the specified subscription. Use the
- * nextLink property in the response to get the next page of virtual machines.
- *
- * @param {object} [options] Optional Parameters.
+ * The operation to update a virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} resourceGroupName The name of the resource group.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} vmName The name of the virtual machine.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object} parameters Parameters supplied to the Update Virtual Machine
+ * operation.
*
- * {Promise} A promise is returned.
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * @resolve {VirtualMachineListResult} - The deserialized result object.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
*
- * {VirtualMachineListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineListResult} for more
- * information.
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- listAll(options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- listAll(callback: ServiceCallback): void;
- listAll(options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * Lists all available virtual machine sizes to which the specified virtual
- * machine can be resized.
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * @returns {Promise} A promise is returned
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @reject {Error|ServiceError} - The error object.
- */
- listAvailableSizesWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * Lists all available virtual machine sizes to which the specified virtual
- * machine can be resized.
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * @param {object} [options] Optional Parameters.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * {Promise} A promise is returned.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * @resolve {VirtualMachineSizeListResult} - The deserialized result object.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
*
- * {VirtualMachineSizeListResult} [result] - The deserialized result object if an error did not occur.
- * See {@link VirtualMachineSizeListResult} for more
- * information.
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- listAvailableSizes(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- listAvailableSizes(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- listAvailableSizes(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to power off (stop) a virtual machine. The virtual machine can
- * be restarted with the same provisioned resources. You are still charged for
- * this virtual machine.
+ * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
+ * caching requirements.
Possible values are:
**None**
+ *
**ReadOnly**
**ReadWrite**
Default: **None for
+ * Standard storage. ReadOnly for Premium storage**. Possible values include:
+ * 'None', 'ReadOnly', 'ReadWrite'
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {boolean} [parameters.storageProfile.osDisk.writeAcceleratorEnabled]
+ * Specifies whether writeAccelerator should be enabled or disabled on the
+ * disk.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.storageProfile.osDisk.diffDiskSettings]
+ * Specifies the differencing Disk Settings for the operating system disk used
+ * by the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {string} [parameters.storageProfile.osDisk.diffDiskSettings.option]
+ * Specifies the differencing disk settings for operating system disk. Possible
+ * values include: 'Local'
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} parameters.storageProfile.osDisk.createOption Specifies how
+ * the virtual machine should be created.
Possible values are:
+ * **Attach** \u2013 This value is used when you are using a specialized disk
+ * to create the virtual machine.
**FromImage** \u2013 This value is
+ * used when you are using an image to create the virtual machine. If you are
+ * using a platform image, you also use the imageReference element described
+ * above. If you are using a marketplace image, you also use the plan element
+ * previously described. Possible values include: 'FromImage', 'Empty',
+ * 'Attach'
*
- * @returns {Promise} A promise is returned
+ * @param {number} [parameters.storageProfile.osDisk.diskSizeGB] Specifies the
+ * size of an empty data disk in gigabytes. This element can be used to
+ * overwrite the size of the disk in a virtual machine image.
This
+ * value cannot be larger than 1023 GB
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {object} [parameters.storageProfile.osDisk.managedDisk] The managed
+ * disk parameters.
*
- * @reject {Error|ServiceError} - The error object.
- */
- powerOffWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * The operation to power off (stop) a virtual machine. The virtual machine can
- * be restarted with the same provisioned resources. You are still charged for
- * this virtual machine.
+ * @param {string}
+ * [parameters.storageProfile.osDisk.managedDisk.storageAccountType] Specifies
+ * the storage account type for the managed disk. NOTE: UltraSSD_LRS can only
+ * be used with data disks, it cannot be used with OS Disk. Possible values
+ * include: 'Standard_LRS', 'Premium_LRS', 'StandardSSD_LRS', 'UltraSSD_LRS'
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string} [parameters.storageProfile.osDisk.managedDisk.id] Resource
+ * Id
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {array} [parameters.storageProfile.dataDisks] Specifies the
+ * parameters that are used to add a data disk to a virtual machine.
+ * 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).
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.additionalCapabilities] Specifies additional
+ * capabilities enabled or disabled on the virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {boolean} [parameters.additionalCapabilities.ultraSSDEnabled] The
+ * flag that enables or disables a capability to have one or more managed data
+ * disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed
+ * disks with storage account type UltraSSD_LRS can be added to a virtual
+ * machine or virtual machine scale set only if this property is enabled.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.osProfile] Specifies the operating system
+ * settings for the virtual machine.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {string} [parameters.osProfile.computerName] Specifies the host OS
+ * name of the virtual machine.
**Max-length (Windows):** 15
+ * characters
**Max-length (Linux):** 64 characters.
For
+ * naming conventions and restrictions see [Azure infrastructure services
+ * implementation
+ * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions).
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.osProfile.adminUsername] Specifies the name of
+ * the administrator account.
**Windows-only restriction:** Cannot end
+ * in "."
**Disallowed values:** "administrator", "admin", "user",
+ * "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a",
+ * "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
+ * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
+ * "sys", "test2", "test3", "user4", "user5".
**Minimum-length
+ * (Linux):** 1 character
**Max-length (Linux):** 64 characters
+ *
**Max-length (Windows):** 20 characters
For root
+ * access to the Linux VM, see [Using root privileges on Linux virtual machines
+ * in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ * For a list of built-in system users on Linux that should not be used in this
+ * field, see [Selecting User Names for Linux on
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * @resolve {null} - The deserialized result object.
+ * @param {string} [parameters.osProfile.adminPassword] Specifies the password
+ * of the administrator account.
**Minimum-length (Windows):** 8
+ * characters
**Minimum-length (Linux):** 6 characters
+ * **Max-length (Windows):** 123 characters
**Max-length (Linux):** 72
+ * characters
**Complexity requirements:** 3 out of 4 conditions below
+ * need to be fulfilled
Has lower characters
Has upper characters
+ * Has a digit
Has a special character (Regex match [\W_])
+ * **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123",
+ * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22",
+ * "iloveyou!"
For resetting the password, see [How to reset the
+ * Remote Desktop service or its login password in a Windows
+ * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
For resetting root password, see [Manage users, SSH, and check or
+ * repair disks on Azure Linux VMs using the VMAccess
+ * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {string} [parameters.osProfile.customData] Specifies a base-64
+ * encoded string of custom data. The base-64 encoded string is decoded to a
+ * binary array that is saved as a file on the Virtual Machine. The maximum
+ * length of the binary array is 65535 bytes.
For using cloud-init for
+ * your VM, see [Using cloud-init to customize a Linux VM during
+ * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {object} [parameters.osProfile.windowsConfiguration] Specifies
+ * Windows operating system settings on the virtual machine.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.provisionVMAgent] Indicates
+ * whether virtual machine agent should be provisioned on the virtual machine.
+ *
When this property is not specified in the request body, default
+ * behavior is to set it to true. This will ensure that VM Agent is installed
+ * on the VM so that extensions can be added to the VM later.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {boolean}
+ * [parameters.osProfile.windowsConfiguration.enableAutomaticUpdates] Indicates
+ * whether virtual machine is enabled for automatic updates.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.osProfile.windowsConfiguration.timeZone]
+ * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time"
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- powerOff(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- powerOff(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- powerOff(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to restart a virtual machine.
+ * @param {array}
+ * [parameters.osProfile.windowsConfiguration.additionalUnattendContent]
+ * Specifies additional base-64 encoded XML formatted information that can be
+ * included in the Unattend.xml file, which is used by Windows Setup.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.osProfile.windowsConfiguration.winRM] Specifies
+ * the Windows Remote Management listeners. This enables remote Windows
+ * PowerShell.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {array} [parameters.osProfile.windowsConfiguration.winRM.listeners]
+ * The list of Windows Remote Management listeners
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.osProfile.linuxConfiguration] Specifies the
+ * Linux operating system settings on the virtual machine.
For a list
+ * of supported Linux distributions, see [Linux on Azure-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
+ *
For running non-endorsed distributions, see [Information for
+ * Non-Endorsed
+ * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {boolean}
+ * [parameters.osProfile.linuxConfiguration.disablePasswordAuthentication]
+ * Specifies whether password authentication should be disabled.
*
- * @returns {Promise} A promise is returned
+ * @param {object} [parameters.osProfile.linuxConfiguration.ssh] Specifies the
+ * ssh key configuration for a Linux OS.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {array} [parameters.osProfile.linuxConfiguration.ssh.publicKeys] The
+ * list of SSH public keys used to authenticate with linux based VMs.
*
- * @reject {Error|ServiceError} - The error object.
- */
- restartWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * The operation to restart a virtual machine.
+ * @param {boolean} [parameters.osProfile.linuxConfiguration.provisionVMAgent]
+ * Indicates whether virtual machine agent should be provisioned on the virtual
+ * machine.
When this property is not specified in the request body,
+ * default behavior is to set it to true. This will ensure that VM Agent is
+ * installed on the VM so that extensions can be added to the VM later.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {array} [parameters.osProfile.secrets] Specifies set of certificates
+ * that should be installed onto the virtual machine.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {boolean} [parameters.osProfile.allowExtensionOperations] Specifies
+ * whether extension operations should be allowed on the virtual machine.
+ *
This may only be set to False when no extensions are present on the
+ * virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.networkProfile] Specifies the network interfaces
+ * of the virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {array} [parameters.networkProfile.networkInterfaces] Specifies the
+ * list of resource Ids for the network interfaces associated with the virtual
+ * machine.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.diagnosticsProfile] Specifies the boot
+ * diagnostic settings state.
Minimum api-version: 2015-06-15.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object} [parameters.diagnosticsProfile.bootDiagnostics] Boot
+ * Diagnostics is a debugging feature which allows you to view Console Output
+ * and Screenshot to diagnose VM status.
You can easily view the
+ * output of your console log.
Azure also enables you to see a
+ * screenshot of the VM from the hypervisor.
*
- * {Promise} A promise is returned.
+ * @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
+ * Whether boot diagnostics should be enabled on the Virtual Machine.
*
- * @resolve {null} - The deserialized result object.
+ * @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
+ * Uri of the storage account to use for placing the console output and
+ * screenshot.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.availabilitySet] Specifies information about the
+ * availability set that the virtual machine should be assigned to. Virtual
+ * machines specified in the same availability set are allocated to different
+ * nodes to maximize availability. For more information about availability
+ * sets, see [Manage the availability of virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
For more information on Azure planned maintainance, see [Planned
+ * maintenance for virtual machines in
+ * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Currently, a VM can only be added to availability set at creation
+ * time. An existing VM cannot be added to an availability set.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.availabilitySet.id] Resource Id
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.licenseType] Specifies that the image or disk
+ * that is being used was licensed on-premises. This element is only used for
+ * images that contain the Windows Server operating system.
Possible
+ * values are:
Windows_Client
Windows_Server
If this
+ * element is included in a request for an update, the value must match the
+ * initial value. This value cannot be updated.
For more information,
+ * see [Azure Hybrid Use Benefit for Windows
+ * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
+ *
Minimum api-version: 2015-06-15
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {object} [parameters.identity] The identity of the virtual machine,
+ * if configured.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.identity.type] The type of identity used for the
+ * virtual machine. The type 'SystemAssigned, UserAssigned' includes both an
+ * implicitly created identity and a set of user assigned identities. The type
+ * 'None' will remove any identities from the virtual machine. Possible values
+ * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned',
+ * 'None'
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- restart(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- restart(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- restart(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to start a virtual machine.
+ * @param {object} [parameters.identity.userAssignedIdentities] The list of
+ * user identities associated with the Virtual Machine. The user identity
+ * dictionary key references will be ARM resource ids in the form:
+ * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {array} [parameters.zones] The virtual machine zones.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object} [parameters.tags] Resource tags
*
* @param {object} [options] Optional Parameters.
*
@@ -5935,212 +6415,421 @@ export interface VirtualMachines {
*
* @returns {Promise} A promise is returned
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @resolve {HttpOperationResponse} - The deserialized result object.
*
* @reject {Error|ServiceError} - The error object.
*/
- startWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
+ beginUpdateWithHttpOperationResponse(resourceGroupName: string, vmName: string, parameters: models.VirtualMachineUpdate, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
/**
- * The operation to start a virtual machine.
+ * The operation to update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {string} vmName The name of the virtual machine.
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} parameters Parameters supplied to the Update Virtual Machine
+ * operation.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object} [parameters.plan] Specifies information about the
+ * marketplace image used to create the virtual machine. This element is only
+ * used for marketplace images. Before you can use a marketplace image from an
+ * API, you must enable the image for programmatic use. In the Azure portal,
+ * find the marketplace image that you want to use and then click **Want to
+ * deploy programmatically, Get Started ->**. Enter any required information
+ * and then click **Save**.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {string} [parameters.plan.name] The plan ID.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {string} [parameters.plan.publisher] The publisher ID.
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.plan.product] Specifies the product of the image
+ * from the marketplace. This is the same value as Offer under the
+ * imageReference element.
+ *
+ * @param {string} [parameters.plan.promotionCode] The promotion code.
+ *
+ * @param {object} [parameters.hardwareProfile] Specifies the hardware settings
+ * for the virtual machine.
+ *
+ * @param {string} [parameters.hardwareProfile.vmSize] Specifies the size of
+ * the virtual machine. For more information about virtual machine sizes, see
+ * [Sizes for virtual
+ * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).
+ *
The available VM sizes depend on region and availability set. For a
+ * list of available sizes use these APIs:
[List all available
+ * virtual machine sizes in an availability
+ * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)
+ *
[List all available virtual machine sizes in a
+ * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)
+ *
[List all available virtual machine sizes for
+ * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes).
+ * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3',
+ * 'Basic_A4', 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3',
+ * 'Standard_A4', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8',
+ * 'Standard_A9', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2',
+ * 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2',
+ * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms',
+ * 'Standard_B2s', 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms',
+ * 'Standard_D1', 'Standard_D2', 'Standard_D3', 'Standard_D4', 'Standard_D11',
+ * 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2',
+ * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2',
+ * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3',
+ * 'Standard_D32_v3', 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3',
+ * 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3',
+ * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2',
+ * 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2',
+ * 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12',
+ * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2',
+ * 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2',
+ * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2',
+ * 'Standard_DS15_v2', 'Standard_DS13-4_v2', 'Standard_DS13-2_v2',
+ * 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3',
+ * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3',
+ * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3',
+ * 'Standard_E16s_v3', 'Standard_E32s_v3', 'Standard_E64s_v3',
+ * 'Standard_E32-16_v3', 'Standard_E32-8s_v3', 'Standard_E64-32s_v3',
+ * 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4',
+ * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s',
+ * 'Standard_F4s', 'Standard_F8s', 'Standard_F16s', 'Standard_F2s_v2',
+ * 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2',
+ * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1',
+ * 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1',
+ * 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS5',
+ * 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', 'Standard_GS5-8',
+ * 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m',
+ * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s',
+ * 'Standard_L16s', 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms',
+ * 'Standard_M128s', 'Standard_M128ms', 'Standard_M64-32ms',
+ * 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms',
+ * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r',
+ * 'Standard_NC6s_v2', 'Standard_NC12s_v2', 'Standard_NC24s_v2',
+ * 'Standard_NC24rs_v2', 'Standard_NC6s_v3', 'Standard_NC12s_v3',
+ * 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s',
+ * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6',
+ * 'Standard_NV12', 'Standard_NV24'
*
- * @resolve {null} - The deserialized result object.
+ * @param {object} [parameters.storageProfile] Specifies the storage settings
+ * for the virtual machine disks.
*
- * @reject {Error|ServiceError} - The error object.
+ * @param {object} [parameters.storageProfile.imageReference] Specifies
+ * information about the image to use. You can specify information about
+ * platform images, marketplace images, or virtual machine images. This element
+ * is required when you want to use a platform image, marketplace image, or
+ * virtual machine image, but is not used in other creation operations.
*
- * {ServiceCallback} optionalCallback(err, result, request, response)
+ * @param {string} [parameters.storageProfile.imageReference.publisher] The
+ * image publisher.
*
- * {Error|ServiceError} err - The Error object if an error occurred, null otherwise.
+ * @param {string} [parameters.storageProfile.imageReference.offer] Specifies
+ * the offer of the platform image or marketplace image used to create the
+ * virtual machine.
*
- * {null} [result] - The deserialized result object if an error did not occur.
+ * @param {string} [parameters.storageProfile.imageReference.sku] The image
+ * SKU.
*
- * {WebResource} [request] - The HTTP Request object if an error did not occur.
+ * @param {string} [parameters.storageProfile.imageReference.version] Specifies
+ * the version of the platform image or marketplace image used to create the
+ * virtual machine. The allowed formats are Major.Minor.Build or 'latest'.
+ * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the
+ * latest version of an image available at deploy time. Even if you use
+ * 'latest', the VM image will not automatically update after deploy time even
+ * if a new version becomes available.
*
- * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur.
- */
- start(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise;
- start(resourceGroupName: string, vmName: string, callback: ServiceCallback): void;
- start(resourceGroupName: string, vmName: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void;
-
-
- /**
- * The operation to redeploy a virtual machine.
+ * @param {string} [parameters.storageProfile.imageReference.id] Resource Id
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {object} [parameters.storageProfile.osDisk] Specifies information
+ * about the operating system disk used by the virtual machine.
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).
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {string} [parameters.storageProfile.osDisk.osType] This property
+ * allows you to specify the type of the OS that is included in the disk if
+ * creating a VM from user-image or a specialized VHD.
Possible values
+ * are:
**Windows**
**Linux**. Possible values include:
+ * 'Windows', 'Linux'
*
- * @param {object} [options] Optional Parameters.
+ * @param {object} [parameters.storageProfile.osDisk.encryptionSettings]
+ * Specifies the encryption settings for the OS Disk.
Minimum
+ * api-version: 2015-06-15
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey]
+ * Specifies the location of the disk encryption key, which is a Key Vault
+ * Secret.
*
- * @returns {Promise} A promise is returned
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.secretUrl
+ * The URL referencing a secret in a Key Vault.
*
- * @resolve {HttpOperationResponse} - The deserialized result object.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.diskEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the secret.
*
- * @reject {Error|ServiceError} - The error object.
- */
- redeployWithHttpOperationResponse(resourceGroupName: string, vmName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>;
-
- /**
- * The operation to redeploy a virtual machine.
+ * @param {object}
+ * [parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey]
+ * Specifies the location of the key encryption key in Key Vault.
*
- * @param {string} resourceGroupName The name of the resource group.
+ * @param {string}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.keyUrl
+ * The URL referencing a key encryption key in Key Vault.
*
- * @param {string} vmName The name of the virtual machine.
+ * @param {object}
+ * parameters.storageProfile.osDisk.encryptionSettings.keyEncryptionKey.sourceVault
+ * The relative URL of the Key Vault containing the key.
*
- * @param {object} [options] Optional Parameters.
+ * @param {boolean}
+ * [parameters.storageProfile.osDisk.encryptionSettings.enabled] Specifies
+ * whether disk encryption should be enabled on the virtual machine.
*
- * @param {object} [options.customHeaders] Headers that will be added to the
- * request
+ * @param {string} [parameters.storageProfile.osDisk.name] The disk name.
*
- * @param {ServiceCallback} [optionalCallback] - The optional callback.
+ * @param {object} [parameters.storageProfile.osDisk.vhd] The virtual hard
+ * disk.
*
- * @returns {ServiceCallback|Promise} If a callback was passed as the last
- * parameter then it returns the callback else returns a Promise.
+ * @param {object} [parameters.storageProfile.osDisk.image] The source user
+ * image virtual hard disk. The virtual hard disk will be copied before being
+ * attached to the virtual machine. If SourceImage is provided, the destination
+ * virtual hard drive must not exist.
*
- * {Promise} A promise is returned.
+ * @param {string} [parameters.storageProfile.osDisk.image.uri] Specifies the
+ * virtual hard disk's uri.
*
- * @resolve {null} - The deserialized result object.
+ * @param {string} [parameters.storageProfile.osDisk.caching] Specifies the
+ * caching requirements.