Add Heal Api in GVNFM
[vfc/gvnfm/vnflcm.git] / lcm / lcm / pub / database / models.py
index e01e11f..3ac4a83 100644 (file)
@@ -11,6 +11,7 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
+
 from django.db import models
 
 
@@ -20,6 +21,7 @@ class NfInstModel(models.Model):
 
     nfinstid = models.CharField(db_column='NFINSTID', max_length=200, primary_key=True)
     nf_name = models.CharField(db_column='NFNAME', max_length=100, blank=True, null=True)  # CreateVnfRequest.vnfInstanceName
+    vnfminstid = models.CharField(max_length=255, db_column='VNFMINSTID')
     package_id = models.CharField(db_column='PACKAGEID', max_length=200, blank=True, null=True)
     status = models.CharField(db_column='STATUS', max_length=20, blank=True, null=True)
     flavour_id = models.CharField(db_column='FLAVOURID', max_length=200, blank=True, null=True)  # InstantiateVnfRequest.flavourId
@@ -37,6 +39,10 @@ class NfInstModel(models.Model):
     vnfSoftwareVersion = models.CharField(db_column='VNFSOFTWAREVER', max_length=200, blank=True, null=True)
     vnfConfigurableProperties = models.TextField(db_column='VNFCONFIGURABLEPROPERTIES', max_length=20000, blank=True, null=True)
     localizationLanguage = models.CharField(db_column='LOCALIZATIONLANGUAGE', max_length=255, null=True)
+    operationState = models.CharField(db_column='OPERATIONSTATE', max_length=255, null=True)
+    resInfo = models.TextField(db_column='RESINFO', max_length=20000, blank=True, null=True)
+    vimInfo = models.TextField(db_column='VIMINFO', max_length=20000, blank=True, null=True)
+
 
 class JobModel(models.Model):
     class Meta:
@@ -60,6 +66,7 @@ class JobModel(models.Model):
         import json
         return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
 
+
 class JobStatusModel(models.Model):
     class Meta:
         db_table = 'JOB_STATUS'
@@ -78,6 +85,7 @@ class JobStatusModel(models.Model):
         import json
         return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
 
+
 class NfvoRegInfoModel(models.Model):
     class Meta:
         db_table = 'NFVOREGINFO'
@@ -92,13 +100,14 @@ class NfvoRegInfoModel(models.Model):
     servercert = models.CharField(max_length=255, db_column='SERVERCERT', null=True)
     regtime = models.CharField(max_length=255, db_column='REGTIME')
 
+
 class StorageInstModel(models.Model):
     class Meta:
         db_table = 'STORAGEINST'
 
     storageid = models.CharField(db_column='STORAGEID', primary_key=True, max_length=255)
     vimid = models.CharField(db_column='VIMID', max_length=255)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     insttype = models.IntegerField(db_column='INSTTYPE')
     instid = models.CharField(db_column='INSTID', max_length=255)
     name = models.CharField(db_column='NAME', max_length=255, null=True)
@@ -115,6 +124,7 @@ class StorageInstModel(models.Model):
     create_time = models.CharField(db_column='CREATETIME', max_length=200, null=True, blank=True)
     nodeId = models.CharField(db_column='NODEID', max_length=255, null=True)
 
+
 class VmInstModel(models.Model):
     class Meta:
         db_table = 'VMINST'
@@ -122,7 +132,7 @@ class VmInstModel(models.Model):
     vmid = models.CharField(db_column='VMID', primary_key=True, max_length=255)
     vimid = models.CharField(db_column='VIMID', max_length=255)
     tenant = models.CharField(db_column='TENANT', max_length=255, null=True)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     vmname = models.CharField(db_column='VMNAME', max_length=255)
     nic_array = models.CharField(db_column='NICARRAY', max_length=255)
     metadata = models.CharField(db_column='METADATA', max_length=255)
@@ -138,6 +148,7 @@ class VmInstModel(models.Model):
     instid = models.CharField(db_column='INSTID', max_length=255)
     nodeId = models.CharField(db_column='NODEID', max_length=255, null=True)
 
+
 class VNFCInstModel(models.Model):
     class Meta:
         db_table = 'VNFCINST'
@@ -149,33 +160,35 @@ class VNFCInstModel(models.Model):
     vmid = models.CharField(db_column='VMID', max_length=255)
     is_predefined = models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)
 
+
 class FlavourInstModel(models.Model):
     class Meta:
         db_table = 'FLAVOURINST'
 
     flavourid = models.CharField(db_column='FLAVOURID', max_length=255, primary_key=True)
     vimid = models.CharField(db_column='VIMID', max_length=255)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     name = models.CharField(db_column='NAME', max_length=255)
     tenant = models.CharField(db_column='TENANT', max_length=255, null=True)
-    vcpu = models.IntegerField(db_column='VCPU')
-    memory = models.IntegerField(db_column='MEMORY')
-    disk = models.IntegerField(db_column='DISK')
-    ephemeral = models.IntegerField(db_column='EPHEMERAL')
-    swap = models.IntegerField(db_column='SWAP')
-    isPublic = models.IntegerField(db_column='ISPUBLIC')
-    extraspecs = models.CharField(db_column='EXTRASPECS', max_length=255)
+    vcpu = models.IntegerField(db_column='VCPU', null=True)
+    memory = models.IntegerField(db_column='MEMORY', null=True)
+    disk = models.IntegerField(db_column='DISK', null=True)
+    ephemeral = models.IntegerField(db_column='EPHEMERAL', null=True)
+    swap = models.IntegerField(db_column='SWAP', null=True)
+    isPublic = models.IntegerField(db_column='ISPUBLIC', null=True)
+    extraspecs = models.TextField(db_column='EXTRASPECS', max_length=4096)
     instid = models.CharField(db_column='INSTID', max_length=255)
     create_time = models.CharField(db_column='CREATETIME', max_length=200, null=True, blank=True)
     is_predefined = models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)
 
+
 class NetworkInstModel(models.Model):
     class Meta:
         db_table = 'NETWORKINST'
 
     networkid = models.CharField(db_column='NETWORKID', primary_key=True, max_length=255)
     vimid = models.CharField(db_column='VIMID', max_length=255)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     insttype = models.IntegerField(db_column='INSTTYPE')
     instid = models.CharField(db_column='INSTID', max_length=255)
     name = models.CharField(db_column='NAME', max_length=255)
@@ -195,13 +208,14 @@ class NetworkInstModel(models.Model):
     routerExternal = models.IntegerField(db_column='ROUTEREXTERNAL', default=0, null=True)
     nodeId = models.CharField(db_column='NODEID', max_length=255, null=True)
 
+
 class SubNetworkInstModel(models.Model):
     class Meta:
         db_table = 'SUBNETWORKINST'
 
     subnetworkid = models.CharField(db_column='SUBNETWORKID', primary_key=True, max_length=255)
     vimid = models.CharField(db_column='VIMID', max_length=255)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     networkid = models.CharField(db_column='NETWORKID', max_length=255)
     insttype = models.IntegerField(db_column='INSTTYPE')
     instid = models.CharField(db_column='INSTID', max_length=255)
@@ -219,6 +233,7 @@ class SubNetworkInstModel(models.Model):
     hostRoutes = models.TextField(db_column='HOSTROUTES', max_length=1024)
     allocationPools = models.TextField(db_column='ALLOCATIONPOOLS', max_length=1024)
 
+
 class VLInstModel(models.Model):
     class Meta:
         db_table = 'VLINST'
@@ -234,6 +249,7 @@ class VLInstModel(models.Model):
     vimid = models.CharField(db_column='VIMID', max_length=255)
     tenant = models.CharField(db_column='TENANT', max_length=50)
 
+
 class PortInstModel(models.Model):
     class Meta:
         db_table = 'PORTINST'
@@ -242,7 +258,7 @@ class PortInstModel(models.Model):
     networkid = models.CharField(db_column='NETWORKID', max_length=255)
     subnetworkid = models.CharField(db_column='SUBNETWORKID', max_length=255, null=True)
     vimid = models.CharField(db_column='VIMID', max_length=255)
-    resouceid = models.CharField(db_column='RESOURCEID', max_length=255)
+    resourceid = models.CharField(db_column='RESOURCEID', max_length=255)
     name = models.CharField(db_column='NAME', max_length=255, null=True)
     insttype = models.IntegerField(db_column='INSTTYPE')
     instid = models.CharField(db_column='INSTID', max_length=255)
@@ -265,6 +281,7 @@ class PortInstModel(models.Model):
     is_predefined = models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)
     nodeId = models.CharField(db_column='NODEID', max_length=255, null=True)
 
+
 class CPInstModel(models.Model):
     class Meta:
         db_table = 'CPINST'
@@ -280,35 +297,41 @@ class CPInstModel(models.Model):
     relatedcp = models.CharField(db_column='RELATEDCP', max_length=255, blank=True, null=True)
     relatedport = models.CharField(db_column='RELATEDPORT', max_length=255, blank=True, null=True)
 
-class VimModel(models.Model):
-    vimid = models.IntegerField(db_column='CMSERVERID', primary_key=True)
-    name = models.CharField(db_column='NAME', max_length=255, blank=True, null=True)
-    type = models.CharField(db_column='CMSTYPE', max_length=255, blank=True, null=True)
-    imageurl = models.CharField(db_column='IMAGEURL', max_length=1024, blank=True, null=True)
-    apiurl = models.CharField(db_column='APIURL', max_length=1024, blank=True, null=True)
-    version = models.CharField(db_column='VER', max_length=1024, blank=True, null=True)
-    supportnotification = models.IntegerField(db_column='SUPPORTNOTIFICATION', default=0)
-    longitude = models.CharField(db_column='LONGITUDE', max_length=1024, blank=True, null=True)
-    latitude = models.CharField(db_column='LATITUDE', max_length=1024, blank=True, null=True)
-    grantexclude = models.CharField(db_column='GRANTEXCLUDE', max_length=1, default='0', blank=True, null=True)
-    slalevel = models.IntegerField(db_column='SLALEVEL', default=0)
 
+class SubscriptionModel(models.Model):
     class Meta:
-        db_table = 'CMSSERVER'
-
-    def __unicode__(self):
-        return '%s' % self.name
-
-
-class VimUserModel(models.Model):
+        db_table = 'SUBSCRIPTION'
+    subscription_id = models.CharField(db_column='SUBSCRIPTIONID', max_length=255, primary_key=True)
+    callback_uri = models.CharField(db_column='CALLBACKURI', max_length=255)
+    auth_info = models.TextField(db_column='AUTHINFO', max_length=20000, blank=True, null=True)
+    notification_types = models.TextField(db_column='NOTIFICATIONTYPES',
+                                          null=True)
+    operation_types = models.TextField(db_column='OPERATIONTYPES',
+                                       null=True)
+    operation_states = models.TextField(db_column='OPERATIONSTATES',
+                                        null=True)
+    vnf_instance_filter = models.TextField(db_column='VNFINSTANCEFILTER',
+                                           null=True)
+    links = models.TextField(db_column='LINKS', max_length=20000)
+
+
+class VNFLcmOpOccModel(models.Model):
     class Meta:
-        db_table = 'CMSSERVER_USER'
-
-    uuid = models.CharField(db_column='UUID', primary_key=True, max_length=255)
-    vimid = models.IntegerField(db_column='CMSERVERID')
-    username = models.CharField(db_column='USERNAME', max_length=255)
-    password = models.CharField(db_column='PWD', max_length=255, blank=True)
-    defaulttenant = models.CharField(db_column='TENANT', max_length=255, blank=True)
-
-    def __unicode__(self):
-        return '%s' % self.username
\ No newline at end of file
+        db_table = 'VNFLCMOPOCCS'
+
+    id = models.CharField(db_column='ID', max_length=255, primary_key=True)
+    operation_state = models.CharField(db_column='OPERATIONSTATE', null=False, max_length=30)
+    state_entered_time = models.CharField(db_column='STATEENTEREDTIME', null=False, max_length=30)
+    start_time = models.CharField(db_column='STARTTIME', null=False, max_length=30)
+    vnf_instance_id = models.CharField(db_column='VNFINSTANCEID', null=False, max_length=255)
+    grant_id = models.CharField(db_column='GRANTID', null=True, max_length=255)
+    operation = models.CharField(db_column='OPERATION', null=False, max_length=30)
+    is_automatic_invocation = models.CharField(db_column='ISAUTOMATICINVOCATION', null=False, max_length=5)
+    operation_params = models.TextField(db_column='OPERATIONPARAMS', null=False)
+    is_cancel_pending = models.CharField(db_column='ISCANCELPENDING', null=False, max_length=5)
+    cancel_mode = models.TextField(db_column='CANCELMODE', null=True)
+    error = models.TextField(db_column='ERROR', null=True)
+    resource_changes = models.TextField(db_column='RESOURCECHANGES', null=True)
+    changed_info = models.TextField(db_column='CHANGEDINFO', null=True)
+    changed_ext_connectivity = models.TextField(db_column='CHANGEDEXTCONNECTIVITY', null=True)
+    links = models.TextField(db_column='LINKS', null=False)