mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-02-04 08:13:38 +00:00
backups: Check if paths exist before passing them to borgbackup
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
This commit is contained in:
parent
7997835c27
commit
5633fccaa3
@ -41,8 +41,8 @@ def parse_arguments():
|
||||
|
||||
create = subparsers.add_parser('create', help='Create archive')
|
||||
create.add_argument('--name', help='Archive name', required=True)
|
||||
create.add_argument(
|
||||
'--path', help='Paths to include in archive', nargs='+')
|
||||
create.add_argument('--paths', help='Paths to include in archive',
|
||||
nargs='+')
|
||||
|
||||
delete = subparsers.add_parser('delete', help='Delete archive')
|
||||
delete.add_argument('--name', help='Archive name', required=True)
|
||||
@ -90,9 +90,13 @@ def subcommand_list(_):
|
||||
|
||||
def subcommand_create(arguments):
|
||||
"""Create archive."""
|
||||
paths = filter(os.path.exists, arguments.paths)
|
||||
subprocess.run([
|
||||
'borg', 'create', '--json', REPOSITORY + '::' + arguments.name,
|
||||
] + arguments.path, check=True)
|
||||
'borg',
|
||||
'create',
|
||||
'--json',
|
||||
REPOSITORY + '::' + arguments.name,
|
||||
] + list(paths), check=True)
|
||||
|
||||
|
||||
def subcommand_delete(arguments):
|
||||
|
||||
@ -23,18 +23,21 @@ import os
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from .backups import backup_apps
|
||||
from plinth import actions
|
||||
from plinth.menu import main_menu
|
||||
from plinth.modules import udiskie
|
||||
|
||||
from .backups import backup_apps
|
||||
|
||||
version = 1
|
||||
|
||||
managed_packages = ['borgbackup']
|
||||
|
||||
name = _('Backups')
|
||||
|
||||
description = [_('Backups allows creating and managing backup archives.'), ]
|
||||
description = [
|
||||
_('Backups allows creating and managing backup archives.'),
|
||||
]
|
||||
|
||||
service = None
|
||||
|
||||
@ -87,8 +90,8 @@ def _backup_handler(packet):
|
||||
|
||||
paths = packet.directories + packet.files
|
||||
paths.append(manifest_path)
|
||||
actions.superuser_run('backups',
|
||||
['create', '--name', packet.label, '--path'] + paths)
|
||||
actions.superuser_run(
|
||||
'backups', ['create', '--name', packet.label, '--paths'] + paths)
|
||||
|
||||
|
||||
def create_archive(name, app_names):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user