@@ -1099,30 +1099,29 @@ class AggregateInterface(PhysicalInterface):
10991099 * layer3
11001100 * layer2
11011101 * virtual-wire
1102- * tap
11031102 * ha
1104- * decrypt-mirror
1105- * aggregate-group
11061103
11071104 Not all modes apply to all interface types (Default: layer3)
11081105
11091106 ip (tuple): Layer3: Interface IPv4 addresses
11101107 ipv6_enabled (bool): Layer3: IPv6 Enabled (requires
11111108 IPv6Address child object)
1112- management_profile (ManagementProfile): Layer3: Interface Management
1113- Profile
1109+ management_profile (ManagementProfile): Layer3: Interface Management Profile
11141110 mtu(int): Layer3: MTU for interface
11151111 adjust_tcp_mss (bool): Layer3: Adjust TCP MSS
11161112 netflow_profile (NetflowProfile): Netflow profile
1117- lldp_enabled (bool): Layer2: Enable LLDP
1118- lldp_profile (str): Layer2: Reference to an lldp profile
1119- netflow_profile_l2 (NetflowProfile): Netflow profile
1113+ lldp_enabled (bool): Enable LLDP
1114+ lldp_profile (str): Reference to an lldp profile
11201115 comment (str): The interface's comment
1121- ipv4_mss_adjust(int): TCP MSS adjustment for ipv4
1122- ipv6_mss_adjust(int): TCP MSS adjustment for ipv6
1116+ ipv4_mss_adjust(int): Layer3: TCP MSS adjustment for ipv4
1117+ ipv6_mss_adjust(int): Layer3: TCP MSS adjustment for ipv6
11231118 enable_dhcp (bool): Enable DHCP on this interface
1124- create_dhcp_default_route (bool): Create default route pointing to default gateway provided by server
1125- dhcp_default_route_metric (int): Metric for the DHCP default route
1119+ create_dhcp_default_route (bool): Layer3: Create default route pointing to default gateway provided by server
1120+ dhcp_default_route_metric (int): Layer3: Metric for the DHCP default route
1121+ lacp_enable (bool): Enables LACP
1122+ lacp_passive_pre_negotiation (bool): Enable LACP passive pre-negotiation, off by default
1123+ lacp_rate (str): Set LACP transmission-rate to 'fast' or 'slow'
1124+ lacp_mode (str): Set LACP mode to 'active' or 'passive'
11261125
11271126 """
11281127 ALLOW_SET_VLAN = True
@@ -1149,42 +1148,49 @@ def _setup(self):
11491148 params .append (VersionedParamPath (
11501149 'mode' , path = '{mode}' , default = 'layer3' ,
11511150 values = [
1152- 'layer3' , 'layer2' , 'virtual-wire' , 'tap' ,
1153- 'ha' , 'decrypt-mirror' , 'aggregate-group' ,
1151+ 'layer3' , 'layer2' , 'virtual-wire' , 'ha' ,
11541152 ]))
11551153 params .append (VersionedParamPath (
1156- 'ip' , path = 'ip' , vartype = 'entry' ))
1154+ 'ip' , condition = {'mode' : 'layer3' },
1155+ path = '{mode}/ip' , vartype = 'entry' ))
11571156 params .append (VersionedParamPath (
1158- 'ipv6_enabled' , path = 'ipv6/enabled' , vartype = 'yesno' ))
1157+ 'ipv6_enabled' , condition = {'mode' : 'layer3' },
1158+ path = '{mode}/ipv6/enabled' , vartype = 'yesno' ))
11591159 params .append (VersionedParamPath (
1160- 'management_profile' , path = 'interface-management-profile' ))
1160+ 'management_profile' , condition = {'mode' : ['layer3' , 'layer2' ]},
1161+ path = '{mode}/interface-management-profile' ))
11611162 params .append (VersionedParamPath (
1162- 'mtu' , path = 'mtu' , vartype = 'int' ))
1163+ 'mtu' , condition = {'mode' : 'layer3' },
1164+ path = '{mode}/mtu' , vartype = 'int' ))
11631165 params .append (VersionedParamPath (
1164- 'adjust_tcp_mss' , path = 'adjust-tcp-mss' , vartype = 'yesno' ))
1166+ 'adjust_tcp_mss' , condition = {'mode' : 'layer3' },
1167+ path = '{path}/adjust-tcp-mss/enable' , vartype = 'yesno' ))
11651168 params [- 1 ].add_profile (
11661169 '7.1.0' ,
1167- vartype = 'yesno' , path = 'adjust-tcp-mss/enable' )
1168- params .append (VersionedParamPath (
1169- 'netflow_profile' , path = 'netflow-profile' ))
1170+ condition = {'mode' : 'layer3' },
1171+ vartype = 'yesno' , path = '{mode}/adjust-tcp-mss/enable' )
11701172 params .append (VersionedParamPath (
1171- 'lldp_enabled' , path = 'lldp/enable' , vartype = 'yesno' ))
1173+ 'netflow_profile' ,
1174+ condition = {'mode' : ['layer3' , 'layer2' , 'vwire' ]},
1175+ path = '{mode}/netflow-profile' ))
11721176 params .append (VersionedParamPath (
1173- 'lldp_profile' , path = 'lldp/profile' ))
1177+ 'lldp_enabled' , condition = {'mode' : ['layer3' , 'layer2' , 'vwire' ]},
1178+ path = '{mode}/lldp/enable' , vartype = 'yesno' ))
11741179 params .append (VersionedParamPath (
1175- 'netflow_profile_l2' , path = 'netflow-profile' ))
1180+ 'lldp_profile' , condition = {'mode' : ['layer3' , 'layer2' , 'vwire' ]},
1181+ path = '{mode}/lldp/profile' ))
11761182 params .append (VersionedParamPath (
11771183 'comment' , path = 'comment' ))
11781184 params .append (VersionedParamPath (
11791185 'ipv4_mss_adjust' , exclude = True ))
11801186 params [- 1 ].add_profile (
1181- '7.1.0' ,
1182- path = 'adjust-tcp-mss/ipv4-mss-adjustment' , vartype = 'int' )
1187+ '7.1.0' , condition = { 'mode' : 'layer3' },
1188+ path = '{mode}/ adjust-tcp-mss/ipv4-mss-adjustment' , vartype = 'int' )
11831189 params .append (VersionedParamPath (
11841190 'ipv6_mss_adjust' , exclude = True ))
11851191 params [- 1 ].add_profile (
1186- '7.1.0' ,
1187- path = 'adjust-tcp-mss/ipv6-mss-adjustment' , vartype = 'int' )
1192+ '7.1.0' , condition = { 'mode' : 'layer3' },
1193+ path = '{mode}/ adjust-tcp-mss/ipv6-mss-adjustment' , vartype = 'int' )
11881194 params .append (VersionedParamPath (
11891195 'enable_dhcp' , path = '{mode}/dhcp-client/enable' ,
11901196 vartype = 'yesno' , condition = {'mode' : 'layer3' }))
@@ -1196,6 +1202,22 @@ def _setup(self):
11961202 'dhcp_default_route_metric' ,
11971203 path = '{mode}/dhcp-client/default-route-metric' ,
11981204 vartype = 'int' , condition = {'mode' : 'layer3' }))
1205+ params .append (VersionedParamPath (
1206+ 'lacp_enable' ,
1207+ condition = {'mode' : ['layer3' , 'layer2' , 'ha' ]},
1208+ vartype = 'yesno' , path = '{mode}/lacp/enable' ))
1209+ params .append (VersionedParamPath (
1210+ 'lacp_passive_pre_negotiation' ,
1211+ condition = {'mode' : ['layer3' , 'layer2' , 'ha' ], 'lacp_enable' : True },
1212+ vartype = 'yesno' , path = '{mode}/lacp/passive-pre-negotiation' ))
1213+ params .append (VersionedParamPath (
1214+ 'lacp_mode' ,
1215+ condition = {'mode' : ['layer3' , 'layer2' , 'ha' ], 'lacp_enable' : True },
1216+ values = ['active' , 'passive' ], path = '{mode}/lacp/mode' ))
1217+ params .append (VersionedParamPath (
1218+ 'lacp_rate' ,
1219+ condition = {'mode' : ['layer3' , 'layer2' , 'ha' ], 'lacp_enable' : True },
1220+ values = ['fast' , 'slow' ], path = '{mode}/lacp/transmission-rate' ))
11991221
12001222 self ._params = tuple (params )
12011223
0 commit comments