diff --git a/gso/api/v1/imports.py b/gso/api/v1/imports.py index c65c23b89c1734f7d06c0a50c9f10e2d0b3a9eed..9cd2ee90f1433d93229b793f7c1b43a5cbb1428e 100644 --- a/gso/api/v1/imports.py +++ b/gso/api/v1/imports.py @@ -39,6 +39,15 @@ class SiteImportModel(BaseModel): site_ts_address: str customer: str + @validator("site_name", allow_reuse=True) + def site_name_must_be_valid(cls, site_name: str) -> str: + # Accept 3 chapital letters and only one ditigt after capital letters. + pattern = re.compile(r"^[A-Z]{3}[0-9]?$") + if not bool(pattern.match(site_name)): + raise ValueError(f"Enter a valid site name similar looks like AMS, AMS1or LON9. Get: {site_name}") + + return site_name + class RouterImportModel(BaseModel): customer: str @@ -105,15 +114,6 @@ class IptrunkImportModel(BaseModel): return value - @validator("site_name", allow_reuse=True) - def site_name_must_be_valid(cls, site_name: str) -> str: - # Accept 3 chapital letters and only one ditigt after capital letters. - pattern = re.compile(r"^[A-Z]{3}[0-9]?$") - if not bool(pattern.match(site_name)): - raise ValueError(f"Enter a valid site name similar looks like AMS, AMS1or LON9. Get: {site_name}") - - return site_name - @root_validator def check_members(cls, values: dict[str, Any]) -> dict[str, Any]: min_links = values["iptrunk_minimum_links"]