blob: 0f80bb8ac16160fcf7c484dfef3592bfafccdd70 [file] [log] [blame]
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -04001import os
2from django.db import models
3from core.models import PlCoreBase
Tony Mack336e0f92014-11-30 15:53:08 -05004from core.models import User,Site,Slice,Controller
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -04005from encrypted_fields import EncryptedCharField
Tony Mack336e0f92014-11-30 15:53:08 -05006from core.models import Controller,ControllerLinkManager,ControllerLinkDeletionManager
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -04007
8class UserCredential(PlCoreBase):
Sapan Bhatia475c5972014-11-05 10:32:41 -05009 user = models.ForeignKey(User, related_name='usercredentials', help_text="The User this credential is associated with")
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -040010
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)
14
15
16 def __unicode__(self):
17 return self.name
18
19class SiteCredential(PlCoreBase):
Sapan Bhatia475c5972014-11-05 10:32:41 -050020 site = models.ForeignKey(Site, related_name='sitecredentials', help_text="The User this credential is associated with")
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -040021
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)
25
26
27 def __unicode__(self):
28 return self.name
29
30class SliceCredential(PlCoreBase):
Sapan Bhatia475c5972014-11-05 10:32:41 -050031 slice = models.ForeignKey(Slice, related_name='slicecredentials', help_text="The User this credential is associated with")
Sapan Bhatia7bcec3b2014-09-08 10:42:23 -040032
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)
36
37
38 def __unicode__(self):
39 return self.name
Sapan Bhatia31138dd2014-09-01 01:45:28 -040040
Tony Mack336e0f92014-11-30 15:53:08 -050041class ControllerCredential(PlCoreBase):
42 objects = ControllerLinkManager()
43 deleted_objects = ControllerLinkDeletionManager()
44 controller = models.ForeignKey(Controller, related_name='controllercredentials', help_text="The User this credential is associated with")
Sapan Bhatia31138dd2014-09-01 01:45:28 -040045
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)
49
50
51 def __unicode__(self):
52 return self.name