Merge "Fix backup deletion with naive timestamps"

This commit is contained in:
Zuul authored and Gerrit Code Review committed 2026-09-25 06:52:04 +00:00
commit 9fb744390e
3 files changed
+9 -4

No files matched your search

@@ -0,0 +1,6 @@
---
fixes:
- |
Fixes backup deletion failures caused by comparing an offset-aware
current time with an offset-naive backup creation timestamp.
`LP#2166063 <https://bugs.launchpad.net/trove/+bug/2166063>`__
+1 -1
View File
@@ -341,7 +341,7 @@ class Backup(object):
def _delete_resources():
backup = cls.get_by_id(context, backup_id)
if backup.is_running:
delta = (timeutils.utcnow_aware() - backup.created).days
delta = (timeutils.utcnow() - backup.created).days
if delta < CONF.running_backups_expires:
msg = _(
"Backup %s cannot be deleted"
@@ -255,7 +255,7 @@ class BackupDeleteTest(trove_testtools.TestCase):
def test_delete_backup_is_running(self):
backup = MagicMock()
backup.is_running = True
backup.created = datetime.datetime.now(datetime.timezone.utc)
backup.created = timeutils.utcnow()
with patch.object(models.Backup, 'get_by_id', return_value=backup):
self.assertRaises(exception.UnprocessableEntity,
models.Backup.delete, self.context, 'backup_id')
@@ -265,8 +265,7 @@ class BackupDeleteTest(trove_testtools.TestCase):
mock_instance = mock_api.return_value
backup = MagicMock()
backup.is_running = True
backup.created = datetime.datetime.now(
datetime.timezone.utc) - datetime.timedelta(weeks=1)
backup.created = timeutils.utcnow() - datetime.timedelta(weeks=1)
with patch.object(models.Backup, 'get_by_id', return_value=backup):
models.Backup.delete(self.context, 'backup_id')
mock_instance.delete_backup.assert_called_once_with('backup_id')