From 563979a7ddc8bb5641f2349d59199e220c04c402 Mon Sep 17 00:00:00 2001 From: Spitap Date: Wed, 27 Jul 2022 15:51:22 +0200 Subject: [PATCH] fixed mail backup/restore --- modoboa_installer/scripts/backup.py | 4 ++-- modoboa_installer/scripts/dovecot.py | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/modoboa_installer/scripts/backup.py b/modoboa_installer/scripts/backup.py index a3717b7..c2d4b99 100644 --- a/modoboa_installer/scripts/backup.py +++ b/modoboa_installer/scripts/backup.py @@ -31,7 +31,7 @@ class Backup(): def __init__(self, config, bashArg, nomail): self.config = config self.destinationPath = "" - self.BACKUPDIRECTORY = ["mails/", "custom/", "databases/"] + self.BACKUPDIRECTORY = ["custom/", "databases/"] self.nomail = nomail self.isBash = False self.bash = "" @@ -126,7 +126,7 @@ class Backup(): f" ({home_path}) seems not right...", utils.RED) else: - dst = self.destinationPath + self.BACKUPDIRECTORY[0] + "vmail/" + dst = self.destinationPath + "mails/" if os.path.exists(dst): shutil.rmtree(dst) diff --git a/modoboa_installer/scripts/dovecot.py b/modoboa_installer/scripts/dovecot.py index c5a3e45..77b6303 100644 --- a/modoboa_installer/scripts/dovecot.py +++ b/modoboa_installer/scripts/dovecot.py @@ -90,7 +90,11 @@ class Dovecot(base.Installer): """Additional tasks.""" if self.restore and len(os.listdir(self.restore + "mails")) > 0: utils.printcolor("Copying mail backup over dovecot directory", utils.MAGENTA) - shutil.copytree(self.restore+"mails/vmails", self.home_dir, dirs_exist_ok=True) + + if os.path.exists(self.home_dir): + shutil.rmtree(self.home_dir) + + shutil.copytree(self.restore+"mails/", self.home_dir) elif self.restore: utils.printcolor("It seems that mails were not backed up, skipping mail restoration.", utils.MAGENTA)