1 # Copyright 2018 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.
15 from rest_framework import serializers
18 class ResourceSerializer(serializers.Serializer):
19 resourceId = serializers.CharField(help_text="resourceId", required=True)
20 vimId = serializers.CharField(help_text="vimId", required=True)
23 class virtualStorageResourceInfoSerializer(serializers.Serializer):
24 virtualStorageInstanceId = serializers.CharField(help_text="virtualStorageInstanceId", required=True)
25 virtualStorageDescId = serializers.CharField(help_text="virtualStorageDescId", required=True, allow_null=True)
26 storageResource = ResourceSerializer(help_text="storageResource", required=True)
29 class virtualLinkResourceInfoSerializer(serializers.Serializer):
30 virtualLinkInstanceId = serializers.IntegerField(help_text="virtualLinkInstanceId", required=True, allow_null=True)
31 virtualLinkDescId = serializers.IntegerField(help_text="virtualLinkDescId", required=True, allow_null=True)
32 networkResource = ResourceSerializer(help_text="networkResource", required=True, allow_null=True)
35 class vnfcResourceInfoSerializer(serializers.Serializer):
36 vnfcInstanceId = serializers.IntegerField(help_text="vnfcInstanceId", required=True, allow_null=True)
37 vduId = serializers.IntegerField(help_text="vduId", required=True, allow_null=True)
38 storageResourceIds = serializers.IntegerField(help_text="storageResourceIds", required=True, allow_null=True)
39 computeResource = ResourceSerializer(help_text="computeResource", required=True, allow_null=True)
42 class accessInfoSerializer(serializers.Serializer):
43 tenant = serializers.CharField(help_text="tenant", required=True)
44 username = serializers.CharField(help_text="username", required=True)
45 password = serializers.CharField(help_text="password", required=True)
48 class InterfaceInfoSerializer(serializers.Serializer):
49 vimType = serializers.CharField(help_text="vimType", required=True)
50 apiVersion = serializers.CharField(help_text="apiVersion", required=True)
51 protocolType = serializers.ChoiceField(help_text="protocolType", choices=['http', 'https'], required=True)
54 class VmResponseSerializer(serializers.Serializer):
55 vmid = serializers.CharField(help_text="vmid", required=True, allow_null=True)
56 vimid = serializers.CharField(help_text="the vim id", required=True, allow_null=True)
57 resouceid = serializers.CharField(help_text="the resouce id", required=True, allow_null=True)
58 tenant = serializers.CharField(help_text="tenant", required=True, allow_null=True)
59 instid = serializers.CharField(help_text="the inst id", required=True, allow_null=True)
60 vmname = serializers.CharField(help_text="vmname", required=True, allow_null=True)
61 insttype = serializers.IntegerField(help_text="insttype", required=True, allow_null=True)
62 operationalstate = serializers.CharField(help_text="operationalstate", required=True, allow_null=True)
63 is_predefined = serializers.IntegerField(help_text="is_predefined", required=True, allow_null=True)
64 security_groups = serializers.CharField(help_text="security_groups", required=True, allow_null=True)
65 flavor_id = serializers.CharField(help_text="flavor_id", required=True, allow_null=True)
66 availability_zone = serializers.CharField(help_text="availability_zone", required=True, allow_null=True)
67 server_group = serializers.CharField(help_text="server_group", required=True, allow_null=True)
68 volume_array = serializers.CharField(help_text="volume_array", required=True, allow_null=True)
69 metadata = serializers.CharField(help_text="metadata", required=True, allow_null=True)
70 nic_array = serializers.CharField(help_text="nic_array", required=True, allow_null=True)
71 create_time = serializers.CharField(help_text="create_time", required=False, allow_null=True)
72 nodeId = serializers.CharField(help_text="nodeId", required=False, allow_null=True)
75 class vimInfoSerializer(serializers.Serializer):
76 vimInfoId = serializers.CharField(help_text="vimInfoId", required=False, allow_null=True)
77 vimId = serializers.CharField(help_text="vimId", required=False, allow_null=True)
78 interfaceEndpoint = serializers.CharField(help_text="interfaceEndpoint", required=False, allow_null=True)
79 interfaceInfo = InterfaceInfoSerializer(help_text="vimInfoId", required=False, allow_null=True)
80 accessInfo = accessInfoSerializer(help_text="accessInfo", required=False, allow_null=True)
83 class monitoringParametersSerializer(serializers.Serializer):
87 class linkPortsSerializer(serializers.Serializer):
88 resourceId = serializers.CharField(help_text="resourceId", required=True)
89 vimId = serializers.CharField(help_text="vimId", required=False)
92 class resourceHandleSerializer(serializers.Serializer):
93 resourceId = serializers.CharField(help_text="resourceId", required=True)
94 vimId = serializers.CharField(help_text="vimId", required=False)
95 resourceProviderId = serializers.CharField(help_text="resourceProviderId", required=False)
98 class ExtVirtualLinkInfoSerializer(serializers.Serializer):
99 extVirtualLinkId = serializers.CharField(help_text="extVirtualLinkId", required=True)
100 resourceHandle = resourceHandleSerializer(help_text="iPAddress", required=True)
101 linkPorts = linkPortsSerializer(help_text="iPAddress", many=True, allow_null=True)
104 class l3AddressDataSerializer(serializers.Serializer):
105 iPAddressType = serializers.ChoiceField(help_text="iPAddressType", choices=['IPv4', 'IPv6'], required=True)
106 iPAddress = serializers.CharField(help_text="iPAddress", required=True)
109 class NetworkAddressSerializer(serializers.Serializer):
110 addressType = serializers.ChoiceField(help_text="addressType", choices=['MAC', 'IP'], required=True)
111 l2AddressData = serializers.CharField(help_text="l2AddressData", required=False)
112 l3AddressData = l3AddressDataSerializer(help_text="addresses", required=False)
115 class extCpInfoSerializer(serializers.Serializer):
116 cpInstanceId = serializers.CharField(help_text="cpInstanceId", required=False, allow_null=True)
117 cpdId = serializers.IntegerField(help_text="cpdId", required=True)
118 numDynamicAddresses = serializers.IntegerField(help_text="numDynamicAddresses", required=False, allow_null=True)
119 addresses = NetworkAddressSerializer(help_text="addresses", many=True, allow_null=True)
122 class ScaleInfoSerializer(serializers.Serializer):
123 aspectId = serializers.CharField(help_text="aspectId", required=True, allow_null=True)
124 scaleLevel = serializers.IntegerField(help_text="scaleLevel", required=True, allow_null=True)
127 class instantiatedVnfInfoSerializer(serializers.Serializer):
128 flavourId = serializers.CharField(help_text="flavour Id", required=True, allow_null=True)
129 vnfState = serializers.ChoiceField(help_text="vnf State", choices=['STARTED', 'STOPPED'], required=True, allow_null=True)
130 localizationLanguage = serializers.CharField(help_text="localizationLanguage", required=True, allow_null=True)
131 scaleStatus = ScaleInfoSerializer(help_text="scaleStatus", many=True)
132 extCpInfo = extCpInfoSerializer(help_text="extCpInfo", many=True)
133 extVirtualLink = ExtVirtualLinkInfoSerializer(help_text="extVirtualLink", many=True)
134 monitoringParameters = monitoringParametersSerializer(help_text="monitoringParameters", allow_null=True)
135 vmInfo = VmResponseSerializer(help_text="vmInfo", many=True, allow_null=True)
136 vimInfo = vimInfoSerializer(help_text="vimInfo", many=True, required=False, allow_null=True)
137 vnfcResourceInfo = vnfcResourceInfoSerializer(help_text="vnfcResourceInfo", many=True)
138 virtualLinkResourceInfo = virtualLinkResourceInfoSerializer(help_text="virtualLinkResourceInfo", many=True)
139 virtualStorageResourceInfo = virtualStorageResourceInfoSerializer(help_text="virtualStorageResourceInfo", many=True)
142 class VnfInfoSerializer(serializers.Serializer):
143 vnfInstanceId = serializers.CharField(help_text="vnf Instance Id", required=True)
144 vnfInstanceName = serializers.CharField(help_text="vnf Instance Name", required=True)
145 vnfInstanceDescription = serializers.CharField(help_text="vnfInstanceDescription", required=True, allow_null=True)
146 onboardedVnfPkgInfoId = serializers.CharField(help_text="onboarded Vnf Pkg Info Id", required=False, allow_null=True)
147 vnfdId = serializers.CharField(help_text="vnfdId", required=True, allow_null=True)
148 vnfdVersion = serializers.CharField(help_text="vnfd Version", required=False, allow_null=True)
149 vnfSoftwareVersion = serializers.CharField(help_text="vnfSoftwareVersion", required=True, allow_null=True)
150 vnfProvider = serializers.CharField(help_text="vnf Provider", required=False, allow_null=True)
151 vnfProductName = serializers.CharField(help_text="vnfProductName", required=False, allow_null=True)
152 vnfConfigurableProperties = serializers.CharField(help_text="vnfConfigurableProperties", required=False, allow_null=True)
153 instantiationState = serializers.CharField(help_text="instantiationState", required=False, allow_null=True)
154 extensions = serializers.CharField(help_text="extensions", required=False, allow_null=True)
155 metadata = serializers.CharField(help_text="metadata", required=False, allow_null=True)
156 instantiatedVnfInfo = instantiatedVnfInfoSerializer(help_text="instantiatedVnfInfo", required=True)
159 class VnfsInfoSerializer(serializers.Serializer):
160 resp_data = VnfInfoSerializer(help_text="the response data", many=True)
163 class VmInfoSerializer(serializers.Serializer):
164 resp_data = VmResponseSerializer(help_text="the response data", many=True)
167 class FlavorResponseSerializer(serializers.Serializer):
168 flavourid = serializers.CharField(help_text="flavourid", required=True)
169 vimid = serializers.CharField(help_text="the vim id", required=True)
170 resouceid = serializers.CharField(help_text="the resouce id", required=True)
171 tenant = serializers.CharField(help_text="tenant", required=True, allow_null=True)
172 instid = serializers.CharField(help_text="the inst id", required=True)
173 name = serializers.CharField(help_text="name", required=True)
174 extraspecs = serializers.CharField(help_text="extraspecs", required=True)
175 create_time = serializers.CharField(help_text="create_time", required=True, allow_null=True)
176 memory = serializers.IntegerField(help_text="memory", required=True)
177 vcpu = serializers.IntegerField(help_text="vcpu", required=True)
180 class FlavorInfoSerializer(serializers.Serializer):
181 resp_data = FlavorResponseSerializer(help_text="the response data", many=True)
184 class NetworkResponseSerializer(serializers.Serializer):
185 networkid = serializers.CharField(help_text="networkid", required=True)
186 vimid = serializers.CharField(help_text="the vim id", required=True)
187 resouceid = serializers.CharField(help_text="the resouce id", required=True)
188 insttype = serializers.IntegerField(help_text="the inst type", required=True)
189 instid = serializers.CharField(help_text="the inst id", required=True)
190 name = serializers.CharField(help_text="name", required=True)
193 class NetworkInfoSerializer(serializers.Serializer):
194 resp_data = NetworkResponseSerializer(help_text="the response data", many=True)
197 class SubnetResponseSerializer(serializers.Serializer):
198 subnetworkid = serializers.CharField(help_text="the subnetwork id", required=True)
199 vimid = serializers.CharField(help_text="the vim id", required=True)
200 resouceid = serializers.CharField(help_text="the resouce id", required=True)
201 networkid = serializers.CharField(help_text="the network id", required=True)
202 insttype = serializers.IntegerField(help_text="the inst type", required=True)
203 instid = serializers.CharField(help_text="the inst id", required=True)
204 name = serializers.CharField(help_text="name", required=True)
205 cidr = serializers.CharField(help_text="cidr", required=True)
208 class SubnetInfoSerializer(serializers.Serializer):
209 resp_data = SubnetResponseSerializer(help_text="the response data", many=True)
212 class CpResponseSerializer(serializers.Serializer):
213 cpinstanceid = serializers.CharField(help_text="the cp instance id", required=True)
214 cpdid = serializers.CharField(help_text="the cpd id", required=True)
215 cpinstancename = serializers.CharField(help_text="the cp instance name of vnf", required=True)
216 vlinstanceid = serializers.CharField(help_text="the vl instance id of vnf", required=True)
217 ownertype = serializers.IntegerField(help_text="the owner type of vnf", required=True)
218 ownerid = serializers.CharField(help_text="the owner id of vnf", required=True)
219 relatedtype = serializers.IntegerField(help_text="the related type", required=True)
222 class CpsInfoSerializer(serializers.Serializer):
223 resp_data = CpResponseSerializer(help_text="the response data", many=True)
226 class VolumeResponseSerializer(serializers.Serializer):
227 storageid = serializers.CharField(help_text="the storage id", required=True)
228 vimid = serializers.CharField(help_text="the vim id", required=True)
229 resouceid = serializers.CharField(help_text="the resouce id of vnf", required=True)
230 insttype = serializers.IntegerField(help_text="the inst type of vnf", required=True)
231 instid = serializers.CharField(help_text="the inst id of vnf", required=True)
232 storagetype = serializers.CharField(help_text="the storage type of vnf", required=True)
233 size = serializers.CharField(help_text="the size of storage", required=True)
236 class VolumeInfoSerializer(serializers.Serializer):
237 resp_data = VolumeResponseSerializer(help_text="the response data", many=True)