Fix crash when converting topology with broken link

Fix #845
This commit is contained in:
Julien Duponchelle committed 2016-12-21 14:39:44 +01:00
1 parent e53db1ed81
commit ef54367bf7
1 file changed
+16 -13
+16 -13
View File
@@ -310,20 +310,23 @@ def _convert_1_3_later(topo, topo_path):
# Create links
for old_link in topo.get("links", []):
nodes = []
source_node = {
"adapter_number": ports[old_link["source_port_id"]].get("adapter_number", 0),
"port_number": ports[old_link["source_port_id"]].get("port_number", 0),
"node_id": node_id_to_node_uuid[old_link["source_node_id"]]
}
nodes.append(source_node)
try:
nodes = []
source_node = {
"adapter_number": ports[old_link["source_port_id"]].get("adapter_number", 0),
"port_number": ports[old_link["source_port_id"]].get("port_number", 0),
"node_id": node_id_to_node_uuid[old_link["source_node_id"]]
}
nodes.append(source_node)
destination_node = {
"adapter_number": ports[old_link["destination_port_id"]].get("adapter_number", 0),
"port_number": ports[old_link["destination_port_id"]].get("port_number", 0),
"node_id": node_id_to_node_uuid[old_link["destination_node_id"]]
}
nodes.append(destination_node)
destination_node = {
"adapter_number": ports[old_link["destination_port_id"]].get("adapter_number", 0),
"port_number": ports[old_link["destination_port_id"]].get("port_number", 0),
"node_id": node_id_to_node_uuid[old_link["destination_node_id"]]
}
nodes.append(destination_node)
except KeyError:
continue
link = {
"link_id": str(uuid.uuid4()),