2 from django.db import models
3 from core.models import PlCoreBase
4 from core.models import User,Site,Slice,Deployment
5 from encrypted_fields import EncryptedCharField
6 from core.models import Deployment,DeploymentLinkManager,DeploymentLinkDeletionManager
8 class UserCredential(PlCoreBase):
9 user = models.ForeignKey(User, related_name='usercredentials', help_text="The User this credential is associated with")
11 name = models.SlugField(help_text="The credential type, e.g. ec2", max_length=128)
12 key_id = models.CharField(help_text="The backend id of this credential", max_length=1024)
13 enc_value = EncryptedCharField(help_text="The key value of this credential", max_length=1024)
16 def __unicode__(self):
19 class SiteCredential(PlCoreBase):
20 site = models.ForeignKey(Site, related_name='sitecredentials', help_text="The User this credential is associated with")
22 name = models.SlugField(help_text="The credential type, e.g. ec2", max_length=128)
23 key_id = models.CharField(help_text="The backend id of this credential", max_length=1024)
24 enc_value = EncryptedCharField(help_text="The key value of this credential", max_length=1024)
27 def __unicode__(self):
30 class SliceCredential(PlCoreBase):
31 slice = models.ForeignKey(Slice, related_name='slicecredentials', help_text="The User this credential is associated with")
33 name = models.SlugField(help_text="The credential type, e.g. ec2", max_length=128)
34 key_id = models.CharField(help_text="The backend id of this credential", max_length=1024)
35 enc_value = EncryptedCharField(help_text="The key value of this credential", max_length=1024)
38 def __unicode__(self):
41 class DeploymentCredential(PlCoreBase):
42 objects = DeploymentLinkManager()
43 deleted_objects = DeploymentLinkDeletionManager()
44 deployment = models.ForeignKey(Deployment, related_name='deploymentcredentials', help_text="The User this credential is associated with")
46 name = models.SlugField(help_text="The credential type, e.g. ec2", max_length=128)
47 key_id = models.CharField(help_text="The backend id of this credential", max_length=1024)
48 enc_value = EncryptedCharField(help_text="The key value of this credential", max_length=1024)
51 def __unicode__(self):