]> git.ipfire.org Git - pbs.git/commitdiff
mirrors: Add the AS name if available to the export
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 3 Jul 2025 15:32:16 +0000 (15:32 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 3 Jul 2025 15:32:16 +0000 (15:32 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/buildservice/mirrors.py

index 576cd319ee2045e103f0721a897bfec814090d03..3afa5c4afebe29e24881db332123640dc816bf56 100644 (file)
@@ -242,6 +242,24 @@ class Mirror(sqlmodel.SQLModel, database.BackendMixin, database.SoftDeleteMixin,
 
        asn: int
 
+       # AS Name
+
+       @pydantic.computed_field
+       @property
+       def as_name(self) -> str | None:
+               # Return nothing if we don't have an ASN
+               if self.asn is None:
+                       return None
+
+               # Fetch the AS
+               network = self.backend.mirrors.location.get_as(self.asn)
+
+               # Return None if we could not find a match
+               if network is None:
+                       return None
+
+               return network.name
+
        # Addresses IPv6
 
        addresses_ipv6: list[ipaddress.IPv6Address] = sqlmodel.Field(exclude=True,