mirror of
https://github.com/GNS3/gns3-server
synced 2024-11-12 19:38:57 +00:00
Drop NAT port from cloud from old topologies
It was almost not used (only one occurrence in the whole beta test). Fix #844
This commit is contained in:
parent
1bf54bcaeb
commit
b1ae884bf0
@ -295,9 +295,9 @@ def _convert_1_3_later(topo, topo_path):
|
||||
elif old_node["type"] == "IOUDevice":
|
||||
node["node_type"] = "iou"
|
||||
elif old_node["type"] == "Cloud":
|
||||
_create_cloud(node, old_node, ":/symbols/cloud.svg")
|
||||
old_node["ports"] = _create_cloud(node, old_node, ":/symbols/cloud.svg")
|
||||
elif old_node["type"] == "Host":
|
||||
_create_cloud(node, old_node, ":/symbols/computer.svg")
|
||||
old_node["ports"] = _create_cloud(node, old_node, ":/symbols/computer.svg")
|
||||
else:
|
||||
raise NotImplementedError("Conversion of {} is not supported".format(old_node["type"]))
|
||||
|
||||
@ -483,6 +483,7 @@ def _create_cloud(node, old_node, icon):
|
||||
del old_node["properties"]["nios"]
|
||||
|
||||
ports = []
|
||||
keep_ports = []
|
||||
for old_port in old_node.get("ports", []):
|
||||
if old_port["name"].startswith("nio_gen_eth"):
|
||||
port_type = "ethernet"
|
||||
@ -492,6 +493,8 @@ def _create_cloud(node, old_node, icon):
|
||||
port_type = "tap"
|
||||
elif old_port["name"].startswith("nio_udp"):
|
||||
port_type = "udp"
|
||||
elif old_port["name"].startswith("nio_nat"):
|
||||
continue
|
||||
else:
|
||||
raise NotImplementedError("The conversion of cloud with {} is not supported".format(old_port["name"]))
|
||||
|
||||
@ -512,10 +515,12 @@ def _create_cloud(node, old_node, icon):
|
||||
"port_number": len(ports) + 1,
|
||||
"type": port_type
|
||||
}
|
||||
keep_ports.append(old_port)
|
||||
ports.append(port)
|
||||
|
||||
node["properties"]["ports_mapping"] = ports
|
||||
node["properties"]["interfaces"] = []
|
||||
return keep_ports
|
||||
|
||||
|
||||
def _convert_snapshots(topo_dir):
|
||||
|
53
tests/topologies/1_5_cloud_nat/after/1_5_cloud_nat.gns3
Normal file
53
tests/topologies/1_5_cloud_nat/after/1_5_cloud_nat.gns3
Normal file
@ -0,0 +1,53 @@
|
||||
{
|
||||
"auto_start": false,
|
||||
"name": "untitled",
|
||||
"project_id": "ANYSTR",
|
||||
"revision": 6,
|
||||
"topology": {
|
||||
"computes": [
|
||||
{
|
||||
"compute_id": "local",
|
||||
"host": "127.0.0.1",
|
||||
"name": "Local",
|
||||
"port": 3080,
|
||||
"protocol": "http"
|
||||
}
|
||||
],
|
||||
"drawings": [],
|
||||
"links": [
|
||||
],
|
||||
"nodes": [
|
||||
{
|
||||
"compute_id": "local",
|
||||
"console": null,
|
||||
"console_type": null,
|
||||
"first_port_name": null,
|
||||
"label": {
|
||||
"rotation": 0,
|
||||
"style": "font-family: TypeWriter;font-size: 10;font-weight: bold;fill: #000000;fill-opacity: 1.0;",
|
||||
"text": "Cloud 2",
|
||||
"x": 55,
|
||||
"y": -25
|
||||
},
|
||||
"name": "Cloud 2",
|
||||
"node_id": "ANYSTR",
|
||||
"node_type": "cloud",
|
||||
"port_name_format": "Ethernet{0}",
|
||||
"port_segment_size": 0,
|
||||
"properties": {
|
||||
"interfaces": [
|
||||
],
|
||||
"ports_mapping": [
|
||||
]
|
||||
},
|
||||
"symbol": ":/symbols/cloud.svg",
|
||||
"x": -144,
|
||||
"y": -135,
|
||||
"z": 1
|
||||
},
|
||||
{"name": "core-1", "first_port_name": null, "symbol": ":/symbols/cloud.svg", "node_type": "nat", "label": {"style": "font-family: TypeWriter;font-size: 10;font-weight: bold;fill: #000000;fill-opacity: 1.0;", "rotation": 0, "y": -25, "x": 10, "text": "core-1"}, "console_type": null, "port_name_format": "Ethernet{0}", "node_id": "c6de0f4e-101d-4c4f-b5a0-47df57e8a893", "y": 0, "z": 1, "compute_id": "local", "properties": {"ports": [{"name": "nat0", "type": "ethernet", "interface": "eth1", "port_number": 0}]}, "port_segment_size": 0, "console": null, "x": 72}
|
||||
]
|
||||
},
|
||||
"type": "topology",
|
||||
"version": "ANYSTR"
|
||||
}
|
116
tests/topologies/1_5_cloud_nat/before/1_5_cloud_nat.gns3
Normal file
116
tests/topologies/1_5_cloud_nat/before/1_5_cloud_nat.gns3
Normal file
@ -0,0 +1,116 @@
|
||||
{
|
||||
"auto_start": false,
|
||||
"name": "untitled",
|
||||
"project_id": "63c75180-b540-4389-94cd-62f4bc6a5e2b",
|
||||
"revision": 4,
|
||||
"topology": {
|
||||
"links": [
|
||||
{
|
||||
"description": "Link from core-1 port Ethernet0 to Cloud 2 port nio_nat:42",
|
||||
"destination_node_id": 3,
|
||||
"destination_port_id": 3,
|
||||
"id": 3,
|
||||
"source_node_id": 7,
|
||||
"source_port_id": 21
|
||||
}
|
||||
],
|
||||
"nodes": [
|
||||
{
|
||||
"description": "Cloud",
|
||||
"id": 3,
|
||||
"label": {
|
||||
"color": "#ff000000",
|
||||
"font": "TypeWriter,10,-1,5,75,0,0,0,0,0",
|
||||
"text": "Cloud 2",
|
||||
"x": 55.6015625,
|
||||
"y": -25.0
|
||||
},
|
||||
"ports": [
|
||||
{
|
||||
"description": "connected to core-1 on port Ethernet0",
|
||||
"id": 3,
|
||||
"link_id": 3,
|
||||
"name": "nio_nat:42",
|
||||
"nio": "NIO_NAT",
|
||||
"stub": true
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"name": "Cloud 2",
|
||||
"nios": [
|
||||
"nio_nat:42"
|
||||
]
|
||||
},
|
||||
"server_id": 1,
|
||||
"type": "Cloud",
|
||||
"x": -144.5,
|
||||
"y": -135.0
|
||||
},
|
||||
{
|
||||
"description": "QEMU VM",
|
||||
"id": 7,
|
||||
"label": {
|
||||
"color": "#ff000000",
|
||||
"font": "TypeWriter,10,-1,5,75,0,0,0,0,0",
|
||||
"text": "core-1",
|
||||
"x": 10.9765625,
|
||||
"y": -25.0
|
||||
},
|
||||
"linked_clone": true,
|
||||
"port_name_format": "Ethernet{0}",
|
||||
"ports": [
|
||||
{
|
||||
"adapter_number": 0,
|
||||
"description": "connected to Cloud 2 on port nio_nat:42",
|
||||
"id": 21,
|
||||
"link_id": 3,
|
||||
"name": "Ethernet0",
|
||||
"nio": "NIO_NAT",
|
||||
"port_number": 0
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"acpi_shutdown": false,
|
||||
"adapter_type": "e1000",
|
||||
"adapters": 1,
|
||||
"boot_priority": "c",
|
||||
"console": 5000,
|
||||
"console_type": "telnet",
|
||||
"cpu_throttling": 0,
|
||||
"cpus": 1,
|
||||
"hda_disk_image": "core-linux-6.4-internet-0.1.img",
|
||||
"hda_disk_image_md5sum": "8ebc5a6ec53a1c05b7aa101b5ceefe31",
|
||||
"hda_disk_interface": "ide",
|
||||
"hdb_disk_interface": "ide",
|
||||
"hdc_disk_interface": "ide",
|
||||
"hdd_disk_interface": "ide",
|
||||
"legacy_networking": false,
|
||||
"mac_address": "00:5e:2b:a8:93:00",
|
||||
"name": "core-1",
|
||||
"options": "-nographic",
|
||||
"platform": "x86_64",
|
||||
"process_priority": "normal",
|
||||
"qemu_path": "/usr/local/bin/qemu-system-x86_64",
|
||||
"ram": 256
|
||||
},
|
||||
"server_id": 1,
|
||||
"type": "QemuVM",
|
||||
"vm_id": "c6de0f4e-101d-4c4f-b5a0-47df57e8a893",
|
||||
"x": 72.5,
|
||||
"y": -0.5
|
||||
}
|
||||
],
|
||||
"servers": [
|
||||
{
|
||||
"host": "127.0.0.1",
|
||||
"id": 1,
|
||||
"local": true,
|
||||
"port": 3080,
|
||||
"protocol": "http",
|
||||
"vm": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"type": "topology",
|
||||
"version": "1.5.3dev2"
|
||||
}
|
Loading…
Reference in New Issue
Block a user