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