aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lcm/v2/serializers.py53
1 files changed, 53 insertions, 0 deletions
diff --git a/lcm/v2/serializers.py b/lcm/v2/serializers.py
index 2e97d6d6..02d1bcfb 100644
--- a/lcm/v2/serializers.py
+++ b/lcm/v2/serializers.py
@@ -218,6 +218,59 @@ class VimAssetsSerializer(serializers.Serializer):
)
+class AddressRangeSerializer(serializers.Serializer):
+ minAddress = serializers.CharField(
+ help_text="Lowest IP address belonging to the range.",
+ required=True
+ )
+ maxAddress = serializers.CharField(
+ help_text="Highest IP address belonging to the range.",
+ required=True
+ )
+
+
+class IpAddresseSerializer(serializers.Serializer):
+ type = serializers.ChoiceField(
+ help_text="The type of the IP addresses.",
+ choices=["IPV4", "IPV6"],
+ required=True
+ )
+ fixedAddresses = serializers.ListSerializer(
+ help_text="Fixed addresses to assign.",
+ child=serializers.CharField(help_text="IpAddress"),
+ required=False,
+ allow_null=True
+ )
+ numDynamicAddresses = serializers.IntegerField(
+ help_text="Number of dynamic addresses to assign.",
+ required=True
+ )
+ addressRange = AddressRangeSerializer(
+ help_text="An IP address range to be used, e.g. in case of egress connections.",
+ required=False,
+ allow_null=True
+ )
+ subnetId = serializers.CharField(
+ help_text="Subnet defined by the identifier of the subnet resource in the VIM.",
+ required=False,
+ allow_null=True,
+ allow_blank=True
+ )
+
+
+class IpOverEthernetAddressDataSerializer(serializers.Serializer):
+ macAddress = serializers.CharField(
+ help_text="MAC address.",
+ required=False,
+ allow_null=True,
+ allow_blank=True
+ )
+ ipAddresses = IpAddresseSerializer(
+ help_text="List of IP addresses to assign to the CP instance.",
+ many=True
+ )
+
+
class GrantSerializer(serializers.Serializer):
id = serializers.CharField(
help_text="Identifier of the grant.",