From 029469d54497dfe6905b3844c6b3bc61977a2e07 Mon Sep 17 00:00:00 2001 From: Abogical Date: Tue, 29 Nov 2016 00:29:01 +0200 Subject: [PATCH 1/2] Let prune accept and pass the progress argument --- src/borg/archiver.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/borg/archiver.py b/src/borg/archiver.py index d444890ac..ac1360710 100644 --- a/src/borg/archiver.py +++ b/src/borg/archiver.py @@ -1024,7 +1024,8 @@ class Archiver: else: if args.output_list: list_logger.info('Pruning archive: %s' % format_archive(archive)) - Archive(repository, key, manifest, archive.name, cache).delete(stats, forced=args.forced) + Archive(repository, key, manifest, archive.name, cache, + progress=args.progress).delete(stats, forced=args.forced) else: if args.output_list: list_logger.info('Keeping archive: %s' % format_archive(archive)) @@ -2244,6 +2245,9 @@ class Archiver: subparser.add_argument('--force', dest='forced', action='store_true', default=False, help='force pruning of corrupted archives') + subparser.add_argument('-p', '--progress', dest='progress', + action='store_true', default=False, + help='show progress display while deleting archives') subparser.add_argument('-s', '--stats', dest='stats', action='store_true', default=False, help='print statistics for the deleted archive') From 0994a0a681154383db1772957401cdece2b60cef Mon Sep 17 00:00:00 2001 From: Abogical Date: Thu, 1 Dec 2016 19:52:17 +0200 Subject: [PATCH 2/2] Let prune --list display archives deleted per total archives --- src/borg/archiver.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/borg/archiver.py b/src/borg/archiver.py index ac1360710..0af64814c 100644 --- a/src/borg/archiver.py +++ b/src/borg/archiver.py @@ -1016,6 +1016,10 @@ class Archiver: stats = Statistics() with Cache(repository, key, manifest, do_files=args.cache_files, lock_wait=self.lock_wait) as cache: list_logger = logging.getLogger('borg.output.list') + if args.output_list: + # set up counters for the progress display + to_delete_len = len(to_delete) + archives_deleted = 0 for archive in archives_checkpoints: if archive in to_delete: if args.dry_run: @@ -1023,7 +1027,9 @@ class Archiver: list_logger.info('Would prune: %s' % format_archive(archive)) else: if args.output_list: - list_logger.info('Pruning archive: %s' % format_archive(archive)) + archives_deleted += 1 + list_logger.info('Pruning archive: %s (%d/%d)' % (format_archive(archive), + archives_deleted, to_delete_len)) Archive(repository, key, manifest, archive.name, cache, progress=args.progress).delete(stats, forced=args.forced) else: