-def is_reserved_port(port_id):
- """
- Checks to see if the resource id for a port follows
- the reserve port concept
- """
- formats = [
- ["port_id", re.compile(r"reserve_port_(.+?)_floating_ip_\d+")],
- ["port_id", re.compile(r"reserve_port_(.+?)_floating_v6_ip_\d+")],
- ]
- for f in formats:
- m = f[1].match(port_id.lower())
- if m and m.group(1):
- return True
- return False
+def get_list_of_ports_attached_to_nova_server(nova_server):
+ networks_list = nova_server.get("properties", {}).get("networks")
+
+ port_ids = []
+ if networks_list:
+ for network in networks_list:
+ network_prop = network.get("port")
+ if network_prop:
+ pid = network_prop.get("get_param")
+ if not pid:
+ pid = network_prop.get("get_resource")
+ port_ids.append(pid)
+
+ return port_ids