Add vfc-ztevnfmdriver scale auto-swagger
[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 ScaleReqSerializer(serializers.Serializer):
19     type = serializers.CharField(
20         help_text="type",
21         max_length=255,
22         required=True, allow_blank=True)
23     aspectId = serializers.CharField(
24         help_text="aspectId",
25         max_length=255,
26         required=True,
27         allow_null=False)
28     numberOfSteps = serializers.CharField(
29         help_text="numberOfSteps",
30         max_length=255,
31         required=False,
32         allow_null=True)
33     additionalParam = serializers.DictField(
34         help_text="additionalParam",
35         child=serializers.DictField(allow_null=True),
36         required=False,
37         allow_null=True)
38
39
40 class AffectedvmSerializer(serializers.Serializer):
41     extention = serializers.CharField(
42         help_text="extention",
43         max_length=255,
44         required=True, allow_blank=True)
45     vmid = serializers.CharField(
46         help_text="vmid",
47         max_length=255,
48         required=True,
49         allow_null=False)
50     changtype = serializers.CharField(
51         help_text="changtype",
52         max_length=255,
53         required=False,
54         allow_null=True)
55     vduid = serializers.CharField(
56         help_text="vduid",
57         max_length=255,
58         required=True,
59         allow_null=False)
60     vmname = serializers.CharField(
61         help_text="vmname",
62         max_length=255,
63         required=False,
64         allow_null=True)
65     flavour = serializers.DictField(
66         help_text="flavour",
67         child=serializers.CharField(allow_blank=True),
68         required=False,
69         allow_null=True)
70
71
72 class HealReqSerializer(serializers.Serializer):
73     action = serializers.CharField(
74         help_text="action",
75         max_length=255,
76         required=True,
77         allow_null=True)
78     lifecycleoperation = serializers.CharField(
79         help_text="lifecycleoperation",
80         max_length=255,
81         required=True,
82         allow_null=False)
83     isgrace = serializers.CharField(
84         help_text="isgrace",
85         max_length=255,
86         required=False,
87         allow_null=True)
88     affectedvm = AffectedvmSerializer(help_text='affectedvm', many=True)
89
90
91 class InstScaleHealRespSerializer(serializers.Serializer):
92     jobId = serializers.CharField(
93         help_text="jobid",
94         max_length=255,
95         required=True,
96         allow_null=True)
97     vnfInstanceId = serializers.CharField(
98         help_text="nfInstanceId",
99         max_length=255,
100         required=True,
101         allow_null=False)