mirror of
https://github.com/openSUSE/osc.git
synced 2025-10-04 16:49:20 +02:00
move missing pb module logic to meter.py
This commit is contained in:
@@ -7266,15 +7266,7 @@ Please submit there instead, or use --nodevelproject to force direct submission.
|
|||||||
print('no binaries found: Either the package %s ' \
|
print('no binaries found: Either the package %s ' \
|
||||||
'does not exist or no binaries have been built.' % pac, file=sys.stderr)
|
'does not exist or no binaries have been built.' % pac, file=sys.stderr)
|
||||||
continue
|
continue
|
||||||
progress_obj = None
|
|
||||||
if not opts.quiet:
|
|
||||||
try:
|
|
||||||
from .meter import TextMeter
|
|
||||||
progress_obj = TextMeter()
|
|
||||||
except ImportError as e:
|
|
||||||
print('progressbar not installed. Please install it. ' \
|
|
||||||
'Will continue without progressbar')
|
|
||||||
progress_obj = None
|
|
||||||
for i in binaries:
|
for i in binaries:
|
||||||
if binary != None and binary != i.name:
|
if binary != None and binary != i.name:
|
||||||
continue
|
continue
|
||||||
@@ -7298,7 +7290,7 @@ Please submit there instead, or use --nodevelproject to force direct submission.
|
|||||||
package = pac,
|
package = pac,
|
||||||
target_filename = fname,
|
target_filename = fname,
|
||||||
target_mtime = i.mtime,
|
target_mtime = i.mtime,
|
||||||
progress_meter = progress_obj)
|
progress_meter = opts.quiet)
|
||||||
|
|
||||||
|
|
||||||
@cmdln.option('-b', '--bugowner', action='store_true',
|
@cmdln.option('-b', '--bugowner', action='store_true',
|
||||||
|
@@ -4655,13 +4655,17 @@ def get_binary_file(apiurl, prj, repo, arch,
|
|||||||
package = None,
|
package = None,
|
||||||
target_filename = None,
|
target_filename = None,
|
||||||
target_mtime = None,
|
target_mtime = None,
|
||||||
progress_meter = None):
|
progress_meter = False):
|
||||||
|
progress_obj = None
|
||||||
|
if progress_meter:
|
||||||
|
from .meter import TextMeter
|
||||||
|
progress_obj = TextMeter()
|
||||||
|
|
||||||
target_filename = target_filename or filename
|
target_filename = target_filename or filename
|
||||||
|
|
||||||
where = package or '_repository'
|
where = package or '_repository'
|
||||||
u = makeurl(apiurl, ['build', prj, repo, arch, where, filename])
|
u = makeurl(apiurl, ['build', prj, repo, arch, where, filename])
|
||||||
download(u, target_filename, progress_meter, target_mtime)
|
download(u, target_filename, progress_obj, target_mtime)
|
||||||
if target_filename.endswith('.AppImage'):
|
if target_filename.endswith('.AppImage'):
|
||||||
os.chmod(target_filename, 0o755)
|
os.chmod(target_filename, 0o755)
|
||||||
|
|
||||||
|
22
osc/meter.py
22
osc/meter.py
@@ -3,10 +3,14 @@
|
|||||||
# and distributed under the terms of the GNU General Public Licence,
|
# and distributed under the terms of the GNU General Public Licence,
|
||||||
# either version 2, or (at your option) any later version.
|
# either version 2, or (at your option) any later version.
|
||||||
|
|
||||||
import progressbar as pb
|
try:
|
||||||
|
import progressbar as pb
|
||||||
|
have_pb_module = True
|
||||||
|
except ImportError:
|
||||||
|
have_pb_module = False
|
||||||
|
|
||||||
|
|
||||||
class TextMeter(object):
|
class PBTextMeter(object):
|
||||||
|
|
||||||
def start(self, basename, size=None):
|
def start(self, basename, size=None):
|
||||||
if size is None:
|
if size is None:
|
||||||
@@ -24,4 +28,18 @@ class TextMeter(object):
|
|||||||
def end(self):
|
def end(self):
|
||||||
self.bar.finish()
|
self.bar.finish()
|
||||||
|
|
||||||
|
class NoPBTextMeter(object):
|
||||||
|
def start(self, *args, **kwargs):
|
||||||
|
print('Please install the progressbar module...')
|
||||||
|
|
||||||
|
def update(self, *args, **kwargs):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def end(self, *args, **kwargs):
|
||||||
|
pass
|
||||||
|
|
||||||
|
if have_pb_module:
|
||||||
|
TextMeter = PBTextMeter
|
||||||
|
else:
|
||||||
|
TextMeter = NoPBTextMeter
|
||||||
# vim: sw=4 et
|
# vim: sw=4 et
|
||||||
|
Reference in New Issue
Block a user