Update serializer ztevnfmdriver
[vfc/nfvo/driver/vnfm/svnfm.git] / zte / vmanager / driver / interfaces / serializers.py
1 # Copyright 2018 ZTE Corporation.
2 #
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
6 #
7 #         http://www.apache.org/licenses/LICENSE-2.0
8 #
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
15 from rest_framework import serializers
16
17
18 class AdditionalParamSerializer(serializers.Serializer):
19     sdncontroller = serializers.CharField(
20         help_text="sdncontroller",
21         required=True,
22         max_length=255,
23         allow_null=True)
24     NatIpRange = serializers.CharField(
25         help_text="NatIpRange",
26         required=True,
27         max_length=255,
28         allow_null=True)
29     m6000_mng_ip = serializers.CharField(
30         help_text="m6000_mng_ip",
31         required=True,
32         max_length=255,
33         allow_null=True)
34     externalPluginManageNetworkName = serializers.CharField(
35         help_text="externalPluginManageNetworkName",
36         required=True,
37         max_length=255,
38         allow_null=True)
39     location = serializers.CharField(
40         help_text="location",
41         required=True,
42         max_length=255,
43         allow_null=True)
44     externalManageNetworkName = serializers.CharField(
45         help_text="externalManageNetworkName",
46         required=True,
47         max_length=255,
48         allow_null=True)
49     sfc_data_network = serializers.CharField(
50         help_text="sfc_data_network",
51         required=True,
52         max_length=255,
53         allow_null=True)
54     externalDataNetworkName = serializers.CharField(
55         help_text="externalDataNetworkName",
56         required=True,
57         max_length=255,
58         allow_null=True)
59     inputs = serializers.DictField(
60         help_text='inputs',
61         child=serializers.CharField(allow_blank=True),
62         required=False,
63         allow_null=True)
64
65
66 class InstantiateVnfRequestSerializer(serializers.Serializer):
67     vnfInstanceName = serializers.CharField(
68         help_text="vnfInstanceName",
69         required=True,
70         max_length=255,
71         allow_null=True)
72     vnfPackageId = serializers.CharField(
73         help_text="vnfPackageId",
74         required=True,
75         max_length=255,
76         allow_null=True)
77     vnfDescriptorId = serializers.CharField(
78         help_text="vnfDescriptorId",
79         required=True,
80         max_length=255,
81         allow_null=True)
82     additionalParam = AdditionalParamSerializer(
83         help_text="additionalParam",
84         required=True,
85         allow_null=True)
86
87
88 class TerminateVnfRequestSerializer(serializers.Serializer):
89     terminationType = serializers.CharField(
90         help_text="terminationType",
91         required=True,
92         max_length=255,
93         allow_null=True)
94     gracefulTerminationTimeout = serializers.IntegerField(
95         help_text="gracefulTerminationTimeout",
96         default=120,
97         required=False)
98
99
100 class VnfInfoSerializer(serializers.Serializer):
101     vnfStatus = serializers.CharField(
102         help_text="vnfStatus",
103         required=True,
104         max_length=255,
105         allow_null=True)
106
107
108 class QueryVnfResponseSerializer(serializers.Serializer):
109     vnfInfo = VnfInfoSerializer(
110         help_text="vnfInfo",
111         required=True)
112
113
114 class JobHistorySerializer(serializers.Serializer):
115     status = serializers.CharField(
116         help_text="Status of job",
117         required=True,
118         allow_null=False)
119     progress = serializers.IntegerField(
120         help_text="Progress of job",
121         required=True,
122         allow_null=False)
123     statusDescription = serializers.CharField(
124         help_text="Description of job",
125         required=False,
126         allow_null=True)
127     errorCode = serializers.CharField(
128         help_text="Error code of job",
129         required=False,
130         allow_blank=True)
131     responseId = serializers.IntegerField(
132         help_text="Response index of job",
133         required=True,
134         allow_null=False)
135
136
137 class JobDescriptorSerializer(serializers.Serializer):
138     status = serializers.CharField(
139         help_text="Status of job",
140         required=True,
141         allow_null=False)
142     progress = serializers.IntegerField(
143         help_text="Progress of job",
144         required=True,
145         allow_null=False)
146     statusDescription = serializers.CharField(
147         help_text="Description of job",
148         required=False,
149         allow_null=True)
150     errorCode = serializers.CharField(
151         help_text="Error code of job",
152         required=False,
153         allow_blank=True)
154     responseId = serializers.IntegerField(
155         help_text="Response index of job",
156         required=True,
157         allow_null=False)
158     responseHistoryList = JobHistorySerializer(
159         help_text="History of job",
160         many=True)
161
162
163 class JobQueryRespSerializer(serializers.Serializer):
164     jobId = serializers.CharField(
165         help_text="UUID of job",
166         required=True,
167         allow_null=False)
168     responseDescriptor = JobDescriptorSerializer(
169         help_text="Descriptor of job",
170         required=False)
171
172
173 class GrantVmlistSerializer(serializers.Serializer):
174     VMNumber = serializers.CharField(
175         help_text="VMNumber",
176         max_length=255,
177         required=False,
178         allow_null=True)
179     VMFlavor = serializers.CharField(
180         help_text="VMFlavor",
181         max_length=255,
182         required=False,
183         allow_null=True)
184     vimid = serializers.CharField(
185         help_text="vimid",
186         max_length=255,
187         required=True,
188         allow_blank=True)
189     tenant = serializers.CharField(
190         help_text="tenant",
191         max_length=255,
192         required=False,
193         allow_blank=True)
194
195
196 class GrantReqSerializer(serializers.Serializer):
197     nfvoid = serializers.CharField(
198         help_text="nfvoid",
199         max_length=255,
200         required=True,
201         allow_null=True)
202     vnfmid = serializers.CharField(
203         help_text="vnfmid",
204         max_length=255,
205         required=True,
206         allow_null=True)
207     vimid = serializers.CharField(
208         help_text="vimid",
209         max_length=255,
210         required=True,
211         allow_null=True)
212     tenant = serializers.CharField(
213         help_text="tenant",
214         max_length=255,
215         required=False,
216         allow_blank=True)
217     vnfinstanceid = serializers.CharField(
218         help_text="vnfinstanceid",
219         max_length=255,
220         required=False,
221         allow_null=True)
222     operationright = serializers.CharField(
223         help_text="operationright",
224         max_length=255,
225         required=False,
226         allow_null=True)
227     vmlist = GrantVmlistSerializer(
228         help_text='vmlist',
229         required=False,
230         many=True)
231     exvimidlist = serializers.ListSerializer(
232         help_text='exvimidlist',
233         child=serializers.CharField(allow_null=True),
234         required=False)
235
236
237 class GrantRespSerializer(serializers.Serializer):
238     vimid = serializers.CharField(
239         help_text="vimid",
240         max_length=255,
241         required=True,
242         allow_null=True)
243     tenant = serializers.CharField(
244         help_text="tenant",
245         max_length=255,
246         required=True,
247         allow_null=True)
248
249
250 class VMIDlistSerializer(serializers.Serializer):
251     VMID = serializers.CharField(
252         help_text="VMID",
253         max_length=255,
254         required=False,
255         allow_null=True)
256     VMName = serializers.CharField(
257         help_text="VMName",
258         max_length=255,
259         required=False,
260         allow_null=True)
261     vimid = serializers.CharField(
262         help_text="vimid",
263         max_length=255,
264         required=False,
265         allow_null=True)
266     tenant = serializers.CharField(
267         help_text="tenant",
268         max_length=255,
269         required=False,
270         allow_null=True)
271
272
273 class NotifyVmlistSerializer(serializers.Serializer):
274     VMNumber = serializers.CharField(
275         help_text="VMNumber",
276         max_length=255,
277         required=False,
278         allow_null=True)
279     vdutype = serializers.CharField(
280         help_text="vdutype",
281         max_length=255,
282         required=False,
283         allow_null=True)
284     VMFlavor = serializers.CharField(
285         help_text="VMFlavor",
286         max_length=255,
287         required=False,
288         allow_null=True)
289     VMIDlist = serializers.ListSerializer(
290         help_text='VMIDlist',
291         child=VMIDlistSerializer(
292             help_text='VMIDlist',
293             required=True,
294             allow_null=True),
295         required=False,
296         allow_null=True)
297
298
299 class NotifyReqSerializer(serializers.Serializer):
300     nfvoid = serializers.CharField(
301         help_text="nfvoid",
302         max_length=255,
303         required=True,
304         allow_null=True)
305     vnfmid = serializers.CharField(
306         help_text="vnfmid",
307         max_length=255,
308         required=True,
309         allow_null=True)
310     vimid = serializers.CharField(
311         help_text="vimid",
312         max_length=255,
313         required=True,
314         allow_null=True)
315     timestamp = serializers.CharField(
316         help_text="timestamp",
317         max_length=255,
318         required=False,
319         allow_blank=True)
320     vnfinstanceid = serializers.CharField(
321         help_text="vnfinstanceid",
322         max_length=255,
323         required=False,
324         allow_null=True)
325     eventtype = serializers.CharField(
326         help_text="eventtype",
327         max_length=255,
328         required=False,
329         allow_null=True)
330     vmlist = NotifyVmlistSerializer(
331         help_text='vmlist',
332         required=False,
333         many=True)
334     extension = serializers.DictField(
335         help_text="extension",
336         child=serializers.DictField(
337             allow_null=True),
338         required=False,
339         allow_null=True)
340     affectedcp = serializers.ListSerializer(
341         help_text='affectedcp',
342         child=serializers.DictField(
343             allow_null=True),
344         required=False)
345     affectedvirtuallink = serializers.ListSerializer(
346         help_text='affectedvirtuallink',
347         child=serializers.DictField(
348             allow_null=True),
349         required=False)
350
351
352 class ScaleReqSerializer(serializers.Serializer):
353     type = serializers.CharField(
354         help_text="type",
355         max_length=255,
356         required=True,
357         allow_null=True)
358     aspectId = serializers.CharField(
359         help_text="aspectId",
360         max_length=255,
361         required=True,
362         allow_null=True)
363     numberOfSteps = serializers.CharField(
364         help_text="numberOfSteps",
365         max_length=255,
366         required=True,
367         allow_null=True)
368     additionalParam = serializers.DictField(
369         help_text="additionalParam",
370         child=serializers.DictField(
371             allow_null=True),
372         required=False,
373         allow_null=True)
374
375
376 class AffectedvmSerializer(serializers.Serializer):
377     extention = serializers.CharField(
378         help_text="extention",
379         max_length=255,
380         required=True,
381         allow_blank=True)
382     vmid = serializers.CharField(
383         help_text="vmid",
384         max_length=255,
385         required=True,
386         allow_null=True)
387     changtype = serializers.CharField(
388         help_text="changtype",
389         max_length=255,
390         required=True,
391         allow_null=True)
392     vduid = serializers.CharField(
393         help_text="vduid",
394         max_length=255,
395         required=True,
396         allow_null=True)
397     vmname = serializers.CharField(
398         help_text="vmname",
399         max_length=255,
400         required=True,
401         allow_null=True)
402     flavour = serializers.DictField(
403         help_text="flavour",
404         child=serializers.CharField(
405             allow_blank=True),
406         required=False,
407         allow_null=True)
408
409
410 class HealReqSerializer(serializers.Serializer):
411     action = serializers.CharField(
412         help_text="action",
413         max_length=255,
414         required=True,
415         allow_null=False)
416     lifecycleoperation = serializers.CharField(
417         help_text="lifecycleoperation",
418         max_length=255,
419         required=True,
420         allow_null=False)
421     isgrace = serializers.CharField(
422         help_text="isgrace",
423         max_length=255,
424         required=False,
425         allow_null=True)
426     affectedvm = serializers.ListSerializer(
427         help_text='affectedvm',
428         child=AffectedvmSerializer(
429             help_text='affectedvm',
430             required=True,
431             allow_null=True),
432         required=True,
433         allow_null=True)
434
435
436 class InstScaleHealRespSerializer(serializers.Serializer):
437     jobId = serializers.CharField(
438         help_text="jobid",
439         max_length=255,
440         required=True,
441         allow_null=True)
442     vnfInstanceId = serializers.CharField(
443         help_text="nfInstanceId",
444         max_length=255,
445         required=True,
446         allow_null=True)
447
448
449 class SubscribeFilterSerializer(serializers.Serializer):
450     vendor = serializers.CharField(
451         help_text="vendor",
452         max_length=255,
453         required=True,
454         allow_null=True)
455     type = serializers.CharField(
456         help_text="type",
457         max_length=255,
458         required=True,
459         allow_null=True)
460
461
462 class SubscribeSerializer(serializers.Serializer):
463     subscribeid = serializers.CharField(
464         help_text="subscribeid",
465         max_length=255,
466         required=True,
467         allow_null=True)
468     notificationuri = serializers.CharField(
469         help_text="notificationuri",
470         max_length=255,
471         required=True,
472         allow_null=True)
473     filter = SubscribeFilterSerializer(
474         help_text="filter",
475         many=True,
476         required=False,
477         allow_null=True)
478
479
480 class SubscribesRespSerializer(serializers.Serializer):
481     child = SubscribeSerializer()
482
483
484 class SubscribeReqSerializer(serializers.Serializer):
485     nfvoid = serializers.CharField(
486         help_text="nfvoid",
487         max_length=255,
488         required=True,
489         allow_null=True)
490     vnfmid = serializers.CharField(
491         help_text="vnfmid",
492         max_length=255,
493         required=True,
494         allow_null=True)
495     notificationuri = serializers.CharField(
496         help_text="notificationuri",
497         max_length=255,
498         required=True,
499         allow_null=True)
500     filter = SubscribeFilterSerializer(
501         help_text="filter",
502         many=True,
503         required=False,
504         allow_null=True)
505
506
507 class SubscribeRespSerializer(serializers.Serializer):
508     subscribeid = serializers.CharField(
509         help_text="subscribeid",
510         max_length=255,
511         required=True,
512         allow_null=True)
513
514
515 class VnfPkgSerializer(serializers.Serializer):
516     packageid = serializers.CharField(
517         help_text="packageid",
518         max_length=255,
519         required=False,
520         allow_null=True)
521     vendor = serializers.CharField(
522         help_text="vendor",
523         max_length=255,
524         required=False,
525         allow_null=True)
526     type = serializers.CharField(
527         help_text="type",
528         max_length=255,
529         required=False,
530         allow_null=True)
531     vnfdfile = serializers.CharField(
532         help_text="vnfdfile",
533         max_length=255,
534         required=False,
535         allow_null=True)
536     imagefiles = serializers.ListSerializer(
537         help_text='imagefiles',
538         child=serializers.CharField(
539             help_text='imagefile',
540             required=True),
541         required=False,
542         allow_null=True)
543     swfiles = serializers.ListSerializer(
544         help_text='swfiles',
545         child=serializers.CharField(
546             help_text='swfile',
547             required=True),
548         required=False,
549         allow_null=True)
550     description = serializers.CharField(
551         help_text="description",
552         max_length=255,
553         required=False,
554         allow_null=True)
555
556
557 class VnfPkgsSerializer(serializers.Serializer):
558     data = VnfPkgSerializer(
559         help_text="Vnf package",
560         many=True,
561         required=False,
562         allow_null=True)
563
564
565 class NfvoInfoReqSerializer(serializers.Serializer):
566     nfvoid = serializers.CharField(
567         help_text="nfvoid",
568         max_length=255,
569         required=False,
570         allow_null=True)
571     vnfmid = serializers.CharField(
572         help_text="nfvoid",
573         max_length=255,
574         required=False,
575         allow_null=True)
576     nfvourl = serializers.CharField(
577         help_text="nfvoid",
578         max_length=255,
579         required=False,
580         allow_null=True)