From 230445783a3279744d6c75ef0bb8fc605d9dbbbd Mon Sep 17 00:00:00 2001 From: Silthus Date: Mon, 16 Nov 2020 12:52:59 +0100 Subject: [PATCH] feat: backup each container with its own path --- src/restic_compose_backup/cli.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/restic_compose_backup/cli.py b/src/restic_compose_backup/cli.py index 42e3d4a..1573dbc 100644 --- a/src/restic_compose_backup/cli.py +++ b/src/restic_compose_backup/cli.py @@ -205,17 +205,19 @@ def start_backup_process(config, containers): exit(1) if has_volumes: - try: - logger.info('Backing up volumes') - vol_result = restic.backup_files(config.repository, source='/volumes') - logger.debug('Volume backup exit code: %s', vol_result) - if vol_result != 0: - logger.error('Volume backup exited with non-zero code: %s', vol_result) + logger.info('Backing up volumes') + for volume in [f.path for f in os.scandir('/volumes') if f.is_dir()]: + try: + logger.info('Backing up %s', volume) + vol_result = restic.backup_files(config.repository, source=volume) + logger.debug('Volume backup exit code: %s', vol_result) + if vol_result != 0: + logger.error('Volume backup exited with non-zero code: %s', vol_result) + errors = True + except Exception as ex: + logger.error('Exception raised during volume backup') + logger.exception(ex) errors = True - except Exception as ex: - logger.error('Exception raised during volume backup') - logger.exception(ex) - errors = True # back up databases logger.info('Backing up databases')