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 AdditionalParamSerializer(serializers.Serializer):
19 sdncontroller = serializers.CharField(
20 help_text="sdncontroller",
24 NatIpRange = serializers.CharField(
25 help_text="NatIpRange",
29 m6000_mng_ip = serializers.CharField(
30 help_text="m6000_mng_ip",
34 externalPluginManageNetworkName = serializers.CharField(
35 help_text="externalPluginManageNetworkName",
39 location = serializers.CharField(
44 externalManageNetworkName = serializers.CharField(
45 help_text="externalManageNetworkName",
49 sfc_data_network = serializers.CharField(
50 help_text="sfc_data_network",
54 externalDataNetworkName = serializers.CharField(
55 help_text="externalDataNetworkName",
59 inputs = serializers.DictField(
61 child=serializers.CharField(allow_blank=True),
66 class InstantiateVnfRequestSerializer(serializers.Serializer):
67 vnfInstanceName = serializers.CharField(
68 help_text="vnfInstanceName",
72 vnfPackageId = serializers.CharField(
73 help_text="vnfPackageId",
77 vnfDescriptorId = serializers.CharField(
78 help_text="vnfDescriptorId",
82 additionalParam = AdditionalParamSerializer(
83 help_text="additionalParam",
88 class TerminateVnfRequestSerializer(serializers.Serializer):
89 terminationType = serializers.CharField(
90 help_text="terminationType",
94 gracefulTerminationTimeout = serializers.IntegerField(
95 help_text="gracefulTerminationTimeout",
100 class VnfInfoSerializer(serializers.Serializer):
101 vnfStatus = serializers.CharField(
102 help_text="vnfStatus",
108 class QueryVnfResponseSerializer(serializers.Serializer):
109 vnfInfo = VnfInfoSerializer(
114 class JobHistorySerializer(serializers.Serializer):
115 status = serializers.CharField(
116 help_text="Status of job",
119 progress = serializers.IntegerField(
120 help_text="Progress of job",
123 statusDescription = serializers.CharField(
124 help_text="Description of job",
127 errorCode = serializers.CharField(
128 help_text="Error code of job",
131 responseId = serializers.IntegerField(
132 help_text="Response index of job",
137 class JobDescriptorSerializer(serializers.Serializer):
138 status = serializers.CharField(
139 help_text="Status of job",
142 progress = serializers.IntegerField(
143 help_text="Progress of job",
146 statusDescription = serializers.CharField(
147 help_text="Description of job",
150 errorCode = serializers.CharField(
151 help_text="Error code of job",
154 responseId = serializers.IntegerField(
155 help_text="Response index of job",
158 responseHistoryList = JobHistorySerializer(
159 help_text="History of job",
163 class JobQueryRespSerializer(serializers.Serializer):
164 jobId = serializers.CharField(
165 help_text="UUID of job",
168 responseDescriptor = JobDescriptorSerializer(
169 help_text="Descriptor of job",
173 class GrantVmlistSerializer(serializers.Serializer):
174 VMNumber = serializers.CharField(
175 help_text="VMNumber",
179 VMFlavor = serializers.CharField(
180 help_text="VMFlavor",
184 vimid = serializers.CharField(
189 tenant = serializers.CharField(
196 class GrantReqSerializer(serializers.Serializer):
197 nfvoid = serializers.CharField(
202 vnfmid = serializers.CharField(
207 vimid = serializers.CharField(
212 tenant = serializers.CharField(
217 vnfinstanceid = serializers.CharField(
218 help_text="vnfinstanceid",
222 operationright = serializers.CharField(
223 help_text="operationright",
227 vmlist = GrantVmlistSerializer(
231 exvimidlist = serializers.ListSerializer(
232 help_text='exvimidlist',
233 child=serializers.CharField(allow_null=True),
237 class GrantRespSerializer(serializers.Serializer):
238 vimid = serializers.CharField(
243 tenant = serializers.CharField(
250 class VMIDlistSerializer(serializers.Serializer):
251 VMID = serializers.CharField(
256 VMName = serializers.CharField(
261 vimid = serializers.CharField(
266 tenant = serializers.CharField(
273 class NotifyVmlistSerializer(serializers.Serializer):
274 VMNumber = serializers.CharField(
275 help_text="VMNumber",
279 vdutype = serializers.CharField(
284 VMFlavor = serializers.CharField(
285 help_text="VMFlavor",
289 VMIDlist = serializers.ListSerializer(
290 help_text='VMIDlist',
291 child=VMIDlistSerializer(help_text='VMIDlist', required=True, allow_null=True),
296 class NotifyReqSerializer(serializers.Serializer):
297 nfvoid = serializers.CharField(
302 vnfmid = serializers.CharField(
307 vimid = serializers.CharField(
312 timestamp = serializers.CharField(
313 help_text="timestamp",
317 vnfinstanceid = serializers.CharField(
318 help_text="vnfinstanceid",
322 eventtype = serializers.CharField(
323 help_text="eventtype",
327 vmlist = NotifyVmlistSerializer(
331 extension = serializers.DictField(
332 help_text="extension",
333 child=serializers.DictField(allow_null=True),
336 affectedcp = serializers.ListSerializer(
337 help_text='affectedcp',
338 child=serializers.DictField(allow_null=True),
340 affectedvirtuallink = serializers.ListSerializer(
341 help_text='affectedvirtuallink',
342 child=serializers.DictField(allow_null=True),
346 class ScaleReqSerializer(serializers.Serializer):
347 type = serializers.CharField(
352 aspectId = serializers.CharField(
353 help_text="aspectId",
357 numberOfSteps = serializers.CharField(
358 help_text="numberOfSteps",
362 additionalParam = serializers.DictField(
363 help_text="additionalParam",
364 child=serializers.DictField(allow_null=True),
369 class AffectedvmSerializer(serializers.Serializer):
370 extention = serializers.CharField(
371 help_text="extention",
375 vmid = serializers.CharField(
380 changtype = serializers.CharField(
381 help_text="changtype",
385 vduid = serializers.CharField(
390 vmname = serializers.CharField(
395 flavour = serializers.DictField(
397 child=serializers.CharField(allow_blank=True),
402 class HealReqSerializer(serializers.Serializer):
403 action = serializers.CharField(
408 lifecycleoperation = serializers.CharField(
409 help_text="lifecycleoperation",
413 isgrace = serializers.CharField(
418 affectedvm = serializers.ListSerializer(
419 help_text='affectedvm',
420 child=AffectedvmSerializer(help_text='affectedvm', required=True, allow_null=True),
425 class InstScaleHealRespSerializer(serializers.Serializer):
426 jobId = serializers.CharField(
431 vnfInstanceId = serializers.CharField(
432 help_text="nfInstanceId",