Expand autocreated LCP namelen to all possible (dot1q, qin*) scenarios. Allow manually set LCP to be 15char in length
This commit is contained in:
@ -13,13 +13,13 @@ vxlan:
|
|||||||
bridgedomain:
|
bridgedomain:
|
||||||
description: str(exclude='\'"',len=64,required=False)
|
description: str(exclude='\'"',len=64,required=False)
|
||||||
mtu: int(min=128,max=9216,required=False)
|
mtu: int(min=128,max=9216,required=False)
|
||||||
lcp: str(max=8,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
lcp: str(max=15,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
||||||
addresses: list(ip_interface(),min=1,max=6,required=False)
|
addresses: list(ip_interface(),min=1,max=6,required=False)
|
||||||
interfaces: list(str())
|
interfaces: list(str())
|
||||||
---
|
---
|
||||||
loopback:
|
loopback:
|
||||||
description: str(exclude='\'"',len=64,required=False)
|
description: str(exclude='\'"',len=64,required=False)
|
||||||
lcp: str(max=8,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
lcp: str(max=15,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
||||||
mtu: int(min=128,max=9216,required=False)
|
mtu: int(min=128,max=9216,required=False)
|
||||||
addresses: list(ip_interface(),min=1,max=6,required=False)
|
addresses: list(ip_interface(),min=1,max=6,required=False)
|
||||||
---
|
---
|
||||||
@ -30,7 +30,7 @@ bondethernet:
|
|||||||
interface:
|
interface:
|
||||||
description: str(exclude='\'"',len=64,required=False)
|
description: str(exclude='\'"',len=64,required=False)
|
||||||
mac: mac(required=False)
|
mac: mac(required=False)
|
||||||
lcp: str(max=8,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
lcp: str(max=15,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
||||||
mtu: int(min=128,max=9216,required=False)
|
mtu: int(min=128,max=9216,required=False)
|
||||||
addresses: list(ip_interface(),min=1,max=6,required=False)
|
addresses: list(ip_interface(),min=1,max=6,required=False)
|
||||||
sub-interfaces: map(include('sub-interface'),key=int(min=1,max=4294967295),required=False)
|
sub-interfaces: map(include('sub-interface'),key=int(min=1,max=4294967295),required=False)
|
||||||
@ -38,7 +38,7 @@ interface:
|
|||||||
---
|
---
|
||||||
sub-interface:
|
sub-interface:
|
||||||
description: str(exclude='\'"',len=64,required=False)
|
description: str(exclude='\'"',len=64,required=False)
|
||||||
lcp: str(max=8,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
lcp: str(max=15,matches='[a-z]+[a-z0-9-]{,7}',required=False)
|
||||||
mtu: int(min=128,max=9216,required=False)
|
mtu: int(min=128,max=9216,required=False)
|
||||||
addresses: list(ip_interface(),required=False)
|
addresses: list(ip_interface(),required=False)
|
||||||
encapsulation: include('encapsulation',required=False)
|
encapsulation: include('encapsulation',required=False)
|
||||||
|
@ -4,7 +4,8 @@ test:
|
|||||||
expected:
|
expected:
|
||||||
- "yamale: .* is not a "
|
- "yamale: .* is not a "
|
||||||
- "yamale: .*: Unexpected element"
|
- "yamale: .*: Unexpected element"
|
||||||
count: 12
|
- "Length of .* is greater than 15"
|
||||||
|
count: 13
|
||||||
---
|
---
|
||||||
interfaces:
|
interfaces:
|
||||||
GigabitEthernet1/0/0:
|
GigabitEthernet1/0/0:
|
||||||
@ -20,6 +21,7 @@ interfaces:
|
|||||||
|
|
||||||
GigabitEthernet1/0/1:
|
GigabitEthernet1/0/1:
|
||||||
mtu: 1500
|
mtu: 1500
|
||||||
|
lcp: "a234567890123456"
|
||||||
sub-interfaces:
|
sub-interfaces:
|
||||||
"string":
|
"string":
|
||||||
description: "the sub-int key should be an int"
|
description: "the sub-int key should be an int"
|
||||||
|
@ -2,12 +2,23 @@ test:
|
|||||||
description: "The length of the LCP name is too long"
|
description: "The length of the LCP name is too long"
|
||||||
errors:
|
errors:
|
||||||
expected:
|
expected:
|
||||||
- "Length .* is greater than 8"
|
- "sub-interface .* has LCP with too long name .*"
|
||||||
|
count: 2
|
||||||
---
|
---
|
||||||
interfaces:
|
interfaces:
|
||||||
GigabitEthernet1/0/0:
|
GigabitEthernet1/0/0:
|
||||||
lcp: "e01234567"
|
lcp: "e23456789012"
|
||||||
sub-interfaces:
|
sub-interfaces:
|
||||||
100:
|
100:
|
||||||
description: "VLAN 100"
|
description: "VLAN 100"
|
||||||
|
GigabitEthernet1/0/1:
|
||||||
|
lcp: "e2345678"
|
||||||
|
sub-interfaces:
|
||||||
|
100:
|
||||||
|
description: "VLAN 100"
|
||||||
|
101:
|
||||||
|
description: "QinQ 101"
|
||||||
|
encapsulation:
|
||||||
|
dot1q: 100
|
||||||
|
inner-dot1q: 100
|
||||||
|
|
||||||
|
@ -334,6 +334,9 @@ def validate_interfaces(yaml):
|
|||||||
if iface_lcp and not lcp.is_unique(yaml, iface_lcp):
|
if iface_lcp and not lcp.is_unique(yaml, iface_lcp):
|
||||||
msgs.append("interface %s does not have a unique LCP name %s" % (ifname, iface_lcp))
|
msgs.append("interface %s does not have a unique LCP name %s" % (ifname, iface_lcp))
|
||||||
result = False
|
result = False
|
||||||
|
if iface_lcp and len(iface_lcp)>15:
|
||||||
|
msgs.append("interface %s has LCP with too long name %s" % (fname, iface_lcp))
|
||||||
|
result = False
|
||||||
|
|
||||||
if 'addresses' in iface:
|
if 'addresses' in iface:
|
||||||
for a in iface['addresses']:
|
for a in iface['addresses']:
|
||||||
|
Reference in New Issue
Block a user