From 956c4a08afd8aac72a7af6199656c12ce5d12a69 Mon Sep 17 00:00:00 2001 From: Guba Sándor <guba.sandor@cloud.bme.hu> Date: Wed, 16 Apr 2014 15:58:16 +0200 Subject: [PATCH] instance: removed InstanceTemplate clone method --- circle/vm/models/instance.py | 33 --------------------------------- 1 file changed, 33 deletions(-) diff --git a/circle/vm/models/instance.py b/circle/vm/models/instance.py index b0a5085..bf13fc0 100644 --- a/circle/vm/models/instance.py +++ b/circle/vm/models/instance.py @@ -161,39 +161,6 @@ class InstanceTemplate(AclBase, VirtualMachineDescModel, TimeStampedModel): if is_new: self.set_level(self.owner, 'owner') - def clone(self, user=None, **kwargs): - """Cloning a Template to a new Template. - - It returns the new Template object. - Disk cloning handled paralell and asynchronusly. - """ - import copy - tmpl = copy.deepcopy(self) - tmpl.name = "Cloned from " + self.name - tmpl.pk = None - tmpl.full_clean() # Avoiding database errors. - tmpl.save() - - def __clone_disk(disk): - base = None - if disk.type == "iso": - base = disk - cloned_disk = Disk.create(datastore=disk.datastore, - name=disk.name, size=disk.size, - type=disk.type, base=base) - #Paralell cloning disks - disk.clone_async(cloned_disk, user=user) - return cloned_disk - try: - tmpl.disks.add(*[__clone_disk(disk) - for disk in self.disks.all()]) - tmpl.interface_set.add(*self.interface_set.all()) - except: - tmpl.delete() - raise - else: - return tmpl - @permalink def get_absolute_url(self): return ('dashboard.views.template-detail', None, {'pk': self.pk}) -- libgit2 0.26.0