Skip to content

Commit

Permalink
Fix restore fail after editing filename (#465)
Browse files Browse the repository at this point in the history
* #434: fix restore fail

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
stan-levend and pre-commit-ci[bot] authored Nov 2, 2022
1 parent af443c5 commit 040a63e
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
10 changes: 6 additions & 4 deletions dbbackup/management/commands/dbrestore.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,17 @@ def handle(self, *args, **options):
self.uncompress = options.get("uncompress")
self.passphrase = options.get("passphrase")
self.interactive = options.get("interactive")
self.database_name, self.database = self._get_database(options)
self.input_database_name = options.get("database")
self.database_name, self.database = self._get_database(
self.input_database_name
)
self.storage = get_storage()
self._restore_backup()
except StorageError as err:
raise CommandError(err) from err

def _get_database(self, options):
def _get_database(self, database_name: str):
"""Get the database to restore."""
database_name = options.get("database")
if not database_name:
if len(settings.DATABASES) > 1:
errmsg = (
Expand All @@ -87,7 +89,7 @@ def _get_database(self, options):
def _restore_backup(self):
"""Restore the specified database."""
input_filename, input_file = self._get_backup_file(
database=self.database_name, servername=self.servername
database=self.input_database_name, servername=self.servername
)
self.logger.info(
"Restoring backup for database '%s' and server '%s'",
Expand Down
6 changes: 4 additions & 2 deletions dbbackup/tests/commands/test_dbrestore.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ def setUp(self):
self.command.interactive = True
self.command.storage = get_storage()
self.command.servername = HOSTNAME
self.command.input_database_name = None
self.command.database_name = "default"
self.command.connector = get_connector("default")
HANDLED_FILES.clean()
Expand Down Expand Up @@ -107,12 +108,12 @@ def setUp(self):
self.command = DbrestoreCommand()

def test_give_db_name(self):
name, db = self.command._get_database({"database": "default"})
name, db = self.command._get_database("default")
self.assertEqual(name, "default")
self.assertEqual(db, settings.DATABASES["default"])

def test_no_given_db(self):
name, db = self.command._get_database({})
name, db = self.command._get_database(None)
self.assertEqual(name, "default")
self.assertEqual(db, settings.DATABASES["default"])

Expand Down Expand Up @@ -143,6 +144,7 @@ def setUp(self):
self.command.storage = get_storage()
self.command.connector = MongoDumpConnector()
self.command.database_name = "mongo"
self.command.input_database_name = None
self.command.servername = HOSTNAME
HANDLED_FILES.clean()
add_private_gpg()
Expand Down

0 comments on commit 040a63e

Please sign in to comment.