from core.models import Site
from core.models import Deployment
from core.models import User
+from core.models import Tag
+from django.contrib.contenttypes import generic
# Create your models here.
class Sliver(PlCoreBase):
node = models.ForeignKey(Node, related_name='slivers')
deploymentNetwork = models.ForeignKey(Deployment, verbose_name='deployment', related_name='sliver_deploymentNetwork')
numberCores = models.IntegerField(verbose_name="Number of Cores", help_text="Number of cores for sliver", default=0)
-
+ tags = generic.GenericRelation(Tag)
def __unicode__(self): return u'%s' % (self.instance_name)
def save(self, *args, **kwds):
if not self.name:
self.name = self.slice.name
- if not hasattr(self, 'os_manager'):
- from openstack.manager import OpenStackManager
- setattr(self, 'os_manager', OpenStackManager())
- self.os_manager.save_sliver(self)
+ if not self.creator and hasattr(self, 'caller'):
+ self.creator = self.caller
super(Sliver, self).save(*args, **kwds)
-
- def delete(self, *args, **kwds):
- if not hasattr(self, 'os_manager'):
- from openstack.manager import OpenStackManager
- setattr(self, 'os_manager', OpenStackManager())
- self.os_manager.delete_sliver(self)
- super(Sliver, self).delete(*args, **kwds)