From 15ee8fba0cb37c9dbf27cab515f84fb6ea870417 Mon Sep 17 00:00:00 2001 From: Julien Duponchelle Date: Mon, 11 Jan 2016 12:26:02 +0100 Subject: [PATCH] Prettify appliances This PR add a script: * fixing indentation on all appliances * ordered key in the same order as JSON schema This simplify diff between appliances. And make them more readable. --- README.rst | 9 ++ appliances/alpine-linux.gns3a | 52 +++++----- appliances/arista-veos.gns3a | 29 +++--- appliances/bird.gns3a | 7 +- appliances/checkpoint-gaia.gns3a | 60 ++++++------ appliances/cisco-1700.gns3a | 48 +++++---- appliances/cisco-2600.gns3a | 45 ++++----- appliances/cisco-2691.gns3a | 46 +++++---- appliances/cisco-3620.gns3a | 44 ++++----- appliances/cisco-3640.gns3a | 44 ++++----- appliances/cisco-3660.gns3a | 44 ++++----- appliances/cisco-3725.gns3a | 42 ++++---- appliances/cisco-3745.gns3a | 50 +++++----- appliances/cisco-7200.gns3a | 42 ++++---- appliances/cisco-asa.gns3a | 65 ++++++------ appliances/cisco-asav.gns3a | 15 ++- appliances/cisco-csr1000v.gns3a | 9 +- appliances/cisco-iosv.gns3a | 18 ++-- appliances/cisco-iosvl2.gns3a | 18 ++-- appliances/cisco-iosxrv.gns3a | 7 +- appliances/cisco-iou-l2.gns3a | 61 ++++++------ appliances/cisco-iou-l3.gns3a | 61 ++++++------ appliances/cisco-nxosv.gns3a | 18 ++-- appliances/cumulus-vx.gns3a | 25 +++-- appliances/firefox.gns3a | 26 +++-- appliances/hp-vsr1001.gns3a | 10 +- appliances/internet.gns3a | 64 ++++++------ appliances/juniper-vsrx.gns3a | 53 +++++----- appliances/kali-linux.gns3a | 46 ++++----- appliances/microcore-linux.gns3a | 33 +++---- appliances/microsoft-windows+ie.gns3a | 25 +++-- appliances/mikrotik-chr.gns3a | 136 +++++++++++++------------- appliances/netem.gns3a | 5 +- appliances/openbsd.gns3a | 46 ++++----- appliances/openvswitch.gns3a | 50 +++++----- appliances/openwrt-realview.gns3a | 19 ++-- appliances/openwrt.gns3a | 15 ++- appliances/ostinato.gns3a | 5 +- appliances/tinycore-linux.gns3a | 5 +- appliances/vrin.gns3a | 52 +++++----- appliances/vyos.gns3a | 16 ++- prettify_appliances.py | 68 +++++++++++++ 42 files changed, 759 insertions(+), 774 deletions(-) create mode 100644 prettify_appliances.py diff --git a/README.rst b/README.rst index 0123ef8..6c30fd2 100644 --- a/README.rst +++ b/README.rst @@ -53,3 +53,12 @@ Create a new appliance python3 new_appliance.py + +Prettify appliances JSON +------------------------- + +This will indent the JSON of all appliance and sort the key in same order as +the JSON schema. + +.. code:: bash + python3 prettify_appliances.py diff --git a/appliances/alpine-linux.gns3a b/appliances/alpine-linux.gns3a index 37d38b9..d75fbf2 100644 --- a/appliances/alpine-linux.gns3a +++ b/appliances/alpine-linux.gns3a @@ -1,40 +1,40 @@ { + "name": "Alpine Linux", + "category": "guest", + "description": "Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.", + "vendor_name": "Alpine Linux Development Team", + "vendor_url": "http://alpinelinux.org", + "documentation_url": "http://wiki.alpinelinux.org", + "product_name": "Alpine Linux", + "registry_version": 1, + "status": "experimental", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "User is root. Password is gns3", + "symbol": "linux_guest.svg", "qemu": { - "adapters": 1, - "arch": "x86_64", "adapter_type": "e1000", + "adapters": 1, "ram": 32, + "arch": "x86_64", "console_type": "telnet" }, - "documentation_url": "http://wiki.alpinelinux.org", - "maintainer_email": "developers@gns3.net", - "versions": [ - { - "images": { - "hda_disk_image": "alpine-linux-3.2.3.qcow2" - }, - "name": "3.2.3" - } - ], - "symbol": "linux_guest.svg", - "status": "experimental", - "category": "guest", - "registry_version": 1, - "usage": "User is root. Password is gns3", - "product_name": "Alpine Linux", "images": [ { + "filename": "alpine-linux-3.2.3.qcow2", "version": "3.2.3", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/alpine-linux-3.2.3.qcow2", "md5sum": "b82d895ecba270ecc5e5b445ec53ee02", "filesize": 143065088, - "filename": "alpine-linux-3.2.3.qcow2" + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/alpine-linux-3.2.3.qcow2" } ], - "vendor_name": "Alpine Linux Development Team", - "description": "Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.", - "maintainer": "GNS3 Team", - "name": "Alpine Linux", - "vendor_url": "http://alpinelinux.org" + "versions": [ + { + "name": "3.2.3", + "images": { + "hda_disk_image": "alpine-linux-3.2.3.qcow2" + } + } + ] } \ No newline at end of file diff --git a/appliances/arista-veos.gns3a b/appliances/arista-veos.gns3a index 75bab83..e509000 100644 --- a/appliances/arista-veos.gns3a +++ b/appliances/arista-veos.gns3a @@ -1,10 +1,10 @@ { "name": "Arista vEOS", "category": "multilayer_switch", - "description": "Arista EOS® is the core of Arista cloud networking solutions for next-generation data centers and cloud networks. Cloud architectures built with Arista EOS scale to tens of thousands of compute and storage nodes with management and provisioning capabilities that work at scale. Through its programmability, EOS enables a set of software applications that deliver workflow automation, high availability, unprecedented network visibility and analytics and rapid integration with a wide range of third-party applications for virtualization, management, automation and orchestration services.\n\nArista Extensible Operating System (EOS) is a fully programmable and highly modular, Linux-based network operation system, using familiar industry standard CLI and runs a single binary software image across the Arista switching family. Architected for resiliency and programmability, EOS has a unique multi-process state sharing architecture that separates state information and packet forwarding from protocol processing and application logic.", - "vendor_name": "Arista", - "vendor_url": "http://www.arista.com/", - "documentation_url": "http://www.arista.com/docs/Manuals/ConfigGuide.pdf", + "description": "Arista EOS\u00ae is the core of Arista cloud networking solutions for next-generation data centers and cloud networks. Cloud architectures built with Arista EOS scale to tens of thousands of compute and storage nodes with management and provisioning capabilities that work at scale. Through its programmability, EOS enables a set of software applications that deliver workflow automation, high availability, unprecedented network visibility and analytics and rapid integration with a wide range of third-party applications for virtualization, management, automation and orchestration services.\n\nArista Extensible Operating System (EOS) is a fully programmable and highly modular, Linux-based network operation system, using familiar industry standard CLI and runs a single binary software image across the Arista switching family. Architected for resiliency and programmability, EOS has a unique multi-process state sharing architecture that separates state information and packet forwarding from protocol processing and application logic.", + "vendor_name": "Arista", + "vendor_url": "http://www.arista.com/", + "documentation_url": "http://www.arista.com/docs/Manuals/ConfigGuide.pdf", "product_name": "vEOS", "product_url": "https://eos.arista.com/", "registry_version": 1, @@ -12,7 +12,6 @@ "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", "symbol": ":/symbols/multilayer_switch.svg", - "qemu": { "adapter_type": "e1000", "adapters": 8, @@ -20,24 +19,22 @@ "arch": "x86_64", "console_type": "telnet" }, - "images": [ - { - "filename": "Aboot-veos-serial-2.1.0.iso", - "version": "2.1.0", - "filesize": 5242880, - "md5sum": "2687534f2ff11b998dec0511066457c0", - "download_url": "https://www.arista.com/en/support/software-download" - }, { "filename": "vEOS-lab-4.13.8M.vmdk", "version": "4.13.8M", "md5sum": "a47145b9e6e7a24171c0850f8755535e", "filesize": 409010176, - "download_url": "https://www.arista.com/en/support/software-download" + "download_url": "https://www.arista.com/en/support/software-download" + }, + { + "filename": "Aboot-veos-serial-2.1.0.iso", + "version": "2.1.0", + "md5sum": "2687534f2ff11b998dec0511066457c0", + "filesize": 5242880, + "download_url": "https://www.arista.com/en/support/software-download" } ], - "versions": [ { "name": "4.13.8M", @@ -47,4 +44,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/bird.gns3a b/appliances/bird.gns3a index 92e3794..9a7e33c 100644 --- a/appliances/bird.gns3a +++ b/appliances/bird.gns3a @@ -11,7 +11,6 @@ "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", "usage": "Configure interfaces in /opt/bootlocal.sh, BIRD configuration is done in /usr/local/etc/bird", - "qemu": { "adapter_type": "e1000", "adapters": 4, @@ -19,18 +18,16 @@ "arch": "x86_64", "console_type": "telnet" }, - "images": [ { "filename": "bird-tinycore64-1.5.0.img", "version": "1.5.0", - "filesize": 22413312, "md5sum": "08d50ba2b1b262e2e03e4babf90abf69", + "filesize": 22413312, "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/bird-tinycore64-1.5.0.img" } ], - "versions": [ { "name": "1.5.0", @@ -39,4 +36,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/checkpoint-gaia.gns3a b/appliances/checkpoint-gaia.gns3a index 443529a..3d20047 100644 --- a/appliances/checkpoint-gaia.gns3a +++ b/appliances/checkpoint-gaia.gns3a @@ -1,32 +1,32 @@ { - "vendor_name": "Checkpoint", - "registry_version": 1, - "maintainer_email": "developers@gns3.net", - "documentation_url": "http://downloads.checkpoint.com/dc/download.htm?ID=26770", + "name": "Checkpoint GAiA", "category": "firewall", + "description": "Check Point Gaia is the next generation Secure Operating System for all Check Point Appliances, Open Servers and Virtualized Gateways.\n\nGaia combines the best features from IPSO and SecurePlatform (SPLAT) into a single unified OS providing greater efficiency and robust performance. By upgrading to Gaia, customers will benefit from improved appliance connection capacity and reduced operating costs. With Gaia, IP Appliance customers will gain the ability to leverage the full breadth and power of all Check Point Software Blades.\n\nGaia secures IPv6 networks utilizing the Check Point Acceleration & Clustering technology and it protects the most dynamic network and virtualized environments by supporting 5 different dynamic routing protocols. As a 64-Bit OS, Gaia increases the connection capacity of existing appliances supporting up-to 10M concurrent connections for select 2012 Models.\n\nGaia simplifies management with segregation of duties by enabling role-based administrative access. Furthermore, Gaia greatly increases operation efficiency by offering Automatic Software Update.\n\nThe feature-rich Web interface allows for search of any command or property in a second.\n\nGaia provides backward compatibility with IPSO and SPLAT CLI-style commands making it an easy transition for existing Check Point customers.", + "vendor_name": "Checkpoint", + "vendor_url": "https://www.checkpoint.com", + "documentation_url": "http://downloads.checkpoint.com/dc/download.htm?ID=26770", + "product_name": "Gaia", + "registry_version": 1, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Checkpoint GAiA", - "product_name": "Gaia", - "vendor_url": "https://www.checkpoint.com", + "maintainer_email": "developers@gns3.net", "usage": "At boot choose the install on disk options. You need to open quickly the terminal after launching the appliance if you want to see the menu. You need a web browser in order to finalize the installation. You can use the firefox appliance for this.", - "description": "Check Point Gaia is the next generation Secure Operating System for all Check Point Appliances, Open Servers and Virtualized Gateways.\n\nGaia combines the best features from IPSO and SecurePlatform (SPLAT) into a single unified OS providing greater efficiency and robust performance. By upgrading to Gaia, customers will benefit from improved appliance connection capacity and reduced operating costs. With Gaia, IP Appliance customers will gain the ability to leverage the full breadth and power of all Check Point Software Blades.\n\nGaia secures IPv6 networks utilizing the Check Point Acceleration & Clustering technology and it protects the most dynamic network and virtualized environments by supporting 5 different dynamic routing protocols. As a 64-Bit OS, Gaia increases the connection capacity of existing appliances supporting up-to 10M concurrent connections for select 2012 Models.\n\nGaia simplifies management with segregation of duties by enabling role-based administrative access. Furthermore, Gaia greatly increases operation efficiency by offering Automatic Software Update.\n\nThe feature-rich Web interface allows for search of any command or property in a second.\n\nGaia provides backward compatibility with IPSO and SPLAT CLI-style commands making it an easy transition for existing Check Point customers.", - "versions": [ - { - "images": { - "cdrom_image": "Check_Point_R77.30_T204_Install_and_Upgrade.Gaia.iso", - "hda_disk_image": "empty8G.qcow2" - }, - "name": "77.30" - } - ], + "qemu": { + "adapter_type": "e1000", + "adapters": 8, + "ram": 2048, + "arch": "x86_64", + "console_type": "telnet", + "boot_priority": "dc", + "process_priority": "normal" + }, "images": [ { - "filesize": 2799271936, + "filename": "Check_Point_R77.30_T204_Install_and_Upgrade.Gaia.iso", "version": "77.30", "md5sum": "6fa7586bbb6832fa965d3173276c5b87", - "download_url": "https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk104859", - "filename": "Check_Point_R77.30_T204_Install_and_Upgrade.Gaia.iso" + "filesize": 2799271936, + "download_url": "https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk104859" }, { "filename": "empty8G.qcow2", @@ -37,13 +37,13 @@ "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Empty Qemu disk/empty8G.qcow2" } ], - "qemu": { - "adapters": 8, - "console_type": "telnet", - "ram": 2048, - "adapter_type": "e1000", - "boot_priority": "dc", - "arch": "x86_64", - "process_priority": "normal" - } -} + "versions": [ + { + "name": "77.30", + "images": { + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "Check_Point_R77.30_T204_Install_and_Upgrade.Gaia.iso" + } + } + ] +} \ No newline at end of file diff --git a/appliances/cisco-1700.gns3a b/appliances/cisco-1700.gns3a index 38b56a7..85a28c5 100644 --- a/appliances/cisco-1700.gns3a +++ b/appliances/cisco-1700.gns3a @@ -1,40 +1,38 @@ { + "name": "Cisco 1700", "category": "router", + "description": "Cisco 1700 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "1700", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 1700", - "vendor_name": "Cisco", - "product_name": "1700", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 1700 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "platform": "c1700", "chassis": "1720", - "slot0": "C1700-MB-1FE", + "platform": "c1700", "ram": 160, "nvram": 128, - "startup_config": "ios_base_startup-config.txt" + "startup_config": "ios_base_startup-config.txt", + "slot0": "C1700-MB-1FE" }, - - "versions": [ - { - "images": { - "image": "c1700-adventerprisek9-mz.124-25d.image" - }, - "idlepc": "0x80358a60", - "name": "124-25d" - } - ], "images": [ { - "filesize": 57475320, - "md5sum": "7f4ae12a098391bc0edcaf4f44caaf9d", + "filename": "c1700-adventerprisek9-mz.124-25d.image", "version": "124-25d", - "filename": "c1700-adventerprisek9-mz.124-25d.image" + "md5sum": "7f4ae12a098391bc0edcaf4f44caaf9d", + "filesize": 57475320 + } + ], + "versions": [ + { + "name": "124-25d", + "idlepc": "0x80358a60", + "images": { + "image": "c1700-adventerprisek9-mz.124-25d.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-2600.gns3a b/appliances/cisco-2600.gns3a index bcaa2d0..388f48d 100644 --- a/appliances/cisco-2600.gns3a +++ b/appliances/cisco-2600.gns3a @@ -1,40 +1,37 @@ { - + "name": "Cisco 2600", "category": "router", + "description": "Cisco 2600 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "2600", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 2600", - "vendor_name": "Cisco", - "product_name": "2600", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 2600 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "platform": "c2600", "chassis": "2610", + "platform": "c2600", "ram": 160, "nvram": 128, "startup_config": "ios_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "c2600-adventerprisek9-mz.124-15.T14.image" - }, - "idlepc": "0x8027ec88", - "name": "124-15.T14" - } - ], "images": [ { - "filesize": 87256400, - "md5sum": "483e3a579a5144ec23f2f160d4b0c0e2", + "filename": "c2600-adventerprisek9-mz.124-15.T14.image", "version": "124-15.T14", - "filename": "c2600-adventerprisek9-mz.124-15.T14.image" + "md5sum": "483e3a579a5144ec23f2f160d4b0c0e2", + "filesize": 87256400 + } + ], + "versions": [ + { + "name": "124-15.T14", + "idlepc": "0x8027ec88", + "images": { + "image": "c2600-adventerprisek9-mz.124-15.T14.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-2691.gns3a b/appliances/cisco-2691.gns3a index 5ddc510..0d0f77d 100644 --- a/appliances/cisco-2691.gns3a +++ b/appliances/cisco-2691.gns3a @@ -1,39 +1,37 @@ { + "name": "Cisco 2691", "category": "router", + "description": "Cisco 2691 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "2691", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 2691", - "vendor_name": "Cisco", - "product_name": "2691", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 2691 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { "platform": "c3600", "ram": 192, "nvram": 256, - "slot0": "GT96100-FE", - "startup_config": "ios_base_startup-config.txt" + "startup_config": "ios_base_startup-config.txt", + "slot0": "GT96100-FE" }, - - "versions": [ - { - "images": { - "image": "c2691-adventerprisek9-mz.124-15.T14.image" - }, - "idlepc": "0x60bcf9f8", - "name": "124-15.T14" - } - ], "images": [ { - "filesize": 95976624, - "md5sum": "e7ee5a4a57ed1433e5f73ba6e7695c90", + "filename": "c2691-adventerprisek9-mz.124-15.T14.image", "version": "124-15.T14", - "filename": "c2691-adventerprisek9-mz.124-15.T14.image" + "md5sum": "e7ee5a4a57ed1433e5f73ba6e7695c90", + "filesize": 95976624 + } + ], + "versions": [ + { + "name": "124-15.T14", + "idlepc": "0x60bcf9f8", + "images": { + "image": "c2691-adventerprisek9-mz.124-15.T14.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-3620.gns3a b/appliances/cisco-3620.gns3a index d97b96d..2732e99 100644 --- a/appliances/cisco-3620.gns3a +++ b/appliances/cisco-3620.gns3a @@ -1,39 +1,37 @@ { + "name": "Cisco 3620", "category": "router", + "description": "Cisco 3620 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "3620", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 3620", - "vendor_name": "Cisco", - "product_name": "3620", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 3620 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "platform": "c3600", "chassis": "3620", + "platform": "c3600", "ram": 192, "nvram": 256, "startup_config": "ios_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "c3620-a3jk8s-mz.122-26c.image" - }, - "idlepc": "0x603a8bac", - "name": "122-26c" - } - ], "images": [ { - "filesize": 38947996, - "md5sum": "37b444b29191630e5b688f002de2171c", + "filename": "c3620-a3jk8s-mz.122-26c.image", "version": "122-26c", - "filename": "c3620-a3jk8s-mz.122-26c.image" + "md5sum": "37b444b29191630e5b688f002de2171c", + "filesize": 38947996 + } + ], + "versions": [ + { + "name": "122-26c", + "idlepc": "0x603a8bac", + "images": { + "image": "c3620-a3jk8s-mz.122-26c.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-3640.gns3a b/appliances/cisco-3640.gns3a index a442973..190c50c 100644 --- a/appliances/cisco-3640.gns3a +++ b/appliances/cisco-3640.gns3a @@ -1,39 +1,37 @@ { + "name": "Cisco 3640", "category": "router", + "description": "Cisco 3640 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "3640", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 3640", - "vendor_name": "Cisco", - "product_name": "3640", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 3640 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "platform": "c3600", "chassis": "3640", + "platform": "c3600", "ram": 192, "nvram": 256, "startup_config": "ios_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "c3640-a3js-mz.124-25d.image" - }, - "idlepc": "0x6050b114", - "name": "124-25d" - } - ], "images": [ { - "filesize": 65688632, - "md5sum": "493c4ef6578801d74d715e7d11596964", + "filename": "c3640-a3js-mz.124-25d.image", "version": "124-25d", - "filename": "c3640-a3js-mz.124-25d.image" + "md5sum": "493c4ef6578801d74d715e7d11596964", + "filesize": 65688632 + } + ], + "versions": [ + { + "name": "124-25d", + "idlepc": "0x6050b114", + "images": { + "image": "c3640-a3js-mz.124-25d.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-3660.gns3a b/appliances/cisco-3660.gns3a index 65e2c28..0f4f659 100644 --- a/appliances/cisco-3660.gns3a +++ b/appliances/cisco-3660.gns3a @@ -1,39 +1,37 @@ { + "name": "Cisco 3660", "category": "router", + "description": "Cisco 3660 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "3660", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 3660", - "vendor_name": "Cisco", - "product_name": "3660", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 3660 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "platform": "c3600", "chassis": "3660", + "platform": "c3600", "ram": 192, "nvram": 256, "startup_config": "ios_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "c3660-a3jk9s-mz.124-15.T14.image" - }, - "idlepc": "0x6076e0b4", - "name": "124-15.T14" - } - ], "images": [ { - "filesize": 90181268, - "md5sum": "daed99f508fd42dbaacf711e560643ed", + "filename": "c3660-a3jk9s-mz.124-15.T14.image", "version": "124-15.T14", - "filename": "c3660-a3jk9s-mz.124-15.T14.image" + "md5sum": "daed99f508fd42dbaacf711e560643ed", + "filesize": 90181268 + } + ], + "versions": [ + { + "name": "124-15.T14", + "idlepc": "0x6076e0b4", + "images": { + "image": "c3660-a3jk9s-mz.124-15.T14.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-3725.gns3a b/appliances/cisco-3725.gns3a index 4e062a3..0f09603 100644 --- a/appliances/cisco-3725.gns3a +++ b/appliances/cisco-3725.gns3a @@ -1,16 +1,15 @@ { + "name": "Cisco 3725", "category": "router", + "description": "Cisco 3725 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "product_name": "3725", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 3725", - "vendor_name": "Cisco", - "product_name": "3725", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 3725 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { "platform": "c3725", "ram": 128, @@ -18,22 +17,21 @@ "startup_config": "ios_base_startup-config.txt", "slot0": "GT96100-FE" }, - - "versions": [ - { - "images": { - "image": "c3725-adventerprisek9-mz.124-15.T14.image" - }, - "idlepc": "0x60c09aa0", - "name": "124-25.T14" - } - ], "images": [ { - "filesize": 97859480, - "md5sum": "64f8c427ed48fd21bd02cf1ff254c4eb", + "filename": "c3725-adventerprisek9-mz.124-15.T14.image", "version": "124-25.T14", - "filename": "c3725-adventerprisek9-mz.124-15.T14.image" + "md5sum": "64f8c427ed48fd21bd02cf1ff254c4eb", + "filesize": 97859480 + } + ], + "versions": [ + { + "name": "124-25.T14", + "idlepc": "0x60c09aa0", + "images": { + "image": "c3725-adventerprisek9-mz.124-15.T14.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-3745.gns3a b/appliances/cisco-3745.gns3a index aa9e5c8..34a4983 100644 --- a/appliances/cisco-3745.gns3a +++ b/appliances/cisco-3745.gns3a @@ -1,47 +1,45 @@ { + "name": "Cisco 3745", "category": "router", + "description": "Cisco 3745 Multiservice Access Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/support/routers/3745-multiservice-access-router/model.html", + "product_name": "3745", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 3745", - "vendor_name": "Cisco", - "product_name": "3745", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 3745 Multiservice Access Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/support/routers/3745-multiservice-access-router/model.html", - "dynamips": { "chassis": "", "platform": "c3745", "ram": 256, "nvram": 256, "startup_config": "ios_base_startup-config.txt", + "wic0": "WIC-1T", + "wic1": "WIC-1T", + "wic2": "WIC-1T", "slot0": "GT96100-FE", "slot1": "NM-1FE-TX", "slot2": "NM-4T", "slot3": "", - "slot4": "", - "wic0": "WIC-1T", - "wic1": "WIC-1T", - "wic2": "WIC-1T" + "slot4": "" }, - - "versions": [ - { - "images": { - "image": "c3745-adventerprisek9-mz.124-25d.image" - }, - "idlepc": "0x60aa1da0", - "name": "124-25d" - } - ], "images": [ { - "filesize": 82053028, - "md5sum": "ddbaf74274822b50fa9670e10c75b08f", + "filename": "c3745-adventerprisek9-mz.124-25d.image", "version": "124-25d", - "filename": "c3745-adventerprisek9-mz.124-25d.image" + "md5sum": "ddbaf74274822b50fa9670e10c75b08f", + "filesize": 82053028 + } + ], + "versions": [ + { + "name": "124-25d", + "idlepc": "0x60aa1da0", + "images": { + "image": "c3745-adventerprisek9-mz.124-25d.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-7200.gns3a b/appliances/cisco-7200.gns3a index 8f2623c..37e7365 100644 --- a/appliances/cisco-7200.gns3a +++ b/appliances/cisco-7200.gns3a @@ -1,16 +1,15 @@ { + "name": "Cisco 7200", "category": "router", + "description": "Cisco 7200 Router", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", + "product_name": "7200", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco 7200", - "vendor_name": "Cisco", - "product_name": "7200", - "vendor_url": "http://www.cisco.com", - "description": "Cisco 7200 Router", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", - "dynamips": { "platform": "c7200", "ram": 512, @@ -18,22 +17,21 @@ "startup_config": "ios_base_startup-config.txt", "slot0": "C7200-IO-FE" }, - - "versions": [ - { - "images": { - "image": "c7200-adventerprisek9-mz.124-24.T5.image" - }, - "idlepc": "0x606df838", - "name": "124-25.T5" - } - ], "images": [ { - "filesize": 102345240, - "md5sum": "6b89d0d804e1f2bb5b8bda66b5692047", + "filename": "c7200-adventerprisek9-mz.124-24.T5.image", "version": "124-25.T5", - "filename": "c7200-adventerprisek9-mz.124-24.T5.image" + "md5sum": "6b89d0d804e1f2bb5b8bda66b5692047", + "filesize": 102345240 + } + ], + "versions": [ + { + "name": "124-25.T5", + "idlepc": "0x606df838", + "images": { + "image": "c7200-adventerprisek9-mz.124-24.T5.image" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-asa.gns3a b/appliances/cisco-asa.gns3a index b654dfd..f374d69 100644 --- a/appliances/cisco-asa.gns3a +++ b/appliances/cisco-asa.gns3a @@ -10,49 +10,47 @@ "status": "experimental", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "symbol": ":/symbols/asa.svg", "usage": "This appliance will use 100% of your CPU, please use ASAv instead. There is no default password and enable password.", + "symbol": ":/symbols/asa.svg", "port_name_format": "GigabitEthernet{0}", - "qemu": { "adapter_type": "i82559er", "adapters": 4, "ram": 512, "arch": "i386", "console_type": "telnet", - "cpu_throttling": 80, - "process_priority": "low", "kernel_command_line": "ide_generic.probe_mask=0x01 ide_core.chs=0.0:980,16,32 auto nousb console=ttyS0,9600 bigphysarea=65536 ide1=noprobe no-hlt", - "options": "-no-kvm -icount auto -hdachs 980,16,32" + "options": "-no-kvm -icount auto -hdachs 980,16,32", + "cpu_throttling": 80, + "process_priority": "low" }, - "images": [ - { - "filename": "asa842-initrd.gz", - "version": "8.4.2", - "filesize": 23504439, - "md5sum": "4751641f7f65fa93ee7b75d744eb3766", - "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" - }, - { - "filename": "asa842-vmlinuz", - "version": "8.4.2", - "filesize": 1359344, - "md5sum": "4012e0b147f1eb22a7b6c2c01d522d85", - "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" - }, { "filename": "asa915-16-initrd.gz", "version": "9.1.5", - "filesize": 25474199, "md5sum": "5411dd2ebf108f054cd4c9ade651e9a1", + "filesize": 25474199, "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" }, { "filename": "asa915-16-vmlinuz", "version": "9.1.5", - "filesize": 1359376, "md5sum": "44a93260390c249cd0b6f4ba0fd327a3", + "filesize": 1359376, + "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" + }, + { + "filename": "asa842-initrd.gz", + "version": "8.4.2", + "md5sum": "4751641f7f65fa93ee7b75d744eb3766", + "filesize": 23504439, + "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" + }, + { + "filename": "asa842-vmlinuz", + "version": "8.4.2", + "md5sum": "4012e0b147f1eb22a7b6c2c01d522d85", + "filesize": 1359344, "download_url": "https://software.cisco.com/download/release.html?mdfid=280582808&softwareid=280775065" }, { @@ -64,23 +62,22 @@ "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Empty Qemu disk/empty8G.qcow2" } ], - "versions": [ - { - "name": "8.4.2", - "images": { - "hda_disk_image": "empty8G.qcow2", - "initrd": "asa842-initrd.gz", - "kernel_image": "asa842-vmlinuz" - } - }, { "name": "9.1.5", "images": { - "hda_disk_image": "empty8G.qcow2", + "kernel_image": "asa915-16-vmlinuz", "initrd": "asa915-16-initrd.gz", - "kernel_image": "asa915-16-vmlinuz" + "hda_disk_image": "empty8G.qcow2" + } + }, + { + "name": "8.4.2", + "images": { + "kernel_image": "asa842-vmlinuz", + "initrd": "asa842-initrd.gz", + "hda_disk_image": "empty8G.qcow2" } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-asav.gns3a b/appliances/cisco-asav.gns3a index a23df9a..af71ab7 100644 --- a/appliances/cisco-asav.gns3a +++ b/appliances/cisco-asav.gns3a @@ -11,11 +11,10 @@ "status": "stable", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "symbol": ":/symbols/asa.svg", "usage": "There is no default password and enable password. A default configuration is present.", + "symbol": ":/symbols/asa.svg", "first_port_name": "Management0/0", "port_name_format": "GigabitEthernet0/{0}", - "qemu": { "adapter_type": "e1000", "adapters": 8, @@ -23,38 +22,36 @@ "arch": "x86_64", "console_type": "vnc" }, - "images": [ { "filename": "asav951-200.qcow2", "version": "9.5.1-200", - "filesize": 160038912, "md5sum": "f1419cbcfc701a287a059981c7d4c5c1", + "filesize": 160038912, "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&softwareid=280775065&release=9.5.1.200" }, { "filename": "asav942.qcow2", "version": "9.4.2", - "filesize": 154271744, "md5sum": "425e67104ab51789bd5c41f610bcbe93", + "filesize": 154271744, "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&softwareid=280775065&release=9.4.2" }, { "filename": "asav941-202.qcow2", "version": "9.4.1-202", - "filesize": 155713536, "md5sum": "6992d2a35d5682a99b124b5eaf5c603a", + "filesize": 155713536, "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&softwareid=280775065&release=9.4.1.200" }, { "filename": "asav941-200.qcow2", "version": "9.4.1-202", - "filesize": 155713536, "md5sum": "5a1fa564591d79ec1fa860a0ba8c63d6", + "filesize": 155713536, "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&softwareid=280775065&release=9.4.1.200" } ], - "versions": [ { "name": "9.5.1-200", @@ -81,4 +78,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-csr1000v.gns3a b/appliances/cisco-csr1000v.gns3a index c18ba15..d1d9223 100644 --- a/appliances/cisco-csr1000v.gns3a +++ b/appliances/cisco-csr1000v.gns3a @@ -1,7 +1,7 @@ { "name": "Cisco CSR1000v", "category": "router", - "description": "The Cisco Cloud Services Router 1000V (CSR 1000V) is a router and network services platform in virtual form factor that is intended for deployment in cloud and virtual data centers. It is optimized to serve as a single-tenant or multitenant WAN gateway. Using proven, industry-leading Cisco IOS® XE Software networking and security features, the CSR 1000V enables enterprises to transparently extend their WANs into external provider-hosted clouds and cloud providers to offer their tenants enterprise-class networking services.", + "description": "The Cisco Cloud Services Router 1000V (CSR 1000V) is a router and network services platform in virtual form factor that is intended for deployment in cloud and virtual data centers. It is optimized to serve as a single-tenant or multitenant WAN gateway. Using proven, industry-leading Cisco IOS\u00ae XE Software networking and security features, the CSR 1000V enables enterprises to transparently extend their WANs into external provider-hosted clouds and cloud providers to offer their tenants enterprise-class networking services.", "vendor_name": "Cisco", "vendor_url": "http://www.cisco.com/", "documentation_url": "http://www.cisco.com/c/en/us/support/routers/cloud-services-router-1000v-series/products-installation-and-configuration-guides-list.html", @@ -13,7 +13,6 @@ "maintainer_email": "developers@gns3.net", "usage": "There is no default password and enable password. A default configuration is present.", "port_name_format": "GigabitEthernet{0}", - "qemu": { "adapter_type": "virtio-net-pci", "adapters": 4, @@ -21,17 +20,15 @@ "arch": "x86_64", "console_type": "telnet" }, - "images": [ { "filename": "csr1000v-universalk9.03.16.00.S.155-3.S-ext.qcow2", "version": "3.16", - "filesize": 1390936064, "md5sum": "dfc2e11f880d9e2dfa13e841552cc3ed", + "filesize": 1390936064, "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&softwareid=282046477&release=3.16.0S" } ], - "versions": [ { "name": "3.16", @@ -40,4 +37,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-iosv.gns3a b/appliances/cisco-iosv.gns3a index c27db7d..fa9a8b1 100644 --- a/appliances/cisco-iosv.gns3a +++ b/appliances/cisco-iosv.gns3a @@ -12,32 +12,28 @@ "maintainer_email": "developers@gns3.net", "usage": "There is no default password and enable password. There is no default configuration present.", "port_name_format": "GigabitEthernet0/{0}", - "qemu": { "adapter_type": "e1000", - "console_type": "telnet", + "adapters": 4, "ram": 512, "arch": "i386", - "adapters": 4 + "console_type": "telnet" }, - "images": [ { - "filesize": 127926272, - "md5sum": "b3b6d7ac3bde84e51388afe17040b457", + "filename": "IOSv-15.5.3M.qcow2", "version": "15.5.3M", - "download_url": "http://virl.cisco.com/", - "filename": "IOSv-15.5.3M.qcow2" + "md5sum": "b3b6d7ac3bde84e51388afe17040b457", + "filesize": 127926272, + "download_url": "http://virl.cisco.com/" } ], - "versions": [ { "name": "15.5.3M", "images": { "hda_disk_image": "IOSv-15.5.3M.qcow2" } - } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-iosvl2.gns3a b/appliances/cisco-iosvl2.gns3a index 2e32e3c..14a9a84 100644 --- a/appliances/cisco-iosvl2.gns3a +++ b/appliances/cisco-iosvl2.gns3a @@ -13,32 +13,28 @@ "usage": "There is no default password and enable password. There is no default configuration present.", "port_name_format": "GigabitEthernet{1}/{0}", "port_segment_size": 4, - "qemu": { "adapter_type": "e1000", - "console_type": "telnet", + "adapters": 16, "ram": 768, "arch": "i386", - "adapters": 16 + "console_type": "telnet" }, - "images": [ { - "filesize": 96862208, - "md5sum": "0fb3c7e158e14e3ffbfa36bee6d592da", + "filename": "IOSvL2-15.2.4055.qcow2", "version": "15.2.4055", - "download_url": "http://virl.cisco.com/", - "filename": "IOSvL2-15.2.4055.qcow2" + "md5sum": "0fb3c7e158e14e3ffbfa36bee6d592da", + "filesize": 96862208, + "download_url": "http://virl.cisco.com/" } ], - "versions": [ { "name": "15.2.4055", "images": { "hda_disk_image": "IOSvL2-15.2.4055.qcow2" } - } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-iosxrv.gns3a b/appliances/cisco-iosxrv.gns3a index 82192ae..56a55cc 100644 --- a/appliances/cisco-iosxrv.gns3a +++ b/appliances/cisco-iosxrv.gns3a @@ -14,7 +14,6 @@ "usage": "Default username/password: admin/admin, cisco/cisco and lab/lab. There is no default configuration present.", "first_port_name": "MgmtEth0/0/CPU0/0", "port_name_format": "GigabitEthernet0/0/0/{0}", - "qemu": { "adapter_type": "e1000", "adapters": 4, @@ -22,17 +21,15 @@ "arch": "i386", "console_type": "telnet" }, - "images": [ { "filename": "iosxrv-k9-demo-5.3.2.qcow2", "version": "5.3.2", - "filesize": 687669248, "md5sum": "b14f3b554586c28984f1235ad5963419", + "filesize": 687669248, "download_url": "http://virl.cisco.com/" } ], - "versions": [ { "name": "5.3.2", @@ -41,4 +38,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-iou-l2.gns3a b/appliances/cisco-iou-l2.gns3a index 0bf58c8..16a82a3 100644 --- a/appliances/cisco-iou-l2.gns3a +++ b/appliances/cisco-iou-l2.gns3a @@ -1,15 +1,14 @@ { + "name": "Cisco IOU L2", "category": "multilayer_switch", + "description": "Cisco IOS on UNIX Layer 2 image.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "product_name": "Cisco IOU L2", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco IOU L2", - "vendor_name": "Cisco", - "product_name": "Cisco IOU L2", - "vendor_url": "http://www.cisco.com", - "description": "Cisco IOS on UNIX Layer 2 image.", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "iou": { "ethernet_adapters": 4, "serial_adapters": 0, @@ -17,34 +16,32 @@ "ram": 256, "startup_config": "iou_l2_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "i86bi-linux-l2-adventerprisek9-15.1a.bin" - }, - "name": "15.1a" - }, - { - "images": { - "image": "i86bi-linux-l2-ipbasek9-15.1g.bin" - }, - "name": "15.1g" - } - - ], "images": [ { - "filesize": 72726092, - "md5sum": "9549a20a7391fb849da32caa77a0d254", - "version": "15.1a", - "filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin" + "filename": "i86bi-linux-l2-ipbasek9-15.1g.bin", + "version": "15.1g", + "md5sum": "0b8b9e14ca99b68c654e44c4296857ba", + "filesize": 62137336 }, { - "filesize": 62137336, - "md5sum": "0b8b9e14ca99b68c654e44c4296857ba", - "version": "15.1g", - "filename": "i86bi-linux-l2-ipbasek9-15.1g.bin" + "filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin", + "version": "15.1a", + "md5sum": "9549a20a7391fb849da32caa77a0d254", + "filesize": 72726092 + } + ], + "versions": [ + { + "name": "15.1g", + "images": { + "image": "i86bi-linux-l2-ipbasek9-15.1g.bin" + } + }, + { + "name": "15.1a", + "images": { + "image": "i86bi-linux-l2-adventerprisek9-15.1a.bin" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-iou-l3.gns3a b/appliances/cisco-iou-l3.gns3a index 7a9ad13..df27511 100644 --- a/appliances/cisco-iou-l3.gns3a +++ b/appliances/cisco-iou-l3.gns3a @@ -1,15 +1,14 @@ { + "name": "Cisco IOU L3", "category": "router", + "description": "Cisco IOS on UNIX Layer 3 image.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "product_name": "Cisco IOU L3", + "registry_version": 2, "status": "experimental", "maintainer": "GNS3 Team", - "name": "Cisco IOU L3", - "vendor_name": "Cisco", - "product_name": "Cisco IOU L3", - "vendor_url": "http://www.cisco.com", - "description": "Cisco IOS on UNIX Layer 3 image.", - "registry_version": 2, "maintainer_email": "developers@gns3.net", - "iou": { "ethernet_adapters": 2, "serial_adapters": 2, @@ -17,34 +16,32 @@ "ram": 256, "startup_config": "iou_l3_base_startup-config.txt" }, - - "versions": [ - { - "images": { - "image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" - }, - "name": "15.4.1T" - }, - { - "images": { - "image": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" - }, - "name": "155-2T" - } - - ], "images": [ { - "filesize": 152677848, - "md5sum": "2eabae17778316c49cbc80e8e81262f9", - "version": "15.4.1T", - "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" + "filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin", + "version": "155-2T", + "md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5", + "filesize": 172982492 }, { - "filesize": 172982492, - "md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5", - "version": "155-2T", - "filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" + "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin", + "version": "15.4.1T", + "md5sum": "2eabae17778316c49cbc80e8e81262f9", + "filesize": 152677848 + } + ], + "versions": [ + { + "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" + } } ] -} +} \ No newline at end of file diff --git a/appliances/cisco-nxosv.gns3a b/appliances/cisco-nxosv.gns3a index 04294fd..2623722 100644 --- a/appliances/cisco-nxosv.gns3a +++ b/appliances/cisco-nxosv.gns3a @@ -13,32 +13,28 @@ "usage": "The default username/password is admin/admin. A default configuration is present.", "first_port_name": "mgmt0", "port_name_format": "Ethernet2/{0}", - "qemu": { "adapter_type": "e1000", - "console_type": "telnet", + "adapters": 16, "ram": 3072, "arch": "x86_64", - "adapters": 16 + "console_type": "telnet" }, - "images": [ { - "filesize": 361103360, - "md5sum": "0ee38c7d717840cb4ca822f4870671d0", + "filename": "NXOSv-7.2.0.121.qcow2", "version": "7.2.0.121", - "download_url": "http://virl.cisco.com/", - "filename": "NXOSv-7.2.0.121.qcow2" + "md5sum": "0ee38c7d717840cb4ca822f4870671d0", + "filesize": 361103360, + "download_url": "http://virl.cisco.com/" } ], - "versions": [ { "name": "7.2.0.121", "images": { "hda_disk_image": "NXOSv-7.2.0.121.qcow2" } - } ] -} +} \ No newline at end of file diff --git a/appliances/cumulus-vx.gns3a b/appliances/cumulus-vx.gns3a index 924a3aa..070e279 100644 --- a/appliances/cumulus-vx.gns3a +++ b/appliances/cumulus-vx.gns3a @@ -14,32 +14,29 @@ "usage": "Default username is cumulus and password is CumulusLinux!", "first_port_name": "eth0", "port_name_format": "swp{0}", - "qemu": { "adapter_type": "virtio-net-pci", "adapters": 4, - "console_type": "vnc", "ram": 256, - "arch": "x86_64" + "arch": "x86_64", + "console_type": "vnc" }, - "images": [ - { - "filename": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2", - "version": "2.5.3", - "filesize": 1040973824, - "md5sum": "5128aec2568991ea0586293cb85f7a97", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/" - }, { "filename": "CumulusVX-2.5.5-cc665123486ac43d.qcow2", "version": "2.5.5", - "filesize": 1092550656, "md5sum": "e0cad2491d47f859828703a0b50cf633", + "filesize": 1092550656, + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/" + }, + { + "filename": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2", + "version": "2.5.3", + "md5sum": "5128aec2568991ea0586293cb85f7a97", + "filesize": 1040973824, "download_url": "https://cumulusnetworks.com/cumulus-vx/download/" } ], - "versions": [ { "name": "2.5.5", @@ -54,4 +51,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/firefox.gns3a b/appliances/firefox.gns3a index 580dc84..d0ccefa 100644 --- a/appliances/firefox.gns3a +++ b/appliances/firefox.gns3a @@ -1,26 +1,24 @@ { + "name": "Firefox", "category": "guest", + "description": "A light Linux based on TinyCore Linux with Firefox preinstalled", + "vendor_name": "Mozilla Foundation", + "vendor_url": "http://www.mozilla.org", + "documentation_url": "https://support.mozilla.org", + "product_name": "Firefox", + "product_url": "https://www.mozilla.org/firefox", + "registry_version": 1, "status": "stable", "maintainer": "GNS3 team", - "name": "Firefox", - "versions": [], - "symbol": "firefox.svg", - "registry_version": 1, "maintainer_email": "developers@gns3.net", - "product_url": "https://www.mozilla.org/firefox", - "documentation_url": "https://support.mozilla.org", - "images": [], - "vendor_name": "Mozilla Foundation", + "symbol": "firefox.svg", "qemu": { "adapter_type": "e1000", - "console_type": "vnc", + "adapters": 1, "ram": 256, "arch": "i386", - "adapters": 1 + "console_type": "vnc" }, - "product_name": "Firefox", - "vendor_url": "http://www.mozilla.org", - "description": "A light Linux based on TinyCore Linux with Firefox preinstalled", "images": [ { "filename": "linux-tinycore-linux-6.4-firefox-33.1.1.img", @@ -39,4 +37,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/hp-vsr1001.gns3a b/appliances/hp-vsr1001.gns3a index 3609f56..77f0c8e 100644 --- a/appliances/hp-vsr1001.gns3a +++ b/appliances/hp-vsr1001.gns3a @@ -12,7 +12,6 @@ "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", "usage": "At first boot the router will be installed from the cdrom.", - "qemu": { "adapter_type": "e1000", "adapters": 16, @@ -21,7 +20,6 @@ "console_type": "vnc", "boot_priority": "dc" }, - "images": [ { "filename": "VSR1000_HP-CMW710-R0204P01-X64.iso", @@ -38,16 +36,14 @@ "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Empty Qemu disk/empty8G.qcow2" } - ], - "versions": [ { "name": "7.10.R0204P01", "images": { - "cdrom_image": "VSR1000_HP-CMW710-R0204P01-X64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "VSR1000_HP-CMW710-R0204P01-X64.iso" } } ] -} +} \ No newline at end of file diff --git a/appliances/internet.gns3a b/appliances/internet.gns3a index 3706557..a5a98b3 100644 --- a/appliances/internet.gns3a +++ b/appliances/internet.gns3a @@ -1,4 +1,35 @@ { + "name": "Internet", + "category": "router", + "description": "This appliance simulate a domestic modem. It provide an IP via DHCP and will nat all connection to the internet without the need of using a cloud interface in your topologies. IP will be in the subnet 172.16.0.0/16. Multiple internet will have different IP range from 172.16.1.0/24 to 172.16.253.0/24 .\n\nWARNING USE IT ONLY WITH THE GNS3 VM.", + "vendor_name": "GNS3", + "vendor_url": "http://www.gns3.com", + "documentation_url": "http://www.gns3.com", + "product_name": "Internet", + "registry_version": 1, + "status": "stable", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "Just connect stuff to the appliance. Everything is automated.", + "symbol": ":/symbols/cloud.svg", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "ram": 64, + "arch": "i386", + "console_type": "telnet", + "options": "-device e1000,netdev=internet0 -netdev vde,sock=/var/run/vde2/qemu0.ctl,id=internet0" + }, + "images": [ + { + "filename": "core-linux-6.4-internet-0.1.img", + "version": "0.1", + "md5sum": "8ebc5a6ec53a1c05b7aa101b5ceefe31", + "filesize": 16711680, + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/core-linux-6.4-internet-0.1.img" + } + ], "versions": [ { "name": "0.1", @@ -6,36 +37,5 @@ "hda_disk_image": "core-linux-6.4-internet-0.1.img" } } - ], - "qemu": { - "console_type": "telnet", - "arch": "i386", - "adapters": 1, - "adapter_type": "e1000", - "options": "-device e1000,netdev=internet0 -netdev vde,sock=/var/run/vde2/qemu0.ctl,id=internet0", - "ram": 64 - }, - "vendor_name": "GNS3", - "usage": "Just connect stuff to the appliance. Everything is automated.", - "vendor_url": "http://www.gns3.com", - "product_name": "Internet", - "description": "This appliance simulate a domestic modem. It provide an IP via DHCP and will nat all connection to the internet without the need of using a cloud interface in your topologies. IP will be in the subnet 172.16.0.0/16. Multiple internet will have different IP range from 172.16.1.0/24 to 172.16.253.0/24 .\n\nWARNING USE IT ONLY WITH THE GNS3 VM.", - "symbol": ":/symbols/cloud.svg", - "maintainer": "GNS3 Team", - "name": "Internet", - "category": "router", - "status": "stable", - "registry_version": 1, - "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.gns3.com", - "images": [ - { - "version": "0.1", - "filename": "core-linux-6.4-internet-0.1.img", - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/core-linux-6.4-internet-0.1.img", - "filesize": 16711680, - "md5sum": "8ebc5a6ec53a1c05b7aa101b5ceefe31", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/" - } ] -} +} \ No newline at end of file diff --git a/appliances/juniper-vsrx.gns3a b/appliances/juniper-vsrx.gns3a index 20a2079..da9eade 100644 --- a/appliances/juniper-vsrx.gns3a +++ b/appliances/juniper-vsrx.gns3a @@ -1,57 +1,54 @@ { - "maintainer": "GNS3 Team", - "vendor_name": "Juniper", - "product_name": "vSRX", "name": "vSRX", - "description": "The vSRX delivers core firewall, networking, advanced security, and automated lifecycle management capabilities for enterprises and service providers. The industry\u2019s fastest virtual security platform, the vSRX offers firewall speeds up to 17 Gbps using only two virtual CPUs, providing scalable, secure protection across private, public, and hybrid clouds.", - "maintainer_email": "developers@gns3.net", - "documentation_url": "http://www.juniper.net/techpubs/", - "product_url": "https://www.juniper.net/us/en/products-services/security/srx-series/vsrx/", "category": "firewall", - "status": "experimental", + "description": "The vSRX delivers core firewall, networking, advanced security, and automated lifecycle management capabilities for enterprises and service providers. The industry\u2019s fastest virtual security platform, the vSRX offers firewall speeds up to 17 Gbps using only two virtual CPUs, providing scalable, secure protection across private, public, and hybrid clouds.", + "vendor_name": "Juniper", "vendor_url": "https://www.juniper.net/us/en/", + "documentation_url": "http://www.juniper.net/techpubs/", + "product_name": "vSRX", + "product_url": "https://www.juniper.net/us/en/products-services/security/srx-series/vsrx/", "registry_version": 1, + "status": "experimental", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", "usage": "Initial username is root, no password", "port_name_format": "ge-0/0/{0}", - "qemu": { - "console_type": "telnet", - "ram": 1024, "adapter_type": "e1000", "adapters": 6, + "ram": 1024, "arch": "x86_64", + "console_type": "telnet", "options": "-smp 2" }, - "images": [ { - "version": "12.1X47-D10", + "filename": "junos-vsrx-12.1X47-D20.7-domestic.ova", + "version": "12.1X47-D20", + "md5sum": "5a992d618b8b40fa4a3cffd234636643", + "filesize": 235960320, + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/" + }, + { "filename": "junos-vsrx-12.1X47-D10.4-domestic.ova", + "version": "12.1X47-D10", "md5sum": "008b50d56c3a56445fd5d89616881de5", "filesize": 238397440, "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/" - }, - { - "version": "12.1X47-D20", - "filename": "junos-vsrx-12.1X47-D20.7-domestic.ova", - "filesize": 235960320, - "md5sum": "5a992d618b8b40fa4a3cffd234636643", - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/" } ], - "versions": [ - { - "name": "12.1X47-D10", - "images": { - "hda_disk_image": "junos-vsrx-12.1X47-D10.4-domestic.ova/junos-vsrx-12.1X47-D10.4-domestic-disk1.vmdk" - } - }, { "name": "12.1X47-D20", "images": { "hda_disk_image": "junos-vsrx-12.1X47-D20.7-domestic.ova/junos-vsrx-12.1X47-D20.7-domestic-disk1.vmdk" } + }, + { + "name": "12.1X47-D10", + "images": { + "hda_disk_image": "junos-vsrx-12.1X47-D10.4-domestic.ova/junos-vsrx-12.1X47-D10.4-domestic-disk1.vmdk" + } } ] -} +} \ No newline at end of file diff --git a/appliances/kali-linux.gns3a b/appliances/kali-linux.gns3a index 9f88183..0125bc5 100644 --- a/appliances/kali-linux.gns3a +++ b/appliances/kali-linux.gns3a @@ -1,31 +1,33 @@ { - "vendor_name": "Kali Linux", + "name": "Kali Linux", "category": "guest", + "description": "From the creators of BackTrack comes Kali Linux, the most advanced and versatile penetration testing platform ever created. We have a set of amazing features lined up in our security distribution geared at streamlining the penetration testing experience.", + "vendor_name": "Kali Linux", + "vendor_url": "https://www.kali.org/", + "documentation_url": "https://www.kali.org/kali-linux-documentation/", + "product_name": "Kali Linux", + "registry_version": 1, + "status": "stable", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "Default password is toor", + "qemu": { + "adapter_type": "e1000", + "adapters": 8, + "ram": 1024, + "arch": "x86_64", + "console_type": "vnc" + }, "images": [ { "filename": "kali-linux-2.0-amd64.iso", - "md5sum": "ef192433017c5d99a156eaef51fd389d", "version": "2.0", - "direct_download_url": "http://images.kali.org/Kali-Linux-2.0.0-vm-amd64.7z", + "md5sum": "ef192433017c5d99a156eaef51fd389d", "filesize": 3320512512, - "download_url": "https://www.offensive-security.com/kali-linux-vmware-arm-image-download/" + "download_url": "https://www.offensive-security.com/kali-linux-vmware-arm-image-download/", + "direct_download_url": "http://images.kali.org/Kali-Linux-2.0.0-vm-amd64.7z" } ], - "documentation_url": "https://www.kali.org/kali-linux-documentation/", - "maintainer": "GNS3 Team", - "name": "Kali Linux", - "maintainer_email": "developers@gns3.net", - "qemu": { - "ram": 1024, - "adapters": 8, - "adapter_type": "e1000", - "console_type": "vnc", - "arch": "x86_64" - }, - "registry_version": 1, - "description": "From the creators of BackTrack comes Kali Linux, the most advanced and versatile penetration testing platform ever created. We have a set of amazing features lined up in our security distribution geared at streamlining the penetration testing experience.", - "usage": "Default password is toor", - "status": "stable", "versions": [ { "name": "2.0", @@ -33,7 +35,5 @@ "cdrom_image": "kali-linux-2.0-amd64.iso" } } - ], - "product_name": "Kali Linux", - "vendor_url": "https://www.kali.org/" -} + ] +} \ No newline at end of file diff --git a/appliances/microcore-linux.gns3a b/appliances/microcore-linux.gns3a index 5f60073..c1b7b66 100644 --- a/appliances/microcore-linux.gns3a +++ b/appliances/microcore-linux.gns3a @@ -13,7 +13,6 @@ "maintainer_email": "developers@gns3.net", "usage": "For version >= 6.4, login/password is gns3. For older version it is tc. Note that sudo works without any password", "symbol": "linux_guest.svg", - "qemu": { "adapter_type": "e1000", "adapters": 1, @@ -21,15 +20,14 @@ "arch": "i386", "console_type": "telnet" }, - "images": [ { - "filename": "linux-microcore-3.4.1.img", - "version": "3.4.1", - "md5sum": "fa2ec4b1fffad67d8103c3391bbf9df2", - "filesize": 24969216, + "filename": "linux-microcore-6.4.img", + "version": "6.4", + "md5sum": "877419f975c4891c019947ceead5c696", + "filesize": 16580608, "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-3.4.1.img" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-6.4.img" }, { "filename": "linux-microcore-4.0.2-clean.img", @@ -40,20 +38,19 @@ "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-4.0.2-clean.img" }, { - "filename": "linux-microcore-6.4.img", - "version": "6.4", - "md5sum": "877419f975c4891c019947ceead5c696", - "filesize": 16580608, + "filename": "linux-microcore-3.4.1.img", + "version": "3.4.1", + "md5sum": "fa2ec4b1fffad67d8103c3391bbf9df2", + "filesize": 24969216, "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-6.4.img" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-3.4.1.img" } ], - "versions": [ { - "name": "3.4.1", + "name": "6.4", "images": { - "hda_disk_image": "linux-microcore-3.4.1.img" + "hda_disk_image": "linux-microcore-6.4.img" } }, { @@ -63,10 +60,10 @@ } }, { - "name": "6.4", + "name": "3.4.1", "images": { - "hda_disk_image": "linux-microcore-6.4.img" + "hda_disk_image": "linux-microcore-3.4.1.img" } } ] -} +} \ No newline at end of file diff --git a/appliances/microsoft-windows+ie.gns3a b/appliances/microsoft-windows+ie.gns3a index 1c9df72..93f9172 100644 --- a/appliances/microsoft-windows+ie.gns3a +++ b/appliances/microsoft-windows+ie.gns3a @@ -1,34 +1,31 @@ { - "maintainer": "GNS3 Team", - "vendor_name": "Microsoft", - "product_name": "Windows", "name": "Windows", - "description": "Microsoft Windows (or simply Windows) is a graphical operating system developed, marketed, and sold by Microsoft.\n\nMicrosoft releases time limited VMs for testing Internet Explorer.\n\nOn the download site select the VM, as platform select VirtualBox, then download the zip file, afterwards unzip it.", - "maintainer_email": "developers@gns3.net", "category": "guest", - "status": "experimental", + "description": "Microsoft Windows (or simply Windows) is a graphical operating system developed, marketed, and sold by Microsoft.\n\nMicrosoft releases time limited VMs for testing Internet Explorer.\n\nOn the download site select the VM, as platform select VirtualBox, then download the zip file, afterwards unzip it.", + "vendor_name": "Microsoft", "vendor_url": "https://dev.microsoft.com/", + "product_name": "Windows", "registry_version": 1, - + "status": "experimental", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", "qemu": { - "console_type": "vnc", - "ram": 512, "adapter_type": "pcnet", "adapters": 2, + "ram": 512, "arch": "i386", + "console_type": "vnc", "options": "-vga std -soundhw es1370 -usbdevice tablet" }, - "images": [ { - "version": "XP+IE8", "filename": "IE8 - WinXP.ova", - "filesize": 1241329152, + "version": "XP+IE8", "md5sum": "88c74f288bc81a7aad3d610a351680ce", + "filesize": 1241329152, "download_url": "http://dev.windows.com/en-us/microsoft-edge/tools/vms/windows/" } ], - "versions": [ { "name": "XP+IE8", @@ -37,4 +34,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/mikrotik-chr.gns3a b/appliances/mikrotik-chr.gns3a index fe07978..eb7cf67 100644 --- a/appliances/mikrotik-chr.gns3a +++ b/appliances/mikrotik-chr.gns3a @@ -1,24 +1,79 @@ { - "registry_version": 1, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "status": "stable", + "name": "MikroTik CHR", "category": "router", + "description": "Cloud Hosted Router (CHR) is a RouterOS version meant for running as a virtual machine. It supports x86 64-bit architecture and can be used on most of popular hypervisors such as VMWare, Hyper-V, VirtualBox, KVM and others. CHR has full RouterOS features enabled by default but has a different licensing model than other RouterOS versions.", "vendor_name": "MikroTik", "vendor_url": "http://mikrotik.com/", + "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR", "product_name": "MikroTik Cloud Hosted Router", "product_url": "http://www.mikrotik.com/download", - "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR", - "name": "MikroTik CHR", - "description": "Cloud Hosted Router (CHR) is a RouterOS version meant for running as a virtual machine. It supports x86 64-bit architecture and can be used on most of popular hypervisors such as VMWare, Hyper-V, VirtualBox, KVM and others. CHR has full RouterOS features enabled by default but has a different licensing model than other RouterOS versions.", + "registry_version": 1, + "status": "stable", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "If you'd like a different sized main disk, resize the image before booting the VM for the first time.\n\nOn first boot, RouterOS is actually being installed, formatting the whole main virtual disk, before finally rebooting. That whole process may take a minute or so.\n\nThe console will become available after the installation is complete. Most Telnet/SSH clients (certainly SuperPutty) will keep retrying to connect, thus letting you know when installation is done.\n\nFrom that point on, everything about RouterOS is also true about Cloud Hosted Router, including the default credentials: Username \"admin\" and an empty password.\n\nThe primary differences between RouterOS and CHR are in support for virtual devices (this appliance comes with them being selected), and in the different license model, for which you can read more about at http://wiki.mikrotik.com/wiki/Manual:CHR.", "symbol": ":/symbols/router_firewall.svg", "port_name_format": "ether{port1}", - "usage": "If you'd like a different sized main disk, resize the image before booting the VM for the first time.\n\nOn first boot, RouterOS is actually being installed, formatting the whole main virtual disk, before finally rebooting. That whole process may take a minute or so.\n\nThe console will become available after the installation is complete. Most Telnet/SSH clients (certainly SuperPutty) will keep retrying to connect, thus letting you know when installation is done.\n\nFrom that point on, everything about RouterOS is also true about Cloud Hosted Router, including the default credentials: Username \"admin\" and an empty password.\n\nThe primary differences between RouterOS and CHR are in support for virtual devices (this appliance comes with them being selected), and in the different license model, for which you can read more about at http://wiki.mikrotik.com/wiki/Manual:CHR.", + "qemu": { + "adapter_type": "vmxnet3", + "adapters": 2, + "ram": 64, + "hda_disk_interface": "virtio", + "arch": "x86_64", + "console_type": "telnet", + "boot_priority": "c", + "options": "-nographic" + }, + "images": [ + { + "filename": "chr-6.33.5.vmdk", + "version": "6.33.3 (.vmdk)", + "md5sum": "cd284e28aa02ae59f55ed8f43ff27fbf", + "filesize": 23920640, + "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vmdk" + }, + { + "filename": "chr-6.33.3.vmdk", + "version": "6.33.3 (.vmdk)", + "md5sum": "08532a5af1a830182d65c416eab2b089", + "filesize": 23920640, + "download_url": "http://download2.mikrotik.com/routeros/6.33.3/chr-6.33.3.vmdk" + }, + { + "filename": "chr-6.33.5.vdi", + "version": "6.33.3 (.vdi)", + "md5sum": "fa84e63a558e7c61d7d338386cfd08c9", + "filesize": 24118272, + "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vdi" + }, + { + "filename": "chr-6.33.5.img", + "version": "6.33.3 (.img)", + "md5sum": "210cc8ad06f25c9f27b6b99f6e00bd91", + "filesize": 67108864, + "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.img.zip", + "compression": "zip" + }, + { + "filename": "chr-6.33.2.vmdk", + "version": "6.33.2 (.vmdk)", + "md5sum": "6291893c2c9626603c6d38d23390a8be", + "filesize": 23920640, + "download_url": "http://download2.mikrotik.com/routeros/6.33.2/chr-6.33.2.vmdk" + }, + { + "filename": "chr-6.33.vmdk", + "version": "6.33 (.vmdk)", + "md5sum": "63bee5405fa1e209388adc6b5f78bb70", + "filesize": 23920640, + "download_url": "http://download2.mikrotik.com/routeros/6.33/chr-6.33.vmdk" + } + ], "versions": [ { - "name": "6.33.5 (.img)", + "name": "6.33.5 (.vmdk)", "images": { - "hda_disk_image": "chr-6.33.5.img" + "hda_disk_image": "chr-6.33.5.vmdk" } }, { @@ -28,9 +83,9 @@ } }, { - "name": "6.33.5 (.vmdk)", + "name": "6.33.5 (.img)", "images": { - "hda_disk_image": "chr-6.33.5.vmdk" + "hda_disk_image": "chr-6.33.5.img" } }, { @@ -51,60 +106,5 @@ "hda_disk_image": "chr-6.33.vmdk" } } - ], - "images": [ - { - "filesize": 67108864, - "md5sum": "210cc8ad06f25c9f27b6b99f6e00bd91", - "filename": "chr-6.33.5.img", - "version": "6.33.3 (.img)", - "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.img.zip", - "compression": "zip" - }, - { - "filesize": 24118272, - "md5sum": "fa84e63a558e7c61d7d338386cfd08c9", - "filename": "chr-6.33.5.vdi", - "version": "6.33.3 (.vdi)", - "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vdi" - }, - { - "filesize": 23920640, - "md5sum": "cd284e28aa02ae59f55ed8f43ff27fbf", - "filename": "chr-6.33.5.vmdk", - "version": "6.33.3 (.vmdk)", - "download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vmdk" - }, - { - "filesize": 23920640, - "md5sum": "08532a5af1a830182d65c416eab2b089", - "filename": "chr-6.33.3.vmdk", - "version": "6.33.3 (.vmdk)", - "download_url": "http://download2.mikrotik.com/routeros/6.33.3/chr-6.33.3.vmdk" - }, - { - "filesize": 23920640, - "md5sum": "6291893c2c9626603c6d38d23390a8be", - "filename": "chr-6.33.2.vmdk", - "version": "6.33.2 (.vmdk)", - "download_url": "http://download2.mikrotik.com/routeros/6.33.2/chr-6.33.2.vmdk" - }, - { - "filesize": 23920640, - "md5sum": "63bee5405fa1e209388adc6b5f78bb70", - "filename": "chr-6.33.vmdk", - "version": "6.33 (.vmdk)", - "download_url": "http://download2.mikrotik.com/routeros/6.33/chr-6.33.vmdk" - } - ], - "qemu": { - "arch": "x86_64", - "adapter_type": "vmxnet3", - "hda_disk_interface": "virtio", - "boot_priority": "c", - "ram": 64, - "options": "-nographic", - "console_type": "telnet", - "adapters": 2 - } + ] } \ No newline at end of file diff --git a/appliances/netem.gns3a b/appliances/netem.gns3a index 1bd5acf..aa94212 100644 --- a/appliances/netem.gns3a +++ b/appliances/netem.gns3a @@ -12,7 +12,6 @@ "maintainer_email": "be@bernhard-ehlers.de", "usage": "Insert the NETem VM between two network elements and connect it to them. NETem is fully transparent, it bridges the traffic from one interface to the other one. As NETem only bridges, it needs no IP addresses. On start a menu on the console allows a user-friendy configuration of the line parameters.", "port_name_format": "eth{0}", - "qemu": { "adapter_type": "e1000", "adapters": 2, @@ -21,7 +20,6 @@ "console_type": "telnet", "options": "-nographic" }, - "images": [ { "filename": "NETem-v3.qcow2", @@ -32,7 +30,6 @@ "direct_download_url": "http://bernhard-ehlers.de/projects/netem/NETem-v3.qcow2" } ], - "versions": [ { "name": "0.3", @@ -41,4 +38,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/openbsd.gns3a b/appliances/openbsd.gns3a index 7c5040d..4ea4082 100644 --- a/appliances/openbsd.gns3a +++ b/appliances/openbsd.gns3a @@ -1,41 +1,41 @@ { - "vendor_name": "OpenBSD", "name": "OpenBSD", - "description": "The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system. Our efforts emphasize portability, standardization, correctness, proactive security and integrated cryptography. As an example of the effect OpenBSD has, the popular OpenSSH software comes from OpenBSD.", "category": "guest", - "first_port_name": "fxp0", - "usage": "User root, password gns3", - "maintainer": "GNS3 Team", - "port_name_format": "em{0}", - "maintainer_email": "developers@gns3.net", - "registry_version": 1, - "status": "stable", + "description": "The OpenBSD project produces a FREE, multi-platform 4.4BSD-based UNIX-like operating system. Our efforts emphasize portability, standardization, correctness, proactive security and integrated cryptography. As an example of the effect OpenBSD has, the popular OpenSSH software comes from OpenBSD.", + "vendor_name": "OpenBSD", "vendor_url": "http://www.openbsd.org", "documentation_url": "http://www.openbsd.org/faq/index.html", "product_name": "OpenBSD", + "registry_version": 1, + "status": "stable", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "usage": "User root, password gns3", + "first_port_name": "fxp0", + "port_name_format": "em{0}", + "qemu": { + "adapter_type": "e1000", + "adapters": 8, + "ram": 256, + "arch": "x86_64", + "console_type": "telnet" + }, "images": [ { + "filename": "openbsd-5.8.qcow2", + "version": "5.8", "md5sum": "b2488d81bbe1328ae3d6072ccd7e0bc2", "filesize": 517275648, "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openbsd-5.8.qcow2", - "version": "5.8", - "filename": "openbsd-5.8.qcow2" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openbsd-5.8.qcow2" } ], "versions": [ { + "name": "5.8", "images": { "hda_disk_image": "openbsd-5.8.qcow2" - }, - "name": "5.8" + } } - ], - "qemu": { - "adapters": 8, - "ram": 256, - "console_type": "telnet", - "arch": "x86_64", - "adapter_type": "e1000" - } -} + ] +} \ No newline at end of file diff --git a/appliances/openvswitch.gns3a b/appliances/openvswitch.gns3a index 1dcc281..0eba90a 100644 --- a/appliances/openvswitch.gns3a +++ b/appliances/openvswitch.gns3a @@ -1,38 +1,38 @@ { + "name": "Open vSwitch", "category": "multilayer_switch", + "description": "Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V.", + "vendor_name": "Open vSwitch", + "vendor_url": "http://openvswitch.net/", + "documentation_url": "http://openvswitch.net/support", + "product_name": "Open vSwitch", + "registry_version": 1, "status": "stable", "maintainer": "GNS3 Team", - "name": "Open vSwitch", - "versions": [ - { - "images": { - "hda_disk_image": "openvswitch-3.16.6-tinycore64.img" - }, - "name": "3.16.6" - } - ], - "registry_version": 1, "maintainer_email": "developers@gns3.net", - "documentation_url": "http://openvswitch.net/support", + "qemu": { + "adapter_type": "e1000", + "adapters": 24, + "ram": 128, + "arch": "x86_64", + "console_type": "telnet" + }, "images": [ { - "md5sum": "88b777ef930c1a3849b6a40c0d3fd102", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", "filename": "openvswitch-3.16.6-tinycore64.img", "version": "3.16.6", + "md5sum": "88b777ef930c1a3849b6a40c0d3fd102", "filesize": 70254592, + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openvswitch-3.16.6-tinycore64.img" } ], - "vendor_name": "Open vSwitch", - "qemu": { - "adapter_type": "e1000", - "console_type": "telnet", - "ram": 128, - "arch": "x86_64", - "adapters": 24 - }, - "product_name": "Open vSwitch", - "vendor_url": "http://openvswitch.net/", - "description": "Open vSwitch is a production quality, multilayer virtual switch licensed under the open source Apache 2.0 license. It is designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed to support distribution across multiple physical servers similar to VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V." -} + "versions": [ + { + "name": "3.16.6", + "images": { + "hda_disk_image": "openvswitch-3.16.6-tinycore64.img" + } + } + ] +} \ No newline at end of file diff --git a/appliances/openwrt-realview.gns3a b/appliances/openwrt-realview.gns3a index 124f5b0..7139ee4 100644 --- a/appliances/openwrt-realview.gns3a +++ b/appliances/openwrt-realview.gns3a @@ -3,15 +3,14 @@ "category": "router", "description": "OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that's more recent than most other distributions.\n\nThe realview platform is meant for use with QEMU for emulating an ARM system.", "vendor_name": "OpenWrt", - "vendor_url": "http://openwrt.org", - "documentation_url": "http://wiki.openwrt.org/doc/", + "vendor_url": "http://openwrt.org", + "documentation_url": "http://wiki.openwrt.org/doc/", "product_name": "OpenWrt", - "product_url": "http://openwrt.org", - "registry_version": 1, + "product_url": "http://openwrt.org", + "registry_version": 1, "status": "stable", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "qemu": { "adapter_type": "e1000", "adapters": 2, @@ -20,18 +19,16 @@ "console_type": "telnet", "options": "-M realview-eb-mpcore" }, - - "images": [ + "images": [ { "filename": "openwrt-realview-vmlinux-initramfs-14.07.elf", "version": "14.07", "md5sum": "2411307d0794baa618537c5dfcb19575", "filesize": 2183520, - "download_url": "http://downloads.openwrt.org/barrier_breaker/14.07/realview/generic/", - "direct_download_url": "http://downloads.openwrt.org/barrier_breaker/14.07/realview/generic/openwrt-realview-vmlinux-initramfs.elf" + "download_url": "http://downloads.openwrt.org/barrier_breaker/14.07/realview/generic/", + "direct_download_url": "http://downloads.openwrt.org/barrier_breaker/14.07/realview/generic/openwrt-realview-vmlinux-initramfs.elf" } ], - "versions": [ { "name": "Barrier Breaker 14.07", @@ -40,4 +37,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/openwrt.gns3a b/appliances/openwrt.gns3a index 6342f49..d721ca4 100644 --- a/appliances/openwrt.gns3a +++ b/appliances/openwrt.gns3a @@ -3,16 +3,15 @@ "category": "router", "description": "OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that's more recent than most other distributions.", "vendor_name": "OpenWrt", - "vendor_url": "http://openwrt.org", - "documentation_url": "http://wiki.openwrt.org/doc/", + "vendor_url": "http://openwrt.org", + "documentation_url": "http://wiki.openwrt.org/doc/", "product_name": "OpenWrt", - "product_url": "http://openwrt.org", - "registry_version": 1, + "product_url": "http://openwrt.org", + "registry_version": 1, "status": "stable", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", "usage": "Ethernet0 is the LAN link, Ethernet1 the WAN link.", - "qemu": { "adapter_type": "virtio-net-pci", "adapters": 2, @@ -20,8 +19,7 @@ "arch": "i386", "console_type": "telnet" }, - - "images": [ + "images": [ { "filename": "openwrt-15.05-x86-kvm_guest-combined-ext4.img", "version": "15.05", @@ -32,7 +30,6 @@ "compression": "gzip" } ], - "versions": [ { "name": "Chaos Calmer 15.05", @@ -41,4 +38,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/ostinato.gns3a b/appliances/ostinato.gns3a index cbfb40f..8f9a8fb 100644 --- a/appliances/ostinato.gns3a +++ b/appliances/ostinato.gns3a @@ -14,7 +14,6 @@ "usage": "Use interfaces starting with eth1 as traffic interfaces, eth0 is only for the (optional) management of the server/drone.", "symbol": "ostinato-3d-icon.svg", "port_name_format": "eth{0}", - "qemu": { "adapter_type": "e1000", "adapters": 4, @@ -23,7 +22,6 @@ "console_type": "vnc", "options": "-vga std -usbdevice tablet" }, - "images": [ { "filename": "ostinato-0.7.1-2.qcow2", @@ -34,7 +32,6 @@ "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.7.1-2.qcow2" } ], - "versions": [ { "name": "0.7.1", @@ -43,4 +40,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/tinycore-linux.gns3a b/appliances/tinycore-linux.gns3a index 8c734c5..b683a1d 100644 --- a/appliances/tinycore-linux.gns3a +++ b/appliances/tinycore-linux.gns3a @@ -13,7 +13,6 @@ "maintainer_email": "developers@gns3.net", "usage": "Login is gns3/gns3. sudo works without password", "symbol": "linux_guest.svg", - "qemu": { "adapter_type": "e1000", "adapters": 1, @@ -21,7 +20,6 @@ "arch": "i386", "console_type": "vnc" }, - "images": [ { "filename": "linux-tinycore-6.4.img", @@ -32,7 +30,6 @@ "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4.img" } ], - "versions": [ { "name": "6.4", @@ -41,4 +38,4 @@ } } ] -} +} \ No newline at end of file diff --git a/appliances/vrin.gns3a b/appliances/vrin.gns3a index 14520c8..826eb61 100644 --- a/appliances/vrin.gns3a +++ b/appliances/vrin.gns3a @@ -1,54 +1,54 @@ { - "registry_version": 1, "name": "vRIN", + "category": "guest", "description": "VM appliance capable to inject high number of routes into a network", "vendor_name": "Andras Dosztal", - "status": "stable", - "product_name": "vRIN", - "maintainer_email": "developers@gns3.net", - "maintainer": "Andras Dosztal", - "category": "guest", "vendor_url": "https://sourceforge.net/projects/vrin/", + "product_name": "vRIN", + "registry_version": 1, + "status": "stable", + "maintainer": "Andras Dosztal", + "maintainer_email": "developers@gns3.net", "symbol": "vRIN.svg", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "ram": 256, + "arch": "x86_64", + "console_type": "telnet" + }, "images": [ { "filename": "vRIN-0.7.qcow2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.7.qcow2.bz2/download", - "md5sum": "2e9802c403e34a91871922b9a26592ad", "version": "0.7", + "md5sum": "2e9802c403e34a91871922b9a26592ad", + "filesize": 614268928, "download_url": "https://sourceforge.net/projects/vrin/files", - "compression": "bzip2", - "filesize": 614268928 + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.7.qcow2.bz2/download", + "compression": "bzip2" }, { "filename": "vRIN-0.6.qcow2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.6.qcow2.bz2/download", - "md5sum": "6c763f609c05b5b9a3b1d422ab89dbac", "version": "0.6", + "md5sum": "6c763f609c05b5b9a3b1d422ab89dbac", + "filesize": 609681408, "download_url": "https://sourceforge.net/projects/vrin/files", - "compression": "bzip2", - "filesize": 609681408 + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.6.qcow2.bz2/download", + "compression": "bzip2" } ], - "qemu": { - "arch": "x86_64", - "adapters": 1, - "ram": 256, - "adapter_type": "e1000", - "console_type": "telnet" - }, "versions": [ { + "name": "0.7", "images": { "hda_disk_image": "vRIN-0.7.qcow2" - }, - "name": "0.7" + } }, { + "name": "0.6", "images": { "hda_disk_image": "vRIN-0.6.qcow2" - }, - "name": "0.6" + } } ] -} +} \ No newline at end of file diff --git a/appliances/vyos.gns3a b/appliances/vyos.gns3a index 66deeed..55959c5 100644 --- a/appliances/vyos.gns3a +++ b/appliances/vyos.gns3a @@ -14,16 +14,14 @@ "usage": "Default username/password is vyos/vyos. At first boot the router will start from the cdrom, login and then type install system and follow the instructions. Finally type poweroff and activate the linked base setting in your VM template in the GNS3 preferences.", "port_name_format": "eth{0}", "linked_base": false, - "qemu": { "adapter_type": "e1000", "adapters": 3, - "console_type": "telnet", "ram": 512, "arch": "x86_64", + "console_type": "telnet", "boot_priority": "dc" }, - "images": [ { "filename": "vyos-1.1.6-amd64.iso", @@ -49,23 +47,21 @@ "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Empty Qemu disk/empty8G.qcow2" } - ], - "versions": [ { "name": "1.1.6", "images": { - "cdrom_image": "vyos-1.1.6-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "vyos-1.1.6-amd64.iso" } }, { "name": "1.1.5", "images": { - "cdrom_image": "vyos-1.1.5-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "vyos-1.1.5-amd64.iso" } } ] -} +} \ No newline at end of file diff --git a/prettify_appliances.py b/prettify_appliances.py new file mode 100644 index 0000000..6b99b92 --- /dev/null +++ b/prettify_appliances.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python +# +# Copyright (C) 2015 GNS3 Technologies Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +""" +Prettify all appliances JSON +""" + +import glob +import json +import jsonschema +from collections import OrderedDict + +def sort_key_using_schema(schema, key): + """ + Sort by position of a key in the JSON + """ + + return list(schema['properties'].keys()).index(key) + +with open('schemas/appliance.json') as f: + schema = json.load(f, object_pairs_hook=OrderedDict) + +for appliance in glob.glob('appliances/*.gns3a'): + print('=> Prettify', appliance) + # Load appliance + with open(appliance) as f: + config = json.load(f) + + config = OrderedDict(sorted(config.items(), key=lambda t: sort_key_using_schema(schema, t[0]))) + for key,val in config.items(): + if isinstance(val, dict): + config[key] = OrderedDict(sorted(val.items(), key=lambda t: sort_key_using_schema(schema['properties'][key], t[0]))) + + images = [] + for image in config['images']: + images.append(OrderedDict(sorted(image.items(), key=lambda t: sort_key_using_schema(schema['properties']['images']['items'], t[0])))) + images = sorted(images, key=lambda t: t['version'], reverse=True) + config['images'] = images + + versions = [] + for version in config['versions']: + version = OrderedDict(sorted(version.items(), key=lambda t: sort_key_using_schema(schema['properties']['versions']['items'], t[0]))) + version['images'] = OrderedDict(sorted(version['images'].items(), key=lambda t: sort_key_using_schema(schema['properties']['versions']['items']['properties']['images'], t[0]))) + versions.append(version) + versions = sorted(versions, key=lambda t: t['name'], reverse=True) + config['versions'] = versions + + # Validate our changes + jsonschema.validate(config, schema) + + # Save + with open(appliance, 'w') as f: + json.dump(config, f,indent=4) +