'Extend the virtual disk to the requested size.
:param requested_size_in_gb: Size of the volume in GB
:param path: Datastore path of the virtual disk to extend
:param dc_ref: Reference to datacenter
:param eager_zero: Boolean determining if the free space
is zeroed out'

def extend_virtual_disk(self, requested_size_in_gb, path, dc_ref, eager_zero=False):

    LOG.debug('Extending    virtual    disk:    %(path)s    to    %(size)s    GB.', {'path': path, 'size': requested_size_in_gb})
    diskMgr = self._session.vim.service_content.virtualDiskManager
    size_in_kb = (requested_size_in_gb * units.Mi)
    task = self._session.invoke_api(self._session.vim, 'ExtendVirtualDisk_Task', diskMgr, name=path, datacenter=dc_ref, newCapacityKb=size_in_kb, eagerZero=eager_zero)
    self._session.wait_for_task(task)
    LOG.info('Successfully    extended    virtual    disk:    %(path)s    to    %(size)s    GB.', {'path': path, 'size': requested_size_in_gb})
