'Get `LibvirtConfigGuestDisk` filled for this image.
:disk_dev: Disk bus device name
:disk_bus: Disk bus type
:device_type: Device type for this image.
:cache_mode: Caching mode for this image
:extra_specs: Instance type extra specs dict.
:hypervisor_version: the hypervisor version
:boot_order: Disk device boot order'

def libvirt_info(self, disk_bus, disk_dev, device_type, cache_mode, extra_specs, hypervisor_version, boot_order=None, disk_unit=None):

    info = vconfig.LibvirtConfigGuestDisk()
    (hosts, ports) = self.driver.get_mon_addrs()
    info.source_device = device_type
    info.driver_format = 'raw'
    info.driver_cache = cache_mode
    info.driver_discard = self.discard_mode
    info.target_bus = disk_bus
    info.target_dev = disk_dev
    info.source_type = 'network'
    info.source_protocol = 'rbd'
    info.source_name = ('%s/%s' % (self.pool, self.rbd_name))
    info.source_hosts = hosts
    info.source_ports = ports
    info.boot_order = boot_order
    auth_enabled = (CONF.libvirt.rbd_user is not None)
    if CONF.libvirt.rbd_secret_uuid:
        info.auth_secret_uuid = CONF.libvirt.rbd_secret_uuid
        auth_enabled = True
        if CONF.libvirt.rbd_user:
            info.auth_username = CONF.libvirt.rbd_user
    if auth_enabled:
        info.auth_secret_type = 'ceph'
        info.auth_secret_uuid = CONF.libvirt.rbd_secret_uuid
    if (disk_bus == 'scsi'):
        self.disk_scsi(info, disk_unit)
    self.disk_qos(info, extra_specs)
    return info
