Skip to content
Snippets Groups Projects
Commit 3d769304 authored by Hakan Calim's avatar Hakan Calim
Browse files

NAT-329 added interface names validation after merge back

parent 3b3faf5c
No related branches found
No related tags found
No related merge requests found
Pipeline #84612 failed
......@@ -219,3 +219,28 @@ def validate_site_name(site_name: str) -> str:
)
raise ValueError(msg)
return site_name
def validate_interface_name_list(interface_name_list: list) -> list:
"""Validates that the provided interface name matches the expected pattern.
The expected pattern for the interface name is one of 'ge', 'et', 'xe' followed by a dash '-',
then a digit between 0 and 9, a forward slash '/', another digit between 0 and 9,
another forward slash '/', and ends with a digit between 0 and 9.
For example: 'xe-1/0/0'.
Parameters:
interface_name_list (list): List of interface names to validate.
Returns:
list: The list of interface names if all match was successfull.
Otherwise it will throw a ValueError exception.
"""
pattern = re.compile(r'^(ge|et|xe)-[0-9]/[0-9]/[0-9]$')
for interface_name in interface_name_list:
if not bool(pattern.match(interface_name)):
raise ValueError(
"Invalid interface name. The interface name should be of format: xe-1/0/0. Get: [{}]".
format(interface_name))
return interface_name_list
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment