start work on borgmatic config bootstrap command
This commit is contained in:
parent
ee32b076eb
commit
2241de11c0
1 changed files with 62 additions and 0 deletions
|
@ -9,6 +9,8 @@ SUBPARSER_ALIASES = {
|
||||||
'compact': [],
|
'compact': [],
|
||||||
'create': ['-C'],
|
'create': ['-C'],
|
||||||
'check': ['-k'],
|
'check': ['-k'],
|
||||||
|
'config': [],
|
||||||
|
'config_bootstrap': [],
|
||||||
'extract': ['-x'],
|
'extract': ['-x'],
|
||||||
'export-tar': [],
|
'export-tar': [],
|
||||||
'mount': ['-m'],
|
'mount': ['-m'],
|
||||||
|
@ -523,6 +525,66 @@ def make_parsers():
|
||||||
'-h', '--help', action='help', help='Show this help message and exit'
|
'-h', '--help', action='help', help='Show this help message and exit'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
config_parser = subparsers.add_parser(
|
||||||
|
'config',
|
||||||
|
aliases=SUBPARSER_ALIASES['config'],
|
||||||
|
help='Perform configuration file related operations',
|
||||||
|
description='Perform configuration file related operations',
|
||||||
|
add_help=False,
|
||||||
|
parents=[top_level_parser],
|
||||||
|
)
|
||||||
|
|
||||||
|
config_subparsers = config_parser.add_subparsers(
|
||||||
|
title='config subcommands',
|
||||||
|
description='Valid subcommands for config',
|
||||||
|
help='Additional help',
|
||||||
|
)
|
||||||
|
|
||||||
|
config_bootstrap_parser = config_subparsers.add_parser(
|
||||||
|
'bootstrap',
|
||||||
|
aliases=SUBPARSER_ALIASES['config_bootstrap'],
|
||||||
|
help='Extract files from a borgmatic created repository to the current directory',
|
||||||
|
description='Extract a named archive from a borgmatic created repository to the current directory without a configuration file',
|
||||||
|
add_help=False,
|
||||||
|
parents=[config_parser],
|
||||||
|
)
|
||||||
|
config_bootstrap_group = config_bootstrap_parser.add_argument_group('config bootstrap arguments')
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--repository',
|
||||||
|
help='Path of repository to extract',
|
||||||
|
required=True,
|
||||||
|
)
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--archive', help='Name of archive to extract, defaults to "latest"'
|
||||||
|
)
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--path',
|
||||||
|
'--restore-path',
|
||||||
|
metavar='PATH',
|
||||||
|
nargs='+',
|
||||||
|
dest='paths',
|
||||||
|
help='Paths to extract from archive, defaults to the entire archive',
|
||||||
|
)
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--destination',
|
||||||
|
metavar='PATH',
|
||||||
|
dest='destination',
|
||||||
|
help='Directory to extract files into, defaults to the current directory',
|
||||||
|
)
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--strip-components',
|
||||||
|
type=lambda number: number if number == 'all' else int(number),
|
||||||
|
metavar='NUMBER',
|
||||||
|
help='Number of leading path components to remove from each extracted path or "all" to strip all leading path components. Skip paths with fewer elements',
|
||||||
|
)
|
||||||
|
config_bootstrap_group.add_argument(
|
||||||
|
'--progress',
|
||||||
|
dest='progress',
|
||||||
|
default=False,
|
||||||
|
action='store_true',
|
||||||
|
help='Display progress for each file as it is extracted',
|
||||||
|
)
|
||||||
|
|
||||||
export_tar_parser = subparsers.add_parser(
|
export_tar_parser = subparsers.add_parser(
|
||||||
'export-tar',
|
'export-tar',
|
||||||
aliases=SUBPARSER_ALIASES['export-tar'],
|
aliases=SUBPARSER_ALIASES['export-tar'],
|
||||||
|
|
Loading…
Reference in a new issue