mirror of
https://github.com/mail-in-a-box/mailinabox.git
synced 2024-11-24 02:37:05 +00:00
Add a new backup.py command to print the duplicity command to the console to help debugging
This commit is contained in:
parent
7be687e601
commit
08defb12be
@ -418,6 +418,19 @@ def run_duplicity_restore(args):
|
|||||||
] + args,
|
] + args,
|
||||||
get_duplicity_env_vars(env))
|
get_duplicity_env_vars(env))
|
||||||
|
|
||||||
|
def print_duplicity_command():
|
||||||
|
import shlex
|
||||||
|
env = load_environment()
|
||||||
|
config = get_backup_config(env)
|
||||||
|
backup_cache_dir = os.path.join(env["STORAGE_ROOT"], 'backup', 'cache')
|
||||||
|
for k, v in get_duplicity_env_vars(env).items():
|
||||||
|
print(f"export {k}={shlex.quote(v)}")
|
||||||
|
print("duplicity", "{command}", shlex.join([
|
||||||
|
"--archive-dir", backup_cache_dir,
|
||||||
|
] + get_duplicity_additional_args(env) + [
|
||||||
|
get_duplicity_target_url(config)
|
||||||
|
]))
|
||||||
|
|
||||||
def list_target_files(config):
|
def list_target_files(config):
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
try:
|
try:
|
||||||
@ -624,6 +637,9 @@ if __name__ == "__main__":
|
|||||||
# to duplicity. The restore path should be specified.
|
# to duplicity. The restore path should be specified.
|
||||||
run_duplicity_restore(sys.argv[2:])
|
run_duplicity_restore(sys.argv[2:])
|
||||||
|
|
||||||
|
elif sys.argv[-1] == "--duplicity-command":
|
||||||
|
print_duplicity_command()
|
||||||
|
|
||||||
else:
|
else:
|
||||||
# Perform a backup. Add --full to force a full backup rather than
|
# Perform a backup. Add --full to force a full backup rather than
|
||||||
# possibly performing an incremental backup.
|
# possibly performing an incremental backup.
|
||||||
|
Loading…
Reference in New Issue
Block a user