Skip to content

Instantly share code, notes, and snippets.

@jm66
Created September 18, 2015 14:48
Show Gist options
  • Save jm66/bb76de996a1b80d7959c to your computer and use it in GitHub Desktop.
Save jm66/bb76de996a1b80d7959c to your computer and use it in GitHub Desktop.
pyVmomi: create_virtual_disk function
def create_virtual_disk(capacity, controller_key, unit_number, in_bytes=False):
"""
:param capacity: Capacity of new disk in Bytes
:param unit_number: device unit
:return:
"""
virtual_disk = vim.vm.device.VirtualDisk()
if in_bytes:
virtual_disk.capacityInBytes = capacity
else:
virtual_disk.capacityInKB = capacity
# Verify this.
virtual_disk.unitNumber = unit_number
virtual_disk.controllerKey = controller_key
# backing info
virtual_disk_backing_info = vim.vm.device.VirtualDisk.FlatVer2BackingInfo()
virtual_disk_backing_info.diskMode = "persistent"
virtual_disk_backing_info.thinProvisioned = True
# assigning backing info to virtual disk device backing
virtual_disk.backing = virtual_disk_backing_info
# creating virtualdevice spec and assigning recently created virtual disk
virtual_disk_spec = vim.vm.device.VirtualDeviceSpec()
virtual_disk_spec.device = virtual_disk
virtual_disk_spec.fileOperation = "create"
virtual_disk_spec.operation = "add"
return virtual_disk_spec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment