mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-08-19 13:43:40 +00:00
Serialisation des réglages pour la provision
This commit is contained in:
parent
99503658b7
commit
27374d7a43
2 changed files with 13 additions and 4 deletions
|
@ -723,7 +723,9 @@ class SwitchPortSerializer(serializers.ModelSerializer):
|
|||
|
||||
class Meta:
|
||||
model = topologie.Switch
|
||||
fields = ('short_name', 'complete_name', 'model', 'switchbay', 'ports', 'ipv4', 'ipv6', 'subnet', 'subnet6')
|
||||
fields = ('short_name', 'model', 'switchbay', 'ports', 'ipv4', 'ipv6',
|
||||
'subnet', 'subnet6', 'automatic_provision', 'rest_enabled',
|
||||
'web_management_enabled')
|
||||
|
||||
# DHCP
|
||||
|
||||
|
|
|
@ -273,7 +273,11 @@ class Switch(AclMixin, Machine):
|
|||
ValidationError("Création d'un port existant.")
|
||||
|
||||
def main_interface(self):
|
||||
""" Returns the 'main' interface of the switch """
|
||||
""" Returns the 'main' interface of the switch
|
||||
It must the the management interface for that device"""
|
||||
switch_iptype = OptionalTopologie.get_cached_value('switchs_ip_type')
|
||||
if switch_iptype:
|
||||
return self.interface_set.filter(type__ip_type=switch_iptype).first()
|
||||
return self.interface_set.first()
|
||||
|
||||
@cached_property
|
||||
|
@ -286,19 +290,22 @@ class Switch(AclMixin, Machine):
|
|||
|
||||
@cached_property
|
||||
def ipv4(self):
|
||||
"""Return the switch's management ipv4"""
|
||||
return str(self.main_interface().ipv4)
|
||||
|
||||
@cached_property
|
||||
def ipv6(self):
|
||||
"""Returne the switch's management ipv6"""
|
||||
return str(self.main_interface().ipv6().first())
|
||||
|
||||
@cached_property
|
||||
def subnet(self):
|
||||
return self.main_interface().type.ip_type.ip_set_full_info
|
||||
""" Return the subnet of the management ip"""
|
||||
return self.main_interface().type.ip_type.ip_set_full_info
|
||||
|
||||
@cached_property
|
||||
def subnet6(self):
|
||||
return self.main_interface().type.ip_type.ip6_set_full_info
|
||||
return self.main_interface().type.ip_type.ip6_set_full_info
|
||||
|
||||
def __str__(self):
|
||||
return str(self.main_interface())
|
||||
|
|
Loading…
Reference in a new issue