diff --git a/tests/test_urls.py b/tests/test_urls.py index d0017db87..fbc496375 100644 --- a/tests/test_urls.py +++ b/tests/test_urls.py @@ -12,9 +12,9 @@ import unittest from tests import utils +import virtinst.progress from virtinst import Installer from virtinst import Guest -from virtinst import util class _URLTestData(object): @@ -64,7 +64,7 @@ hvmguest.os.os_type = "hvm" xenguest = Guest(testconn) xenguest.os.os_type = "xen" -meter = util.make_meter(quiet=not utils.clistate.debug) +meter = virtinst.progress.make_meter(quiet=not utils.clistate.debug) if utils.clistate.url_skip_libosinfo: os.environ["VIRTINST_TEST_SUITE_FORCE_LIBOSINFO"] = "0" diff --git a/virtinst/cli.py b/virtinst/cli.py index 26328e39e..43b43246d 100644 --- a/virtinst/cli.py +++ b/virtinst/cli.py @@ -451,8 +451,9 @@ def get_console_cb(guest): def get_meter(): + import virtinst.progress quiet = (get_global_state().quiet or in_testsuite()) - return util.make_meter(quiet=quiet) + return virtinst.progress.make_meter(quiet=quiet) ########################### diff --git a/virtinst/cloner.py b/virtinst/cloner.py index d8c26143d..980d23c3c 100644 --- a/virtinst/cloner.py +++ b/virtinst/cloner.py @@ -13,6 +13,7 @@ import os import libvirt +from . import progress from . import util from .guest import Guest from .devices import DeviceInterface @@ -443,7 +444,7 @@ class Cloner(object): the new clone xml. """ logging.debug("Starting duplicate.") - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) dom = None try: diff --git a/virtinst/devices/disk.py b/virtinst/devices/disk.py index e78cd2b02..41fc039a1 100644 --- a/virtinst/devices/disk.py +++ b/virtinst/devices/disk.py @@ -9,7 +9,7 @@ import logging from .. import diskbackend -from .. import util +from .. import progress from .device import Device, DeviceSeclabel from ..xmlbuilder import XMLBuilder, XMLChildProperty, XMLProperty @@ -800,7 +800,7 @@ class DeviceDisk(Device): not self._storage_backend.will_create_storage()): return - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) vol_object = self._storage_backend.create(meter) self.storage_was_created = True if not vol_object: diff --git a/virtinst/installer.py b/virtinst/installer.py index 63fe2e3d8..d51b6ee1b 100644 --- a/virtinst/installer.py +++ b/virtinst/installer.py @@ -9,13 +9,14 @@ import os import logging +from . import progress +from . import unattended +from . import util from .devices import DeviceDisk from .domain import DomainOs from .osdict import OSDB, OsMedia from .installertreemedia import InstallerTreeMedia from .cdrominject import perform_cdrom_injections -from . import unattended -from . import util class Installer(object): @@ -432,7 +433,7 @@ class Installer(object): :param doboot: Boot guest even if it has no install phase """ meter_label = _("Creating domain...") - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) meter.start(size=None, text=meter_label) needs_boot = doboot or self.has_install_phase() diff --git a/virtinst/installertreemedia.py b/virtinst/installertreemedia.py index a46d1ceb5..59ee387e3 100644 --- a/virtinst/installertreemedia.py +++ b/virtinst/installertreemedia.py @@ -7,6 +7,7 @@ import logging import os +from . import progress from . import unattended from . import urldetect from . import urlfetcher @@ -136,7 +137,7 @@ class InstallerTreeMedia(object): ######################## def _get_fetcher(self, guest, meter): - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) if not self._cached_fetcher: scratchdir = InstallerTreeMedia.make_scratchdir(guest) diff --git a/virtinst/kernelupload.py b/virtinst/kernelupload.py index 926210461..ebd9ee942 100644 --- a/virtinst/kernelupload.py +++ b/virtinst/kernelupload.py @@ -7,7 +7,7 @@ import logging import os -from . import util +from . import progress from .devices import DeviceDisk from .storage import StoragePool, StorageVolume @@ -51,7 +51,7 @@ def _upload_file(conn, meter, destpool, src): break data = data[ret:] - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) # Build placeholder volume size = os.path.getsize(src) diff --git a/virtinst/progress.py b/virtinst/progress.py index 03e562052..391ee75c4 100644 --- a/virtinst/progress.py +++ b/virtinst/progress.py @@ -518,3 +518,16 @@ def format_number(number, SI=0, space=' '): fmt = '%.0f%s%s' return(fmt % (float(number or 0), space, symbols[depth])) + + +# virtinst additions +def make_meter(quiet): + if quiet: + return BaseMeter() + return TextMeter(fo=sys.stdout) + + +def ensure_meter(meter): + if meter: + return meter + return make_meter(quiet=True) diff --git a/virtinst/storage.py b/virtinst/storage.py index 2c3e7f047..5e494f555 100644 --- a/virtinst/storage.py +++ b/virtinst/storage.py @@ -10,8 +10,9 @@ import threading import libvirt -from .xmlbuilder import XMLBuilder, XMLChildProperty, XMLProperty +from . import progress from . import util +from .xmlbuilder import XMLBuilder, XMLChildProperty, XMLProperty _DEFAULT_DEV_TARGET = "/dev" @@ -490,7 +491,7 @@ class StoragePool(_StorageObject): logging.debug("Creating storage pool '%s' with xml:\n%s", self.name, xml) - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) try: pool = self.conn.storagePoolDefineXML(xml, 0) @@ -749,7 +750,7 @@ class StorageVolume(_StorageObject): args=(meter,)) t.setDaemon(True) - meter = util.ensure_meter(meter) + meter = progress.ensure_meter(meter) cloneflags = 0 createflags = 0 diff --git a/virtinst/util.py b/virtinst/util.py index b22a8bf5d..926217785 100644 --- a/virtinst/util.py +++ b/virtinst/util.py @@ -6,7 +6,6 @@ # import os -import sys import libvirt @@ -135,19 +134,6 @@ def get_cache_dir(): return os.path.join(ret, "virt-manager") -def ensure_meter(meter): - if meter: - return meter - return make_meter(quiet=True) - - -def make_meter(quiet): - from virtinst import progress - if quiet: - return progress.BaseMeter() - return progress.TextMeter(fo=sys.stdout) - - def get_prop_path(obj, prop_path): """Return value of attribute identified by `prop_path`