mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-08-27 12:30:13 +03:00
commit
4701712a86
10
CHANGELOG
10
CHANGELOG
@ -1,5 +1,15 @@
|
||||
# Change Log
|
||||
|
||||
## 2.2.57 23/03/2026
|
||||
|
||||
* feat(telnet_server): improve error handling and connection management
|
||||
* Deactivate 'use default IOU values' by default and update RAM/NVRAM values
|
||||
* Make sure the node shows as stopped when the wrap console cannot be stopped
|
||||
* tests(controller,port): short_name finishes successfully when port name is None
|
||||
* fix(controller,port): handle None port name to prevent TypeError in short_name method
|
||||
* fix: busybox static link detection on Alpine/musl
|
||||
* Take populated disks into consideration when calculating PCI device ID
|
||||
|
||||
## 2.2.56.1 28/01/2026
|
||||
|
||||
* Fix telnet keepalive options on macOS
|
||||
|
||||
21
gns3server/appliances/alpinet.gns3a
Normal file
21
gns3server/appliances/alpinet.gns3a
Normal file
@ -0,0 +1,21 @@
|
||||
{
|
||||
"appliance_id": "a2209414-88a6-403b-a2e1-477a057ec954",
|
||||
"name": "AlpiNet",
|
||||
"category": "guest",
|
||||
"description": "AlpiNet is a lightweight Alpine-based networking toolbox for GNS3.\n\nCOMPREHENSIVE TOOLKIT:\n• Network: ip, ifconfig, ping, traceroute, mtr, arping, nmap, tcpdump\n• Performance: iperf, iperf3\n• HTTP/Web: curl, wget\n• TCP/UDP: netcat, socat, telnet\n• Advanced: ethtool, bridge-utils, vlan\n• Firewall: iptables, ip6tables, nftables\n• File Transfer: FTP (lftp), TFTP, SSH (scp/sftp), rsync\n• DNS: host, nslookup, dig\n• System: nano, tmux, screen, htop, bash\n• Text Tools: grep, sed, awk, jq, less\n• Compression: tar, gzip\n• Utilities: tree, file, openssl\n\nType 'alpinet-tools' in the container for the complete tool list.\n\nOptimized for network testing, troubleshooting, and education.",
|
||||
"vendor_name": "AlpiNet Project",
|
||||
"vendor_url": "https://www.alpinelinux.org/",
|
||||
"product_name": "AlpiNet",
|
||||
"registry_version": 4,
|
||||
"status": "stable",
|
||||
"maintainer": "nazDridoy",
|
||||
"maintainer_email": "nazdridoy399@gmail.com",
|
||||
"usage": "The /root directory is persistent across restarts. Type 'alpinet-tools' to see all available utilities.",
|
||||
"symbol": "AlpiNet.svg",
|
||||
"docker": {
|
||||
"adapters": 1,
|
||||
"image": "gns3/alpinet:latest",
|
||||
"console_type": "telnet",
|
||||
"environment": "TERM=xterm"
|
||||
}
|
||||
}
|
||||
@ -1,7 +1,8 @@
|
||||
{
|
||||
"appliance_id": "4aa78f74-c769-43e0-9ef1-5dd2cf1909c6",
|
||||
"name": "Asterfusion AsterNOS-VPP",
|
||||
"category": "router",
|
||||
"description": "AsterNOS-VPP leverages SONiC’s robust routing features and management capability with VPP’s high-performance data forwarding. It supports L3 routing, NAT, PPPoE, and VPN services. Minimum requirements: 4 vCPUs and 4GB RAM.",
|
||||
"description": "AsterNOS-VPP leverages SONiC’s robust routing features and management capability with VPP’s high-performance data forwarding. It supports L3 routing, NAT, PPPoE, and VPN services. Minimum requirements: 4 vCPUs and 8GB RAM.",
|
||||
"vendor_name": "Asterfusion",
|
||||
"vendor_url": "https://cloudswit.ch/product/sonic-enterprise-distribution/#vAsterNOS",
|
||||
"documentation_url": "https://docs.asternos.com/routing",
|
||||
@ -10,23 +11,32 @@
|
||||
"status": "stable",
|
||||
"maintainer": "Asterfusion Product Team",
|
||||
"maintainer_email": "bd@cloudswit.ch",
|
||||
"availability": "with-registration",
|
||||
"images": [
|
||||
{
|
||||
"filename": "AsterNOS-VPP_V6.1-R0101P02_x86.img.gz",
|
||||
"version": "V6.1",
|
||||
"filename": "AsterNOS-VPP_V6.1-R0101P02_x86.img",
|
||||
"version": "6.1",
|
||||
"md5sum": "55834c3e8849ab226144d79ef76acf81",
|
||||
"filesize": 1318201015,
|
||||
"download_url": "https://asternos.dev/api/file/b2c9fd83-a9d3-46f3-9676-6b49dd481d6c",
|
||||
"comments": "Registration is required to download the image."
|
||||
"compression": "gzip"
|
||||
}
|
||||
],
|
||||
"qemu": {
|
||||
"adapter_type": "virtio-net-pci",
|
||||
"adapters": 4,
|
||||
"ram": 4096,
|
||||
"ram": 8192,
|
||||
"cpus": 4,
|
||||
"arch": "x86_64",
|
||||
"console_type": "telnet",
|
||||
"kvm": "require"
|
||||
}
|
||||
},
|
||||
"versions": [
|
||||
{
|
||||
"name": "6.1",
|
||||
"images": {
|
||||
"hda_disk_image": "AsterNOS-VPP_V6.1-R0101P02_x86.img"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -15,11 +15,17 @@
|
||||
"iou": {
|
||||
"ethernet_adapters": 4,
|
||||
"serial_adapters": 0,
|
||||
"nvram": 512,
|
||||
"ram": 512,
|
||||
"nvram": 256,
|
||||
"ram": 1024,
|
||||
"startup_config": "iou_l2_base_startup-config.txt"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "x86_64_crb_linux_l2-adventerprisek9-ms.17.16.1a.iol",
|
||||
"version": "17.16.1a",
|
||||
"md5sum": "d55879318e51c5401fb9314d45c67728",
|
||||
"filesize": 244265240
|
||||
},
|
||||
{
|
||||
"filename": "x86_64_crb_linux_l2-adventerprisek9-ms.iol",
|
||||
"version": "17.15.1",
|
||||
@ -33,25 +39,25 @@
|
||||
"filesize": 240355720
|
||||
},
|
||||
{
|
||||
"filename": "i86bi-linux-l2-ipbasek9-15.1g.bin",
|
||||
"version": "15.1g",
|
||||
"md5sum": "0b8b9e14ca99b68c654e44c4296857ba",
|
||||
"filesize": 62137336
|
||||
"filename": "i86bi_linux_l2-adventerprisek9-ms.SSA.high_iron_20190423.bin",
|
||||
"version": "15.2(20190423)",
|
||||
"md5sum": "ffe884f8e762b762d7886c51d8ee015c",
|
||||
"filesize": 126249700
|
||||
},
|
||||
{
|
||||
"filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin",
|
||||
"version": "15.1a",
|
||||
"md5sum": "9549a20a7391fb849da32caa77a0d254",
|
||||
"filesize": 72726092
|
||||
},
|
||||
{
|
||||
"filename": "i86bi-linux-l2-adventerprisek9-15.2d.bin",
|
||||
"version": "15.2d",
|
||||
"md5sum": "f16db44433beb3e8c828db5ddad1de8a",
|
||||
"filesize": 105036380
|
||||
"filename": "i86bi_LinuxL2-AdvEnterpriseK9-M_152_May_2018.bin",
|
||||
"version": "15.2(20180510)",
|
||||
"md5sum": "d704b68c5f4c4f92e56b754b49b92012",
|
||||
"filesize": 126226692
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "17.16.1a",
|
||||
"images": {
|
||||
"image": "x86_64_crb_linux_l2-adventerprisek9-ms.17.16.1a.iol"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "17.15.1",
|
||||
"images": {
|
||||
@ -65,21 +71,15 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "15.1g",
|
||||
"name": "15.2(20190423)",
|
||||
"images": {
|
||||
"image": "i86bi-linux-l2-ipbasek9-15.1g.bin"
|
||||
"image": "i86bi_linux_l2-adventerprisek9-ms.SSA.high_iron_20190423.bin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "15.1a",
|
||||
"name": "15.2(20180510)",
|
||||
"images": {
|
||||
"image": "i86bi-linux-l2-adventerprisek9-15.1a.bin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "15.2d",
|
||||
"images": {
|
||||
"image": "i86bi-linux-l2-adventerprisek9-15.2d.bin"
|
||||
"image": "i86bi_LinuxL2-AdvEnterpriseK9-M_152_May_2018.bin"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@ -15,11 +15,17 @@
|
||||
"iou": {
|
||||
"ethernet_adapters": 2,
|
||||
"serial_adapters": 2,
|
||||
"nvram": 512,
|
||||
"ram": 512,
|
||||
"nvram": 256,
|
||||
"ram": 1024,
|
||||
"startup_config": "iou_l3_base_startup-config.txt"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "x86_64_crb_linux-adventerprisek9-ms.17.16.1a.iol",
|
||||
"version": "17.16.1a",
|
||||
"md5sum": "39bdf959c3b99a3c81d66451f1cf0404",
|
||||
"filesize": 293062920
|
||||
},
|
||||
{
|
||||
"filename": "x86_64_crb_linux-adventerprisek9-ms.iol",
|
||||
"version": "17.15.1",
|
||||
@ -37,21 +43,15 @@
|
||||
"version": "15.7(3)M2",
|
||||
"md5sum": "d6874260c3daeeb96d10fc844ae0b93b",
|
||||
"filesize": 184759244
|
||||
},
|
||||
{
|
||||
"filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin",
|
||||
"version": "155-2T",
|
||||
"md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5",
|
||||
"filesize": 172982492
|
||||
},
|
||||
{
|
||||
"filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin",
|
||||
"version": "15.4.1T",
|
||||
"md5sum": "2eabae17778316c49cbc80e8e81262f9",
|
||||
"filesize": 152677848
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "17.16.1a",
|
||||
"images": {
|
||||
"image": "x86_64_crb_linux-adventerprisek9-ms.17.16.1a.iol"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "17.15.1",
|
||||
"images": {
|
||||
@ -69,18 +69,6 @@
|
||||
"images": {
|
||||
"image": "i86bi_LinuxL3-AdvEnterpriseK9-M2_157_3_May_2018.bin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "155-2T",
|
||||
"images": {
|
||||
"image": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "15.4.1T",
|
||||
"images": {
|
||||
"image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
60
gns3server/appliances/home-assistant.gns3a
Normal file
60
gns3server/appliances/home-assistant.gns3a
Normal file
@ -0,0 +1,60 @@
|
||||
{
|
||||
"appliance_id": "4ac0d5bc-714d-4a5a-8af5-8fb452046acd",
|
||||
"name": "Home Assistant",
|
||||
"category": "guest",
|
||||
"description": "Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts.",
|
||||
"vendor_name": "Open Home Foundation",
|
||||
"vendor_url": "https://www.openhomefoundation.org/",
|
||||
"vendor_logo_url": "https://www.openhomefoundation.org/assets/images/logo/open-home-foundation.svg",
|
||||
"documentation_url": "https://www.home-assistant.io/installation/alternative",
|
||||
"product_name": "haos",
|
||||
"product_url": "https://www.home-assistant.io/",
|
||||
"registry_version": 8,
|
||||
"status": "stable",
|
||||
"availability": "free",
|
||||
"maintainer": "Neyder Achahuanco Apaza",
|
||||
"maintainer_email": "gns3@neyder.net",
|
||||
"usage": "You will be able to reach Home Assistant on homeassistant.local:8123, you might need to access Home Assistant at homeassistant:8123 or http://X.X.X.X:8123 (replace X.X.X.X with your virtual machine\u2019s IP address).\nYou can access trough console with root user without password.",
|
||||
"symbol": "home-assistant-logomark-color-on-light.svg",
|
||||
"default_username": "cisco",
|
||||
"default_password": "admin",
|
||||
"settings": [
|
||||
{
|
||||
"name": "Default template settings",
|
||||
"default": true,
|
||||
"template_type": "qemu",
|
||||
"template_properties":
|
||||
{
|
||||
"adapter_type": "virtio-net-pci",
|
||||
"platform": "x86_64",
|
||||
"adapters": 1,
|
||||
"ram": 2048,
|
||||
"cpus": 2,
|
||||
"hda_disk_interface": "virtio",
|
||||
"console_type": "telnet",
|
||||
"boot_priority": "cd",
|
||||
"on_close": "shutdown_signal",
|
||||
"uefi": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"images": [
|
||||
{
|
||||
"filename": "haos_ova-17.1.qcow2",
|
||||
"version": "17.1",
|
||||
"md5sum": "e1b950430045859a3ac035cb420df158",
|
||||
"filesize": 1024393216,
|
||||
"download_url": "https://www.home-assistant.io/installation/alternative",
|
||||
"direct_download_url": "https://github.com/home-assistant/operating-system/releases/download/17.1/haos_ova-17.1.qcow2.xz",
|
||||
"compression": "xz"
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"images": {
|
||||
"hda_disk_image": "haos_ova-17.1.qcow2"
|
||||
},
|
||||
"name": "17.1"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -111,9 +111,37 @@
|
||||
"md5sum": "e2eb1a4fff9d56815f37c2e82a6279fb",
|
||||
"version": "25.11.0",
|
||||
"direct_download_url": "https://github.com/kernelkit/infix/releases/download/v25.11.0/infix-x86_64-disk-25.11.0.qcow2"
|
||||
},
|
||||
{
|
||||
"filename": "infix-x86_64-v26.01.0.qcow2",
|
||||
"filesize": 307363840,
|
||||
"md5sum": "bd3b9c56f98ba264c36e4d6f69931546",
|
||||
"version": "26.01.0",
|
||||
"direct_download_url": "https://github.com/kernelkit/infix/releases/download/v26.01.0/infix-x86_64-v26.01.0.qcow2"
|
||||
},
|
||||
{
|
||||
"filename": "infix-x86_64-v26.02.1.qcow2",
|
||||
"filesize": 316407808,
|
||||
"md5sum": "0c4da508cfcb702c066f47227644b65f",
|
||||
"version": "26.02.1",
|
||||
"direct_download_url": "https://github.com/kernelkit/infix/releases/download/v26.02.1/infix-x86_64-v26.02.1.qcow2"
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "26.02.1",
|
||||
"images": {
|
||||
"bios_image": "OVMF-edk2-stable202305.fd",
|
||||
"hda_disk_image": "infix-x86_64-v26.02.1.qcow2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "26.01.0",
|
||||
"images": {
|
||||
"bios_image": "OVMF-edk2-stable202305.fd",
|
||||
"hda_disk_image": "infix-x86_64-v26.01.0.qcow2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "25.11.0",
|
||||
"images": {
|
||||
|
||||
@ -14,11 +14,11 @@
|
||||
"maintainer_email": "github@sugarpapa.mozmail.com",
|
||||
"usage": "GNS3 SHOULD be a baremetal installation. Using the GNS3 VM MIGHT result in unwanted issues. Default user is root. No password is needed.",
|
||||
"symbol": "juniper-vmx.svg",
|
||||
"first_port_name": "ge-0/0/0",
|
||||
"first_port_name": "fxp0",
|
||||
"port_name_format": "ge-0/0/{port0}",
|
||||
"qemu": {
|
||||
"adapter_type": "virtio-net-pci",
|
||||
"adapters": 17,
|
||||
"adapters": 10,
|
||||
"ram": 5120,
|
||||
"cpus": 4,
|
||||
"hda_disk_interface": "virtio",
|
||||
@ -72,4 +72,4 @@
|
||||
"name": "23.2R1.15"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@ -23,6 +23,15 @@
|
||||
"kvm": "allow"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "openwrt-25.12.0-x86-64-generic-ext4-combined.img",
|
||||
"version": "25.12.0",
|
||||
"md5sum": "8c0e01307fc47c1f862a5d0c9a51c2c5",
|
||||
"filesize": 126353408,
|
||||
"download_url": "https://downloads.openwrt.org/releases/25.12.0/targets/x86/64/",
|
||||
"direct_download_url": "https://downloads.openwrt.org/releases/25.12.0/targets/x86/64/openwrt-25.12.0-x86-64-generic-ext4-combined.img.gz",
|
||||
"compression": "gzip"
|
||||
},
|
||||
{
|
||||
"filename": "openwrt-24.10.2-x86-64-generic-ext4-combined.img",
|
||||
"version": "24.10.2",
|
||||
@ -232,6 +241,12 @@
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "25.12.0",
|
||||
"images": {
|
||||
"hda_disk_image": "openwrt-25.12.0-x86-64-generic-ext4-combined.img"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "24.10.2",
|
||||
"images": {
|
||||
|
||||
@ -25,6 +25,15 @@
|
||||
"kvm": "require"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "OPNsense-26.1-nano-amd64.img",
|
||||
"version": "26.1",
|
||||
"md5sum": "3b774e8fb651a5d00aa6fa3e0d1b1ff0",
|
||||
"filesize": 3221225472,
|
||||
"download_url": "https://opnsense.c0urier.net/releases/26.1/",
|
||||
"direct_download_url": "https://opnsense.c0urier.net/releases/26.1/OPNsense-26.1-nano-amd64.img.bz2",
|
||||
"compression": "bzip2"
|
||||
},
|
||||
{
|
||||
"filename": "OPNsense-25.7-nano-amd64.img",
|
||||
"version": "25.7",
|
||||
@ -90,6 +99,24 @@
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "26.1",
|
||||
"images": {
|
||||
"hda_disk_image": "OPNsense-26.1-nano-amd64.img"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "25.7",
|
||||
"images": {
|
||||
"hda_disk_image": "OPNsense-25.7-nano-amd64.img"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "25.1",
|
||||
"images": {
|
||||
"hda_disk_image": "OPNsense-25.1-nano-amd64.img"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "24.7",
|
||||
"images": {
|
||||
|
||||
@ -13,11 +13,11 @@
|
||||
"availability": "service-contract",
|
||||
"maintainer": "Da-Geek",
|
||||
"maintainer_email": "dageek@dageeks-geeks.gg",
|
||||
"usage": "You should download Red Hat Enterprise Linux KVM Guest Image from https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.5/x86_64/product-software attach/customize rhel-cloud-init.iso and start.\nusername: cloud-user\npassword: redhat",
|
||||
"usage": "You should download Red Hat Enterprise Linux KVM Guest Image from https://access.redhat.com/downloads/content/rhel attach/customize rhel-cloud-init.iso and start.\nusername: cloud-user\npassword: redhat",
|
||||
"qemu": {
|
||||
"adapter_type": "virtio-net-pci",
|
||||
"adapters": 1,
|
||||
"ram": 1024,
|
||||
"ram": 1536,
|
||||
"hda_disk_interface": "virtio",
|
||||
"arch": "x86_64",
|
||||
"console_type": "telnet",
|
||||
@ -27,11 +27,32 @@
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "rhel-9.5-x86_64-kvm.qcow2",
|
||||
"version": "9.5",
|
||||
"md5sum": "8174396d5cb47727c59dd04dd9a05418",
|
||||
"filesize": 974389248,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.5/x86_64/product-software"
|
||||
"filename": "rhel-10.1-x86_64-kvm.qcow2",
|
||||
"version": "10.1",
|
||||
"md5sum": "b2f35b1ac0600de31cadf30a622a2fef",
|
||||
"filesize": 1010827264,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---10/10.1/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-10.0-x86_64-kvm.qcow2",
|
||||
"version": "10.0",
|
||||
"md5sum": "ea5918fa116ec53f9ef1ce4be69ae2be",
|
||||
"filesize": 855506944,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---10/10.0/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-9.7-x86_64-kvm.qcow2",
|
||||
"version": "9.7",
|
||||
"md5sum": "abc2f42cc5daeea6b03d0d2d478a0d1c",
|
||||
"filesize": 1229979648,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.7/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-9.6-x86_64-kvm.qcow2",
|
||||
"version": "9.6",
|
||||
"md5sum": "056648d716275053ebe77b1d4f68c862",
|
||||
"filesize": 1060438016,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.6/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-9.4-x86_64-kvm.qcow2",
|
||||
@ -40,34 +61,6 @@
|
||||
"filesize": 957218816,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.4/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-9.3-x86_64-kvm.qcow2",
|
||||
"version": "9.3",
|
||||
"md5sum": "409d8d15f5177db2617b0e3e02139b5c",
|
||||
"filesize": 858193920,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.3/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-9.2-x86_64-kvm.qcow2",
|
||||
"version": "9.2",
|
||||
"md5sum": "f33845298b387dbcfbf162c6b4e3f8c8",
|
||||
"filesize": 819265536,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/9.2/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-baseos-9.1-x86_64-kvm.qcow2",
|
||||
"version": "9.1",
|
||||
"md5sum": "622de743da83bcec1ad2959ecaedb8f4",
|
||||
"filesize": 753401856,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/9.1/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-baseos-9.0-x86_64-kvm.qcow2",
|
||||
"version": "9.0",
|
||||
"md5sum": "4a41497d354fe99a4abf55f1ed73edcb",
|
||||
"filesize": 696582144,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/9.0/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.10-x86_64-kvm.qcow2",
|
||||
"version": "8.10",
|
||||
@ -75,13 +68,6 @@
|
||||
"filesize": 1065091072,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.10/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.9-x86_64-kvm.qcow2",
|
||||
"version": "8.9",
|
||||
"md5sum": "23295fe508678cbdebfbdbd41ef6e6e2",
|
||||
"filesize": 971833344,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.9/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.8-x86_64-kvm.qcow2",
|
||||
"version": "8.8",
|
||||
@ -89,13 +75,6 @@
|
||||
"filesize": 926810112,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.8/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.7-x86_64-kvm.qcow2",
|
||||
"version": "8.7",
|
||||
"md5sum": "ab71a2c4cc276441bf999f531e064507",
|
||||
"filesize": 858128384,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.7/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.6-x86_64-kvm.qcow2",
|
||||
"version": "8.6",
|
||||
@ -104,31 +83,10 @@
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.6/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.5-x86_64-kvm.qcow2",
|
||||
"version": "8.5",
|
||||
"md5sum": "1efb78dbb2033ba4ac6589a06c95c2d4",
|
||||
"filesize": 779419648,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.5/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.4-x86_64-kvm.qcow2",
|
||||
"version": "8.4",
|
||||
"md5sum": "db4c3a72857b784dc6e96120351f2894",
|
||||
"filesize": 727449600,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.4/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-8.3-x86_64-kvm.qcow2",
|
||||
"version": "8.3",
|
||||
"md5sum": "dd554c059e0910379fff88f677f4a4b3",
|
||||
"filesize": 1316683776,
|
||||
"download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---8/8.3/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
"filename": "rhel-server-7.9-x86_64-kvm.qcow2",
|
||||
"filename": "rhel-server-7.9-update-12-x86_64-kvm.qcow2",
|
||||
"version": "7.9",
|
||||
"md5sum": "8d6669b3e2bb8df15b9b4280936cf950",
|
||||
"filesize": 827777024,
|
||||
"md5sum": "f77fc7e3cf31a210a8244e486466ce34",
|
||||
"filesize": 838036992,
|
||||
"download_url": "https://access.redhat.com/downloads/content/69/ver=/rhel---7/7.9/x86_64/product-software"
|
||||
},
|
||||
{
|
||||
@ -140,17 +98,39 @@
|
||||
},
|
||||
{
|
||||
"filename": "rhel-cloud-init.iso",
|
||||
"version": "1.0",
|
||||
"md5sum": "421745b0d13615ecd48696f98d8b6352",
|
||||
"version": "1.1",
|
||||
"md5sum": "f1f908d36e67f843dd94db1c2e8c8373",
|
||||
"filesize": 374784,
|
||||
"download_url": "https://gitlab.com/neyder/rhel-cloud-init/raw/master/rhel-cloud-init.iso"
|
||||
"download_url": "https://github.com/GNS3/gns3-registry/tree/master/cloud-init/rhel",
|
||||
"direct_download_url": "https://github.com/GNS3/gns3-registry/raw/master/cloud-init/rhel/rhel-cloud-init.iso"
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "9.5",
|
||||
"name": "10.1",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-9.5-x86_64-kvm.qcow2",
|
||||
"hda_disk_image": "rhel-10.1-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "10.0",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-10.0-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.7",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-9.7-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.6",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-9.6-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
@ -161,34 +141,6 @@
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.3",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-9.3-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.2",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-9.2-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.1",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-baseos-9.1-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "9.0",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-baseos-9.0-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.10",
|
||||
"images": {
|
||||
@ -196,13 +148,6 @@
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.9",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-8.9-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.8",
|
||||
"images": {
|
||||
@ -210,13 +155,6 @@
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.7",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-8.7-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.6",
|
||||
"images": {
|
||||
@ -224,31 +162,10 @@
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.5",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-8.5-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.4",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-8.4-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "8.3",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-8.3-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "7.9",
|
||||
"images": {
|
||||
"hda_disk_image": "rhel-server-7.9-x86_64-kvm.qcow2",
|
||||
"hda_disk_image": "rhel-server-7.9-update-12-x86_64-kvm.qcow2",
|
||||
"cdrom_image": "rhel-cloud-init.iso"
|
||||
}
|
||||
},
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"appliance_id": "ed6b9f98-7de2-4d61-a3ed-ad4c3e323ace",
|
||||
"name": "Tiny Core Linux",
|
||||
"category": "guest",
|
||||
"description": "Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nIt provides a complete Linux system using only a few MiB.",
|
||||
"description": "TinyCore is a Linux system with a graphical desktop using only a few MiB.",
|
||||
"vendor_name": "Team Tiny Core",
|
||||
"vendor_url": "http://distro.ibiblio.org/tinycorelinux",
|
||||
"documentation_url": "http://wiki.tinycorelinux.net/",
|
||||
@ -25,6 +25,14 @@
|
||||
"options": "-vga std -usbdevice tablet"
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "linux-tinycore-17.0.qcow2",
|
||||
"version": "17.0",
|
||||
"md5sum": "6434d4da25dd0277cc90b000bb4ac8f1",
|
||||
"filesize": 35061760,
|
||||
"download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/",
|
||||
"direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-17.0.qcow2"
|
||||
},
|
||||
{
|
||||
"filename": "linux-tinycore-11.1.qcow2",
|
||||
"version": "11.1",
|
||||
@ -51,6 +59,12 @@
|
||||
}
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "17.0",
|
||||
"images": {
|
||||
"hda_disk_image": "linux-tinycore-17.0.qcow2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "11.1",
|
||||
"images": {
|
||||
|
||||
@ -30,19 +30,11 @@
|
||||
},
|
||||
"images": [
|
||||
{
|
||||
"filename": "WinDev2308Eval-disk1.vmdk",
|
||||
"version": "2308",
|
||||
"md5sum": "6a9b4ed6d7481f7bbf8a054c797b1eee",
|
||||
"filesize": 24945341952,
|
||||
"download_url": "https://download.microsoft.com/download/7/1/3/7135f2ab-8528-49fc-9252-8d5d94c697ef/WinDev2308Eval.VMWare.zip",
|
||||
"compression": "zip"
|
||||
},
|
||||
{
|
||||
"filename": "WinDev2212Eval-disk1.vmdk",
|
||||
"version": "2212",
|
||||
"md5sum": "c79f393a067b92e01a513a118d455ac8",
|
||||
"filesize": 24620493824,
|
||||
"download_url": "https://aka.ms/windev_VM_vmware",
|
||||
"filename": "WinDev2407Eval-disk1.vmdk",
|
||||
"version": "2407",
|
||||
"md5sum": "66e7233c7922ef128c5b7c957d20bcbe",
|
||||
"filesize": 25984826368,
|
||||
"download_url": "https://download.microsoft.com/download/e/e/c/eec4775f-f2e8-4476-98b2-ca51502a6429/WinDev2407Eval.VMWare.zip",
|
||||
"compression": "zip"
|
||||
},
|
||||
{
|
||||
@ -57,17 +49,10 @@
|
||||
],
|
||||
"versions": [
|
||||
{
|
||||
"name": "2308",
|
||||
"name": "2407",
|
||||
"images": {
|
||||
"bios_image": "OVMF-edk2-stable202305.fd",
|
||||
"hda_disk_image": "WinDev2308Eval-disk1.vmdk"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "2212",
|
||||
"images": {
|
||||
"bios_image": "OVMF-edk2-stable202305.fd",
|
||||
"hda_disk_image": "WinDev2212Eval-disk1.vmdk"
|
||||
"hda_disk_image": "WinDev2407Eval-disk1.vmdk"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@ -312,8 +312,10 @@ class BaseNode:
|
||||
Stop the node process.
|
||||
"""
|
||||
|
||||
await self.stop_wrap_console()
|
||||
self.status = "stopped"
|
||||
try:
|
||||
await self.stop_wrap_console()
|
||||
finally:
|
||||
self.status = "stopped"
|
||||
|
||||
def suspend(self):
|
||||
"""
|
||||
|
||||
@ -87,11 +87,11 @@ class IOUVM(BaseNode):
|
||||
self._serial_adapters = []
|
||||
self.ethernet_adapters = 2 # one adapter = 4 interfaces
|
||||
self.serial_adapters = 2 # one adapter = 4 interfaces
|
||||
self._use_default_iou_values = True # for RAM & NVRAM values
|
||||
self._nvram = 128 # Kilobytes
|
||||
self._use_default_iou_values = False # for RAM & NVRAM values
|
||||
self._nvram = 256 # Kilobytes
|
||||
self._startup_config = ""
|
||||
self._private_config = ""
|
||||
self._ram = 256 # Megabytes
|
||||
self._ram = 1024 # Megabytes
|
||||
self._application_id = application_id
|
||||
self._l1_keepalives = False # used to overcome the always-up Ethernet interfaces (not supported by all IOSes).
|
||||
|
||||
|
||||
@ -57,7 +57,7 @@ class CrashReport:
|
||||
Report crash to a third party service
|
||||
"""
|
||||
|
||||
DSN = "https://5bfcec70239c428d44aafef68f3eea79@o19455.ingest.us.sentry.io/38482"
|
||||
DSN = "https://b3291ad085cbcc85059160e74ce83ab6@o19455.ingest.us.sentry.io/38482"
|
||||
_instance = None
|
||||
|
||||
def __init__(self):
|
||||
|
||||
@ -43,17 +43,17 @@ IOU_TEMPLATE_PROPERTIES = {
|
||||
"ram": {
|
||||
"description": "RAM in MB",
|
||||
"type": "integer",
|
||||
"default": 256
|
||||
"default": 1024
|
||||
},
|
||||
"nvram": {
|
||||
"description": "NVRAM in KB",
|
||||
"type": "integer",
|
||||
"default": 128
|
||||
"default": 256
|
||||
},
|
||||
"use_default_iou_values": {
|
||||
"description": "Use default IOU values",
|
||||
"type": "boolean",
|
||||
"default": True
|
||||
"default": False
|
||||
},
|
||||
"startup_config": {
|
||||
"description": "Startup-config of IOU",
|
||||
|
||||
@ -215,7 +215,7 @@ class AsyncioTelnetServer:
|
||||
await self._write_intro(network_writer, echo=self._echo, binary=self._binary, naws=self._naws)
|
||||
await connection.connected()
|
||||
await self._process(network_reader, network_writer, connection)
|
||||
except ConnectionError:
|
||||
except (ConnectionError, OSError):
|
||||
async with self._lock:
|
||||
network_writer.close()
|
||||
# await network_writer.wait_closed() # this doesn't work in Python 3.6
|
||||
@ -308,14 +308,15 @@ class AsyncioTelnetServer:
|
||||
|
||||
# Replicate the output on all clients
|
||||
for connection_key in list(self._connections.keys()):
|
||||
client_info = connection_key.get_extra_info("socket").getpeername()
|
||||
connection = self._connections[connection_key]
|
||||
client_info = None
|
||||
|
||||
try:
|
||||
client_info = connection_key.get_extra_info("socket").getpeername()
|
||||
connection.writer.write(data)
|
||||
await asyncio.wait_for(connection.writer.drain(), timeout=10)
|
||||
except:
|
||||
log.debug(f"Timeout while sending data to client: {client_info}, closing and removing from connection table.")
|
||||
except (OSError, ConnectionError, asyncio.TimeoutError) as e:
|
||||
log.debug(f"Error sending data to client {client_info}: {e}, closing and removing from connection table.")
|
||||
connection.close()
|
||||
del self._connections[connection_key]
|
||||
|
||||
|
||||
@ -23,8 +23,8 @@
|
||||
# or negative for a release candidate or beta (after the base version
|
||||
# number has been incremented)
|
||||
|
||||
__version__ = "2.2.56.1"
|
||||
__version_info__ = (2, 2, 56, 0)
|
||||
__version__ = "2.2.57"
|
||||
__version_info__ = (2, 2, 57, 0)
|
||||
|
||||
if "dev" in __version__:
|
||||
try:
|
||||
|
||||
@ -262,7 +262,7 @@ def test_create_netmap_config(vm):
|
||||
|
||||
async def test_build_command(vm):
|
||||
|
||||
assert await vm._build_command() == [vm.path, str(vm.application_id)]
|
||||
assert await vm._build_command() == [vm.path, "-n", "256", "-m", "1024", str(vm.application_id)]
|
||||
|
||||
|
||||
def test_get_startup_config(vm):
|
||||
|
||||
@ -69,8 +69,8 @@ async def test_iou_create(compute_api, compute_project, base_params):
|
||||
assert response.json["project_id"] == compute_project.id
|
||||
assert response.json["serial_adapters"] == 2
|
||||
assert response.json["ethernet_adapters"] == 2
|
||||
assert response.json["ram"] == 256
|
||||
assert response.json["nvram"] == 128
|
||||
assert response.json["ram"] == 1024
|
||||
assert response.json["nvram"] == 256
|
||||
assert response.json["l1_keepalives"] is False
|
||||
|
||||
|
||||
@ -130,8 +130,8 @@ async def test_iou_get(compute_api, compute_project, vm):
|
||||
assert response.json["project_id"] == compute_project.id
|
||||
assert response.json["serial_adapters"] == 2
|
||||
assert response.json["ethernet_adapters"] == 2
|
||||
assert response.json["ram"] == 256
|
||||
assert response.json["nvram"] == 128
|
||||
assert response.json["ram"] == 1024
|
||||
assert response.json["nvram"] == 256
|
||||
assert response.json["l1_keepalives"] is False
|
||||
|
||||
|
||||
|
||||
@ -592,14 +592,14 @@ async def test_iou_template_create(controller_api):
|
||||
"default_name_format": "IOU{0}",
|
||||
"ethernet_adapters": 2,
|
||||
"name": "IOU template",
|
||||
"nvram": 128,
|
||||
"nvram": 256,
|
||||
"path": "/path/to/i86bi_linux-ipbase-ms-12.4.bin",
|
||||
"private_config": "",
|
||||
"ram": 256,
|
||||
"ram": 1024,
|
||||
"serial_adapters": 2,
|
||||
"startup_config": "iou_l3_base_startup-config.txt",
|
||||
"symbol": ":/symbols/multilayer_switch.svg",
|
||||
"use_default_iou_values": True,
|
||||
"use_default_iou_values": False,
|
||||
"l1_keepalives": False}
|
||||
|
||||
for item, value in expected_response.items():
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user