Example #1
0
def download_asset(asset_name, ini_dir=None, section=None, ddir=None):
    provider_dirs = asset.get_test_provider_subdirs(backend="spice")[0]
    if ini_dir:
        provider_dirs.insert(0, ini_dir)
    logger.debug("Provider_dirs: %s.", repr(provider_dirs))
    fname = "%s.ini" % asset_name
    for d in os.walk(provider_dirs):
        d = d[0]
        ini_file = os.path.join(d, fname)
        if os.path.isfile(ini_file):
            asset_dir = d
            break
    assert os.path.isfile(ini_file), "Cannot find %s.ini file." % asset_name
    logger.info("Section: %s", section)
    asset_info = asset.get_asset_info(asset_name, ini_dir=asset_dir,
                                      section=section)
    if ddir:
        dst_file = os.path.basename(asset_info['destination'])
        asset_info['destination'] = os.path.join(ddir, dst_file)
    asset.download_file(asset_info)
    stored_at = asset_info['destination']
    logger.info("Asset stored at: %s.", stored_at)
    return stored_at
Example #2
0
def download_asset(asset_name, ini_dir=None, section=None, ddir=None):
    provider_dirs = asset.get_test_provider_subdirs(backend="spice")[0]
    if ini_dir:
        provider_dirs.insert(0, ini_dir)
    logger.debug("Provider_dirs: %s.", repr(provider_dirs))
    fname = "%s.ini" % asset_name
    for d in os.walk(provider_dirs):
        d = d[0]
        ini_file = os.path.join(d, fname)
        if os.path.isfile(ini_file):
            asset_dir = d
            break
    assert os.path.isfile(ini_file), "Cannot find %s.ini file." % asset_name
    logger.info("Section: %s", section)
    asset_info = asset.get_asset_info(asset_name,
                                      ini_dir=asset_dir,
                                      section=section)
    if ddir:
        dst_file = os.path.basename(asset_info['destination'])
        asset_info['destination'] = os.path.join(ddir, dst_file)
    asset.download_file(asset_info)
    stored_at = asset_info['destination']
    logger.info("Asset stored at: %s.", stored_at)
    return stored_at
Example #3
0
        if not os.path.exists(mount_dest_dir):
            raise error.TestError('Failed to create NFS share dir %s' %
                                  mount_dest_dir)

        error.context("Mount the NFS share directory")
        if not utils_misc.mount(src, mount_dest_dir, 'nfs', 'ro'):
            raise error.TestError('Could not mount NFS share %s to %s' %
                                  (src, mount_dest_dir))

        error.context("Check the existence of source image")
        src_path = '%s/%s.%s' % (mount_dest_dir, asset_name, params['image_format'])
        asset_info = asset.get_file_asset(asset_name, src_path, dst_path)
        if asset_info is None:
            raise error.TestError('Could not find %s' % image)
    else:
        asset_info = asset.get_asset_info(asset_name)

    # Do not force extraction if integrity information is available
    if asset_info['sha1_url']:
        force = params.get("force_copy", "no") == "yes"
    else:
        force = params.get("force_copy", "yes") == "yes"

    try:
        error.context("Copy image '%s'" % image, logging.info)
        if utils.is_url(asset_info['url']):
            asset.download_file(asset_info, interactive=False, force=force)
        else:
            utils.get_file(asset_info['url'], asset_info['destination'])

    finally:
Example #4
0
        if not os.path.exists(mount_dest_dir):
            raise error.TestError('Failed to create NFS share dir %s' %
                                  mount_dest_dir)

        error.context("Mount the NFS share directory")
        if not utils_misc.mount(src, mount_dest_dir, 'nfs', 'ro'):
            raise error.TestError('Could not mount NFS share %s to %s' %
                                  (src, mount_dest_dir))
        src_path = '%s/%s.%s' % (mount_dest_dir, asset_name,
                                 params['image_format'])
        asset_info = asset.get_file_asset(asset_name, src_path, dst_path)
        if asset_info is None:
            raise error.TestError('Could not find %s' % image)
    else:
        asset_info = asset.get_asset_info(asset_name)

    # Do not force extraction if integrity information is available
    if asset_info['sha1_url']:
        force = params.get("force_copy", "no") == "yes"
    else:
        force = params.get("force_copy", "yes") == "yes"

    try:
        asset.download_file(asset_info, interactive=False, force=force)

    finally:
        if params.get("sub_type"):
            params['image_name'] += "-error"
            params['boot_once'] = "c"
            vm.create(params=params)