Update the scale-serializer module
[vfc/gvnfm/vnflcm.git] / lcm / lcm / nf / serializers / scale_vnf_request_serializer.py
1 # Copyright (c) 2019, CMCC Technologies Co., Ltd.
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 ScaleVnfRequestSerializer(serializers.Serializer):
19     type = serializers.ChoiceField(help_text="Indicates the type of the scale operation requested.",
20                                    choices=['SCALE_OUT', 'SCALE_IN'], required=True)
21     aspectId = serializers.CharField(help_text="Identifier of the scaling aspect.", required=True)
22     numberOfSteps = serializers.IntegerField(help_text="Number of scaling steps to be executed as part"
23                                                        "of this Scale VNF operation.", required=False,
24                                              allow_null=True, default=1, min_value=0)
25     additionalParams = serializers.DictField(help_text="Additional parameters passed by the NFVO as input"
26                                                        "to the scaling process, specific to the VNF being"
27                                                        "scaled, as declared in the VNFD as part of"
28                                                        "'ScaleVnfOpConfig'.", required=False, allow_null=True,
29                                              child=serializers.CharField(help_text="KeyValue Pairs",
30                                                                          allow_blank=True))
31
32
33 class NfOperateJobSerializer(serializers.Serializer):
34     jobId = serializers.CharField(help_text="ID of NF operate job", required=True)