Commit d9deb891 by Őry Máté

vm: extract Instance.get_renew_times from .renew

parent 9403e818
...@@ -562,15 +562,23 @@ class Instance(AclBase, VirtualMachineDescModel, TimeStampedModel): ...@@ -562,15 +562,23 @@ class Instance(AclBase, VirtualMachineDescModel, TimeStampedModel):
else: else:
raise Node.DoesNotExist() raise Node.DoesNotExist()
def get_renew_times(self):
"""Returns new suspend and delete times if renew would be called.
"""
return (
timezone.now() + self.lease.suspend_interval,
timezone.now() + self.lease.delete_interval)
def renew(self, which='both'): def renew(self, which='both'):
"""Renew virtual machine instance leases. """Renew virtual machine instance leases.
""" """
if which not in ['suspend', 'delete', 'both']: if which not in ('suspend', 'delete', 'both'):
raise ValueError('No such expiration type.') raise ValueError('No such expiration type.')
if which in ['suspend', 'both']: time_of_suspend, time_of_delete = self.get_renew_times()
self.time_of_suspend = timezone.now() + self.lease.suspend_interval if which in ('suspend', 'both'):
if which in ['delete', 'both']: self.time_of_suspend = time_of_suspend
self.time_of_delete = timezone.now() + self.lease.delete_interval if which in ('delete', 'both'):
self.time_of_delete = time_of_delete
self.save() self.save()
def change_password(self, user=None): def change_password(self, user=None):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment