Fix check_subnet_router filters
Device owner of router ports is not limited to network:router_interface and can also be network:router_interface_distributed or network:ha_router_replicated_interface depending on the router to which port is attached. Currently, when HA router is used, trove fails with: `Subnet is not associated with router` since port does not pass filter Change-Id: Ie8b3884dd13147f29d5632275fa5c75e801e04c8
This commit is contained in:
parent
22b99fb05d
commit
d5497179d4
@ -81,6 +81,12 @@ def check_subnet_router(client, subnet_id):
|
||||
"""Check if the subnet is associated with a router."""
|
||||
router_ports = client.list_ports(
|
||||
device_owner="network:router_interface",
|
||||
fixed_ips=f"subnet_id={subnet_id}"
|
||||
)["ports"] + client.list_ports(
|
||||
device_owner="network:router_interface_distributed",
|
||||
fixed_ips=f"subnet_id={subnet_id}"
|
||||
)["ports"] + client.list_ports(
|
||||
device_owner="network:ha_router_replicated_interface",
|
||||
fixed_ips=f"subnet_id={subnet_id}")["ports"]
|
||||
if not router_ports:
|
||||
raise exception.TroveError(f"Subnet {subnet_id} is not "
|
||||
|
Loading…
Reference in New Issue
Block a user