Skip to content

Instantly share code, notes, and snippets.

@cbednarski
Created January 15, 2016 18:33
Show Gist options
  • Save cbednarski/f02c0fc7c5cd3619417f to your computer and use it in GitHub Desktop.
Save cbednarski/f02c0fc7c5cd3619417f to your computer and use it in GitHub Desktop.
Azure VM Parameters
/**
* The operation to create or update a virtual machine.
*
* @param {string} resourceGroupName The name of the resource group.
*
* @param {VirtualMachine} parameters Parameters supplied to the Create
* Virtual Machine operation.
*
* @param {Plan} [parameters.plan] Gets or sets the purchase plan when
* deploying virtual machine from VM Marketplace images.
*
* @param {string} [parameters.plan.name] Gets or sets the plan ID.
*
* @param {string} [parameters.plan.publisher] Gets or sets the publisher ID.
*
* @param {string} [parameters.plan.product] Gets or sets the offer ID.
*
* @param {string} [parameters.plan.promotionCode] Gets or sets the promotion
* code.
*
* @param {HardwareProfile} [parameters.hardwareProfile] Gets or sets the
* hardware profile.
*
* @param {string} [parameters.hardwareProfile.virtualMachineSize] The
* virtual machine size name.
*
* @param {StorageProfile} [parameters.storageProfile] Gets or sets the
* storage profile.
*
* @param {ImageReference} [parameters.storageProfile.imageReference] Gets or
* sets the image reference.
*
* @param {string} [parameters.storageProfile.imageReference.publisher] Gets
* or sets the image publisher.
*
* @param {string} [parameters.storageProfile.imageReference.offer] Gets or
* sets the image offer.
*
* @param {string} [parameters.storageProfile.imageReference.sku] Gets or
* sets the image sku.
*
* @param {string} [parameters.storageProfile.imageReference.version] Gets or
* sets the image version. The allowed formats are Major.Minor.Build or
* 'latest'. Major, Minor and Build being decimal numbers. Specify 'latest'
* to use the latest version of image.
*
* @param {OSDisk} [parameters.storageProfile.oSDisk] Gets or sets the OS
* disk.
*
* @param {string} [parameters.storageProfile.oSDisk.operatingSystemType]
* Gets or sets the Operating System type.
*
* @param {DiskEncryptionSettings}
* [parameters.storageProfile.oSDisk.encryptionSettings] Gets or sets the
* disk encryption settings.
*
* @param {KeyVaultSecretReference}
* [parameters.storageProfile.oSDisk.encryptionSettings.diskEncryptionKey]
* Gets or sets the disk encryption key which is a KeyVault Secret.
*
* @param {string}
* [parameters.storageProfile.oSDisk.encryptionSettings.diskEncryptionKey.secretUrl]
* Gets or sets the URL referencing a secret in a Key Vault.
*
* @param {SourceVaultReference}
* [parameters.storageProfile.oSDisk.encryptionSettings.diskEncryptionKey.sourceVault]
* Gets or sets the Relative URL of the Key Vault containing the secret.
*
* @param {string}
* [parameters.storageProfile.oSDisk.encryptionSettings.diskEncryptionKey.sourceVault.referenceUri]
* Gets or sets the relative URL in the previous Service Management API's
* namespace. For Example:
* /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/...
*
* @param {KeyVaultKeyReference}
* [parameters.storageProfile.oSDisk.encryptionSettings.keyEncryptionKey]
* Gets or sets the key encryption key which is KeyVault Key.
*
* @param {string}
* [parameters.storageProfile.oSDisk.encryptionSettings.keyEncryptionKey.keyUrl]
* Gets or sets the URL referencing a key in a Key Vault.
*
* @param {SourceVaultReference}
* [parameters.storageProfile.oSDisk.encryptionSettings.keyEncryptionKey.sourceVault]
* Gets or sets the Relative URL of the Key Vault containing the key
*
* @param {string}
* [parameters.storageProfile.oSDisk.encryptionSettings.keyEncryptionKey.sourceVault.referenceUri]
* Gets or sets the relative URL in the previous Service Management API's
* namespace. For Example:
* /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/...
*
* @param {string} [parameters.storageProfile.oSDisk.name] Gets or sets the
* disk name.
*
* @param {VirtualHardDisk}
* [parameters.storageProfile.oSDisk.virtualHardDisk] Gets or sets the
* Virtual Hard Disk.
*
* @param {string} [parameters.storageProfile.oSDisk.virtualHardDisk.uri]
* Gets or sets the virtual hard disk's uri. It should be a valid Uri to a
* virtual hard disk.
*
* @param {VirtualHardDisk} [parameters.storageProfile.oSDisk.sourceImage]
* Gets or sets the Source User Image VirtualHardDisk. This VirtualHardDisk
* will be copied before using it to attach to the Virtual Machine.If
* SourceImage is provided, the destination VirtualHardDisk should not exist.
*
* @param {string} [parameters.storageProfile.oSDisk.sourceImage.uri] Gets or
* sets the virtual hard disk's uri. It should be a valid Uri to a virtual
* hard disk.
*
* @param {string} [parameters.storageProfile.oSDisk.caching] Gets or sets
* the caching type.
*
* @param {string} [parameters.storageProfile.oSDisk.createOption] Gets or
* sets the create option.
*
* @param {number} [parameters.storageProfile.oSDisk.diskSizeGB] Gets or sets
* the initial disk size in GB for blank data disks, and the new desired
* size for existing OS and Data disks.
*
* @param {array} [parameters.storageProfile.dataDisks] Gets or sets the data
* disks.
*
* @param {OSProfile} [parameters.oSProfile] Gets or sets the OS profile.
*
* @param {string} [parameters.oSProfile.computerName] Gets or sets the
* computer name.
*
* @param {string} [parameters.oSProfile.adminUsername] Gets or sets the
* admin user name.
*
* @param {string} [parameters.oSProfile.adminPassword] Gets or sets the
* admin user password.
*
* @param {string} [parameters.oSProfile.customData] Gets or sets a base-64
* encoded string of custom data.
*
* @param {WindowsConfiguration} [parameters.oSProfile.windowsConfiguration]
* Gets or sets the Windows Configuration of the OS profile.
*
* @param {boolean}
* [parameters.oSProfile.windowsConfiguration.provisionVMAgent] Gets or sets
* whether VM Agent should be provisioned on the Virtual Machine.
*
* @param {boolean}
* [parameters.oSProfile.windowsConfiguration.enableAutomaticUpdates] Gets
* or sets whether Windows updates are automatically installed on the VM
*
* @param {string} [parameters.oSProfile.windowsConfiguration.timeZone] Gets
* or sets the Time Zone of the VM
*
* @param {array}
* [parameters.oSProfile.windowsConfiguration.additionalUnattendContents]
* Gets or sets the additional base-64 encoded XML formatted information
* that can be included in the Unattend.xml file.
*
* @param {WinRMConfiguration}
* [parameters.oSProfile.windowsConfiguration.winRMConfiguration] Gets or
* sets the Windows Remote Management configuration of the VM
*
* @param {array}
* [parameters.oSProfile.windowsConfiguration.winRMConfiguration.listeners]
* Gets or sets the list of Windows Remote Management listeners
*
* @param {LinuxConfiguration} [parameters.oSProfile.linuxConfiguration] Gets
* or sets the Linux Configuration of the OS profile.
*
* @param {boolean}
* [parameters.oSProfile.linuxConfiguration.disablePasswordAuthentication]
* Gets or sets whether Authentication using user name and password is
* allowed or not
*
* @param {SshConfiguration}
* [parameters.oSProfile.linuxConfiguration.sshConfiguration] Gets or sets
* the SSH configuration for linux VMs
*
* @param {array}
* [parameters.oSProfile.linuxConfiguration.sshConfiguration.publicKeys]
* Gets or sets the list of SSH public keys used to authenticate with linux
* based VMs
*
* @param {array} [parameters.oSProfile.secrets] Gets or sets the List of
* certificates for addition to the VM.
*
* @param {NetworkProfile} [parameters.networkProfile] Gets or sets the
* network profile.
*
* @param {array} [parameters.networkProfile.networkInterfaces] Gets or sets
* the network interfaces.
*
* @param {DiagnosticsProfile} [parameters.diagnosticsProfile] Gets or sets
* the diagnostics profile.
*
* @param {BootDiagnostics} [parameters.diagnosticsProfile.bootDiagnostics]
* Gets or sets the boot diagnostics.
*
* @param {boolean} [parameters.diagnosticsProfile.bootDiagnostics.enabled]
* Gets or sets whether VM Agent should be provisioned on the Virtual
* Machine.
*
* @param {string} [parameters.diagnosticsProfile.bootDiagnostics.storageUri]
* Gets or sets the boot diagnostics storage Uri. It should be a valid Uri
*
* @param {AvailabilitySetReference} [parameters.availabilitySetReference]
* Gets or sets the reference Id of the availailbity set to which this
* virtual machine belongs.
*
* @param {string} [parameters.availabilitySetReference.referenceUri] Gets or
* sets the relative URL in the previous Service Management API's namespace.
* For Example:
* /subscriptions/{SubcriptionId}/resourceGroups/{ResourceGroupName}/...
*
* @param {string} [parameters.provisioningState] Gets or sets the
* provisioning state, which only appears in the response.
*
* @param {VirtualMachineInstanceView} [parameters.instanceView] Gets the
* virtual machine instance view.
*
* @param {number} [parameters.instanceView.platformUpdateDomain] Gets or
* sets the Update Domain count.
*
* @param {number} [parameters.instanceView.platformFaultDomain] Gets or sets
* the Fault Domain count.
*
* @param {string} [parameters.instanceView.remoteDesktopThumbprint] Gets or
* sets the Remote desktop certificate thumbprint.
*
* @param {VirtualMachineAgentInstanceView} [parameters.instanceView.vMAgent]
* Gets or sets the VM Agent running on the virtual machine.
*
* @param {string} [parameters.instanceView.vMAgent.vMAgentVersion] Gets or
* sets the VM Agent full version.
*
* @param {array} [parameters.instanceView.vMAgent.extensionHandlers] Gets or
* sets the virtual machine extension handler instance view.
*
* @param {array} [parameters.instanceView.vMAgent.statuses] Gets or sets the
* resource status information.
*
* @param {array} [parameters.instanceView.disks] Gets or sets the the disks
* information.
*
* @param {array} [parameters.instanceView.extensions] Gets or sets the
* extensions information.
*
* @param {BootDiagnosticsInstanceView}
* [parameters.instanceView.bootDiagnostics] Gets or sets the boot
* diagnostics.
*
* @param {string}
* [parameters.instanceView.bootDiagnostics.consoleScreenshotBlobUri] Gets
* or sets the console screenshot blob Uri.
*
* @param {string}
* [parameters.instanceView.bootDiagnostics.serialConsoleLogBlobUri] Gets or
* sets the Linux serial console log blob Uri.
*
* @param {array} [parameters.instanceView.statuses] Gets or sets the
* resource status information.
*
* @param {array} [parameters.extensions] Gets the virtual machine child
* extension resources.
*
* @param {string} [parameters.id] Gets or sets the ID of the resource.
*
* @param {string} [parameters.name] Gets or sets the name of the resource.
*
* @param {string} [parameters.type] Gets or sets the type of the resource.
*
* @param {string} parameters.location Gets or sets the location of the
* resource.
*
* @param {object} [parameters.tags] Gets or sets the tags attached to the
* resource.
*
* @param {function} callback
*
* @returns {Stream} The response stream.
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment