1 # Copyright 2017 ZTE Corporation.
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 from django.db import models
17 class NfInstModel(models.Model):
21 nfinstid = models.CharField(db_column='NFINSTID', max_length=200, primary_key=True)
22 mnfinstid = models.CharField(db_column='M_NFINSTID', max_length=200, blank=True, null=True)
23 nf_name = models.CharField(db_column='NFNAME', max_length=100, blank=True, null=True) #CreateVnfRequest.vnfInstanceName
24 template_id = models.CharField(db_column='TEMPLATEID', max_length=200, blank=True, null=True)
25 vnf_id = models.CharField(db_column='VNFID', max_length=200, blank=True, null=True)
26 package_id = models.CharField(db_column='PACKAGEID', max_length=200, blank=True, null=True)
27 vnfm_inst_id = models.CharField(db_column='VNFMINSTID', max_length=200, blank=True, null=True)
28 multivim = models.IntegerField(db_column='MULTIVIM', default=0)
29 ns_inst_id = models.CharField(db_column='NSINSTID', max_length=200, blank=True, null=True)
30 status = models.CharField(db_column='STATUS', max_length=20, blank=True, null=True)
31 flavour_id = models.CharField(db_column='FLAVOURID', max_length=200, blank=True, null=True) #InstantiateVnfRequest.flavourId
32 vnf_level = models.CharField(db_column='VNFLEVEL', max_length=200, blank=True, null=True) #InstantiateVnfRequest.instantiationLevelId
33 location = models.CharField(db_column='LOCATION', max_length=200, blank=True, null=True)
34 deploy_environment = models.CharField(db_column='DEPLOYENVIRONMENT', max_length=100, blank=True, null=True)
35 max_vm = models.IntegerField(db_column='MAXVM', blank=True, null=True)
36 max_cpu = models.IntegerField(db_column='MAXCPU', blank=True, null=True)
37 max_ram = models.IntegerField(db_column='MAXRAM', blank=True, null=True)
38 max_hd = models.IntegerField(db_column='MAXHD', blank=True, null=True)
39 max_shd = models.IntegerField(db_column='MAXSHD', blank=True, null=True)
40 max_net = models.IntegerField(db_column='MAXNET', blank=True, null=True)
41 version = models.CharField(db_column='VERSION', max_length=255, null=True)
42 vendor = models.CharField(db_column='VENDOR', max_length=255, null=True, blank=True)
43 producttype = models.CharField(db_column='PRODUCTTYPE', max_length=255, null=True)
44 netype = models.CharField(db_column='NETYPE', max_length=255, null=True)
45 vnfd_model = models.TextField(db_column='VNFDMODEL', max_length=20000, blank=True, null=True)
46 input_params = models.TextField(db_column='INPUTPARAMS', max_length=2000, blank=True, null=True) #InstantiateVnfRequest.additionalParams
47 scale_params = models.TextField(db_column='SCALEPARAMS', max_length=2000, null=True, blank=True)
48 create_time = models.CharField(db_column='CREATETIME', max_length=200, null=True, blank=True)
49 lastuptime = models.CharField(db_column='LASTUPTIME', max_length=200, blank=True, null=True)
50 extension = models.TextField(db_column='EXTENSION', max_length=65535, blank=True, null=True)
51 initallocatedata = models.TextField(db_column='INITALLOCATEDATA', max_length=20000, blank=True, null=True)
52 predefinedvm = models.TextField(db_column='PREDEFINEDVM', max_length=65535, blank=True, null=True)
53 vnfextendtype = models.CharField(db_column='VNFEXTENDTYPE', max_length=255, null=True)
55 instantiationState = models.CharField(db_column='INSTANTIATIONSTATE', max_length=200, blank=True, null=True)
56 nf_desc = models.CharField(db_column='VNFINSTANCEDESC', max_length=200, blank=True, null=True)
57 vnfdid = models.CharField(db_column='VNFDID', max_length=200, blank=True, null=True)
58 vnfSoftwareVersion = models.CharField(db_column='VNFSOFTWAREVER', max_length=200, blank=True, null=True)
59 vnfConfigurableProperties = models.TextField(db_column='VNFCONFIGURABLEPROPERTIES', max_length=20000, blank=True, null=True)
60 localizationLanguage = models.CharField(db_column='LOCALIZATIONLANGUAGE', max_length=255, null=True)
62 class JobModel(models.Model):
68 jobid = models.CharField(db_column='JOBID', primary_key=True, max_length=255)
69 jobtype = models.CharField(db_column='JOBTYPE', max_length=255)
70 jobaction = models.CharField(db_column='JOBACTION', max_length=255)
71 resid = models.CharField(db_column='RESID', max_length=255)
72 status = models.IntegerField(db_column='STATUS', null=True, blank=True)
73 starttime = models.CharField(db_column='STARTTIME', max_length=255, null=True, blank=True)
74 endtime = models.CharField(db_column='ENDTIME', max_length=255, null=True, blank=True)
75 progress = models.IntegerField(db_column='PROGRESS', null=True, blank=True)
76 user = models.CharField(db_column='USER', max_length=255, null=True, blank=True)
77 parentjobid = models.CharField(db_column='PARENTJOBID', max_length=255, null=True, blank=True)
78 resname = models.CharField(db_column='RESNAME', max_length=255, null=True, blank=True)
82 return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
84 class JobStatusModel(models.Model):
86 db_table = 'JOB_STATUS'
90 indexid = models.IntegerField(db_column='INDEXID')
91 jobid = models.CharField(db_column='JOBID', max_length=255)
92 status = models.CharField(db_column='STATUS', max_length=255)
93 progress = models.IntegerField(db_column='PROGRESS', null=True, blank=True)
94 descp = models.CharField(db_column='DESCP', max_length=1024)
95 errcode = models.CharField(db_column='ERRCODE', max_length=255, null=True, blank=True)
96 addtime = models.CharField(db_column='ADDTIME', max_length=255, null=True, blank=True)
100 return json.dumps(dict([(attr, getattr(self, attr)) for attr in [f.name for f in self._meta.fields]]))
102 class NfvoRegInfoModel(models.Model):
104 db_table = 'NFVOREGINFO'
106 nfvoid = models.CharField(max_length=255, primary_key=True, db_column='NFVOID')
107 vnfminstid = models.CharField(max_length=255, db_column='VNFMINSTID')
108 apiurl = models.CharField(max_length=255, db_column='URL')
109 nfvouser = models.CharField(max_length=255, db_column='USERNAME', null=True)
110 nfvopassword = models.CharField(max_length=255, db_column='PASSWD', null=True)
111 authtype = models.IntegerField(db_column='AUTHTYPE', default=2)
112 clientcert = models.CharField(max_length=255, db_column='CLIENTCERT', null=True)
113 servercert = models.CharField(max_length=255, db_column='SERVERCERT', null=True)
114 regtime = models.CharField(max_length=255, db_column='REGTIME')