diff options
author | Simon Glass | 2023-09-23 13:44:10 -0600 |
---|---|---|
committer | Simon Glass | 2023-10-04 09:25:21 -0600 |
commit | 6b25d21c8657c4c72dacbec547f560eb8579199e (patch) | |
tree | e62d089cf38826d92c00c99a79d9bd6540ac1798 | |
parent | 15f19ab50188d426966e8232052189d4b263f9b9 (diff) |
moveconfig: Show failures in progress
Show the number of accumulated failures when processing. Use a shorter
format with colour.
An unwanted space appears before the defconfig name on every item except
the last. Fix that while we are here.
Signed-off-by: Simon Glass <sjg@chromium.org>
-rwxr-xr-x | tools/moveconfig.py | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/tools/moveconfig.py b/tools/moveconfig.py index 9e9cb672a96..2a4badf8649 100755 --- a/tools/moveconfig.py +++ b/tools/moveconfig.py @@ -241,24 +241,36 @@ class Progress: """Progress Indicator""" - def __init__(self, total): + def __init__(self, col, total): """Create a new progress indicator. Args: - total: A number of defconfig files to process. + color_enabled (bool): True for colour output + total (int): A number of defconfig files to process. """ + self.col = col self.current = 0 + self.good = 0 self.total = total - def inc(self): - """Increment the number of processed defconfig files.""" + def inc(self, success): + """Increment the number of processed defconfig files. + Args: + success (bool): True if processing succeeded + """ + self.good += success self.current += 1 def show(self): """Display the progress.""" if self.current != self.total: - print(f' {self.current} defconfigs out of {self.total}\r', end=' ') + line = self.col.build(self.col.GREEN, f'{self.good:5d}') + line += self.col.build(self.col.RED, + f'{self.current - self.good:5d}') + line += self.col.build(self.col.MAGENTA, + f'/{self.total - self.current}') + print(f'{line} \r', end='') sys.stdout.flush() @@ -578,7 +590,7 @@ class Slot: # Record the failed board. self.failed_boards.add(self.defconfig) - self.progress.inc() + self.progress.inc(success) self.progress.show() self.state = STATE_IDLE @@ -729,7 +741,7 @@ def move_config(toolchains, args, db_queue, col): else: defconfigs = get_all_defconfigs() - progress = Progress(len(defconfigs)) + progress = Progress(col, len(defconfigs)) slots = Slots(toolchains, args, progress, reference_src_dir, db_queue, col) # Main loop to process defconfig files: |