From f03ba5ca0b28eb84c0f94a8cbf9a1c8a609487ff Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 11 Nov 2018 20:08:13 +0800 Subject: [PATCH 01/33] Update appliance templates. --- gns3server/appliances/arista-veos.gns3a | 56 +++++++++++++++++++ gns3server/appliances/bsdrp.gns3a | 15 +++++ gns3server/appliances/cisco-csr1000v.gns3a | 13 +++++ gns3server/appliances/cisco-ise.gns3a | 23 ++++++-- gns3server/appliances/clearos.gns3a | 14 +++++ gns3server/appliances/coreos.gns3a | 15 +++++ gns3server/appliances/cumulus-vx.gns3a | 14 +++++ gns3server/appliances/dell-ftos.gns3a | 10 ++-- gns3server/appliances/exos.gns3a | 15 +++++ gns3server/appliances/f5-bigip.gns3a | 14 +++++ gns3server/appliances/f5-bigiq.gns3a | 14 +++++ gns3server/appliances/fortiadc.gns3a | 14 +++++ gns3server/appliances/fortianalyzer.gns3a | 14 +++++ .../appliances/fortiauthenticator.gns3a | 14 +++++ gns3server/appliances/forticache.gns3a | 14 +++++ gns3server/appliances/fortigate.gns3a | 14 +++++ gns3server/appliances/fortimail.gns3a | 14 +++++ gns3server/appliances/fortimanager.gns3a | 14 +++++ gns3server/appliances/fortisandbox.gns3a | 30 +++++++--- .../appliances/fortisiem-super_worker.gns3a | 37 ++++++++++-- gns3server/appliances/fortiweb.gns3a | 14 +++++ gns3server/appliances/freebsd.gns3a | 15 +++++ gns3server/appliances/freenas.gns3a | 18 +++++- gns3server/appliances/hp-vsr1001.gns3a | 15 ++++- gns3server/appliances/ipfire.gns3a | 15 +++++ gns3server/appliances/kemp-vlm.gns3a | 13 +++++ gns3server/appliances/kerio-connect.gns3a | 14 +++++ gns3server/appliances/kerio-control.gns3a | 14 +++++ gns3server/appliances/kerio-operator.gns3a | 14 +++++ gns3server/appliances/packetfence-zen.gns3a | 15 +++++ gns3server/appliances/proxmox-mg.gns3a | 15 +++++ gns3server/appliances/security-onion.gns3a | 19 ++++++- gns3server/appliances/sophos-iview.gns3a | 18 +++++- gns3server/appliances/sophos-utm.gns3a | 14 +++++ gns3server/appliances/sophos-xg.gns3a | 25 ++++++++- gns3server/appliances/untangle.gns3a | 14 +++++ 36 files changed, 590 insertions(+), 30 deletions(-) diff --git a/gns3server/appliances/arista-veos.gns3a b/gns3server/appliances/arista-veos.gns3a index 58376afb..e701fb56 100644 --- a/gns3server/appliances/arista-veos.gns3a +++ b/gns3server/appliances/arista-veos.gns3a @@ -24,6 +24,13 @@ "kvm": "require" }, "images": [ + { + "filename": "vEOS-lab-4.21.1.1F.vmdk", + "version": "4.21.1.1F", + "md5sum": "02bfb7e53781fd44ff02357f201586d9", + "filesize": 358809600, + "download_url": "https://www.arista.com/en/support/software-download" + }, { "filename": "vEOS-lab-4.20.1F.vmdk", "version": "4.20.1F", @@ -45,6 +52,13 @@ "filesize": 620625920, "download_url": "https://www.arista.com/en/support/software-download" }, + { + "filename": "vEOS-lab-4.17.8M.vmdk", + "version": "4.17.8M", + "md5sum": "afc79a06f930ea2cc0ae3e03cbfd3f23", + "filesize": 608829440, + "download_url": "https://www.arista.com/en/support/software-download" + }, { "filename": "vEOS-lab-4.17.2F.vmdk", "version": "4.17.2F", @@ -52,6 +66,13 @@ "filesize": 609615872, "download_url": "https://www.arista.com/en/support/software-download" }, + { + "filename": "vEOS-lab-4.16.13M.vmdk", + "version": "4.16.13M", + "md5sum": "4d0facf90140fc3aab031f0f8f88a32f", + "filesize": 521404416, + "download_url": "https://www.arista.com/en/support/software-download" + }, { "filename": "vEOS-lab-4.16.6M.vmdk", "version": "4.16.6M", @@ -59,6 +80,13 @@ "filesize": 519962624, "download_url": "https://www.arista.com/en/support/software-download" }, + { + "filename": "vEOS-lab-4.15.10M.vmdk", + "version": "4.15.10M", + "md5sum": "98e08281a9c48ddf6f3c5d62a124a20f", + "filesize": 517079040, + "download_url": "https://www.arista.com/en/support/software-download" + }, { "filename": "vEOS-lab-4.15.5M.vmdk", "version": "4.15.5M", @@ -96,6 +124,13 @@ } ], "versions": [ + { + "name": "4.21.1F", + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.21.1.1F.vmdk" + } + }, { "name": "4.20.1F", "images": { @@ -117,6 +152,13 @@ "hdb_disk_image": "vEOS-lab-4.18.1F.vmdk" } }, + { + "name": "4.17.8M", + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.17.8M.vmdk" + } + }, { "name": "4.17.2F", "images": { @@ -124,6 +166,13 @@ "hdb_disk_image": "vEOS-lab-4.17.2F.vmdk" } }, + { + "name": "4.16.13M", + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.16.13M.vmdk" + } + }, { "name": "4.16.6M", "images": { @@ -131,6 +180,13 @@ "hdb_disk_image": "vEOS-lab-4.16.6M.vmdk" } }, + { + "name": "4.15.10M", + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.15.10M.vmdk" + } + }, { "name": "4.15.5M", "images": { diff --git a/gns3server/appliances/bsdrp.gns3a b/gns3server/appliances/bsdrp.gns3a index 838441cf..e0d08087 100644 --- a/gns3server/appliances/bsdrp.gns3a +++ b/gns3server/appliances/bsdrp.gns3a @@ -19,6 +19,15 @@ "kvm": "allow" }, "images": [ + { + "filename": "BSDRP-1.91-full-amd64-serial.img", + "version": "1.91", + "md5sum": "cea67b29ce94e66b617e7dc90956af45", + "filesize": 1000000000, + "download_url": "https://bsdrp.net/downloads", + "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.91/amd64/BSDRP-1.91-full-amd64-serial.img.xz/download", + "compression": "xz" + }, { "filename": "BSDRP-1.90-full-amd64-serial.img", "version": "1.90", @@ -48,6 +57,12 @@ } ], "versions": [ + { + "name": "1.91", + "images": { + "hda_disk_image": "BSDRP-1.91-full-amd64-serial.img" + } + }, { "name": "1.90", "images": { diff --git a/gns3server/appliances/cisco-csr1000v.gns3a b/gns3server/appliances/cisco-csr1000v.gns3a index 5078d9f5..8ef6dacd 100644 --- a/gns3server/appliances/cisco-csr1000v.gns3a +++ b/gns3server/appliances/cisco-csr1000v.gns3a @@ -22,6 +22,13 @@ "kvm": "require" }, "images": [ + { + "filename": "csr1000v-universalk9.16.09.01-serial.qcow2", + "version": "16.9.1", + "md5sum": "d7e1c83b6f513beb4200c7691d119086", + "filesize": 917897216, + "download_url": "https://software.cisco.com/download/home/284364978/type/282046477/release/Fuji-16.9.1" + }, { "filename": "csr1000v-universalk9.16.08.01a-serial.qcow2", "version": "16.8.1a", @@ -101,6 +108,12 @@ } ], "versions": [ + { + "name": "16.9.1", + "images": { + "hda_disk_image": "csr1000v-universalk9.16.09.01-serial.qcow2" + } + }, { "name": "16.8.1a", "images": { diff --git a/gns3server/appliances/cisco-ise.gns3a b/gns3server/appliances/cisco-ise.gns3a index 950e532c..b7056f5b 100644 --- a/gns3server/appliances/cisco-ise.gns3a +++ b/gns3server/appliances/cisco-ise.gns3a @@ -23,29 +23,36 @@ "console_type": "vnc", "boot_priority": "cd", "kvm": "require", - "options": "-smp 2" + "options": "-smp 2 -smbios type=1,product=KVM" }, "images": [ + { + "filename": "ise-2.2.0.470.SPA.x86_64.iso", + "version": "2.2.0.470", + "md5sum": "7fe5e730d0a51ef66e69d1463717ff3f", + "filesize": 8044992512, + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.2.0" + }, { "filename": "ise-2.1.0.474.SPA.x86_64.iso", "version": "2.1.0.474", "md5sum": "8dc844696790f2f5f37054899fab3e2a", "filesize": 6161475584, - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.1.0" }, { "filename": "ise-2.0.1.130.SPA.x86_64.iso", "version": "2.0.1.130", "md5sum": "25ac842fdbb61f6e75f2f8b26beea28e", "filesize": 5129990144, - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.0.1" }, { "filename": "ise-2.0.0.306.SPA.x86_64.iso", "version": "2.0.0.306", "md5sum": "b7a454ee235db29b5c208b19bfd1fbd1", "filesize": 5088827392, - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.0.0&relind=AVAILABLE&rellifecycle=&reltype=latest" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.0" }, { "filename": "empty200G.qcow2", @@ -57,6 +64,13 @@ } ], "versions": [ + { + "name": "2.2.0.470", + "images": { + "hda_disk_image": "empty200G.qcow2", + "cdrom_image": "ise-2.2.0.470.SPA.x86_64.iso" + } + }, { "name": "2.1.0.474", "images": { @@ -78,6 +92,5 @@ "cdrom_image": "ise-2.0.0.306.SPA.x86_64.iso" } } - ] } diff --git a/gns3server/appliances/clearos.gns3a b/gns3server/appliances/clearos.gns3a index 25cd1876..37c2cc14 100644 --- a/gns3server/appliances/clearos.gns3a +++ b/gns3server/appliances/clearos.gns3a @@ -22,6 +22,13 @@ "kvm": "require" }, "images": [ + { + "filename": "ClearOS-7.5-DVD-x86_64.iso", + "version": "7.5", + "md5sum": "1e23c5f73a6c996420d8e0e70b000bf9", + "filesize": 1146093568, + "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads" + }, { "filename": "ClearOS-7.4-DVD-x86_64.iso", "version": "7.4", @@ -53,6 +60,13 @@ } ], "versions": [ + { + "name": "7.5", + "images": { + "hda_disk_image": "empty30G.qcow2", + "cdrom_image": "ClearOS-7.5-DVD-x86_64.iso" + } + }, { "name": "7.4", "images": { diff --git a/gns3server/appliances/coreos.gns3a b/gns3server/appliances/coreos.gns3a index c5aa480b..5cd31521 100644 --- a/gns3server/appliances/coreos.gns3a +++ b/gns3server/appliances/coreos.gns3a @@ -21,6 +21,15 @@ "kvm": "allow" }, "images": [ + { + "filename": "coreos_production_qemu_image.1855.5.0.img", + "version": "1855.5.0", + "md5sum": "6b5b06bc47446277c5c536c09b5a7988", + "filesize": 924319744, + "download_url": "http://stable.release.core-os.net/amd64-usr/1855.5.0/", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1855.5.0/coreos_production_qemu_image.img.bz2", + "compression": "bzip2" + }, { "filename": "coreos_production_qemu_image.1688.5.3.img", "version": "1688.5.3", @@ -167,6 +176,12 @@ } ], "versions": [ + { + "name": "1855.5.0", + "images": { + "hda_disk_image": "coreos_production_qemu_image.1855.5.0.img" + } + }, { "name": "1688.5.3", "images": { diff --git a/gns3server/appliances/cumulus-vx.gns3a b/gns3server/appliances/cumulus-vx.gns3a index e5baedfa..2e5641c4 100644 --- a/gns3server/appliances/cumulus-vx.gns3a +++ b/gns3server/appliances/cumulus-vx.gns3a @@ -23,6 +23,14 @@ "kvm": "require" }, "images": [ + { + "filename": "cumulus-linux-3.7.1-vx-amd64-qemu.qcow2", + "version": "3.7.1", + "md5sum": "201055c57e4a20bb5772289ea6216631", + "filesize": 1640300544, + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/CumulusLinux-3.7.1/cumulus-linux-3.7.1-vx-amd64-qemu.qcow2" + }, { "filename": "cumulus-linux-3.6.2-vx-amd64.qcow2", "version": "3.6.2", @@ -173,6 +181,12 @@ } ], "versions": [ + { + "name": "3.7.1", + "images": { + "hda_disk_image": "cumulus-linux-3.7.1-vx-amd64-qemu.qcow2" + } + }, { "name": "3.6.2", "images": { diff --git a/gns3server/appliances/dell-ftos.gns3a b/gns3server/appliances/dell-ftos.gns3a index 136fb48a..af13461a 100644 --- a/gns3server/appliances/dell-ftos.gns3a +++ b/gns3server/appliances/dell-ftos.gns3a @@ -1,16 +1,16 @@ { - "name": "Dell FTOS", + "name": "Dell OS9", "category": "router", - "description": "Dell Networking OS10 combines the best of Linux, open computing and networking to advance open networking disaggregation. Dell Networking OS10 is a transformational software platform that provides networking hardware abstraction through a common set of APIs. Enable consistency across compute and network resources for your system operators (SysOps) groups that require server-like manageability. Easily leverage your existing network configuration. Dell Networking OS10 incorporates traditional networking integration. Enhance the integration and control you allow your development and operations (DevOps) teams, down to identifying an object as an individual, manageable entity within the platform.", + "description": "Dell Networking OS9 (formerly FTOS).\nOS9 powers the Dell Networking product portfolio and has been hardened in some of the largest and most demanding environments in the world to meet stringent reliability, scalability and serviceability requirements. \n\nDownload and uncompress zip files from the Dell support site - corresponding to the FTOS/OS9 image name. Please 'Select FTOS for S-Series OS-EMULATOR'. Import the resulting ISO image.", "vendor_name": "Dell Inc.", "vendor_url": "http://www.dell.com/", - "product_name": "Dell FTOS", + "product_name": "Dell OS9", "product_url": "http://www.dell.com/us/business/p/open-platform-software/pd", "registry_version": 3, "status": "experimental", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "usage": "Abort the BCM process and format the flash after first boot by entering these commands:\nen\nformat flash:\n\nSometimes the flash device is not available after boot.", + "usage": "Make sure the Boot priority of the configuration template is HDD or CD.\n\nAbort the BCM process and format the flash after first boot by entering these commands:\nen\nformat flash:\n\nSometimes the flash device is not available after boot.", "first_port_name": "Management0/0", "port_name_format": "fortyGigE0/{0}", "qemu": { @@ -29,7 +29,7 @@ "version": "9.8.0", "md5sum": "b9b50eda0a73407dc381792ff7975e24", "filesize": 108115968, - "download_url": "https://www.force10networks.com/csportal20/Software/Downloads.aspx", + "download_url": "https://www.force10networks.com/CSPortal20/Software/SSeriesDownloads.aspx", "compression": "zip" }, { diff --git a/gns3server/appliances/exos.gns3a b/gns3server/appliances/exos.gns3a index 2aa8522d..d4f7087b 100644 --- a/gns3server/appliances/exos.gns3a +++ b/gns3server/appliances/exos.gns3a @@ -26,6 +26,14 @@ "options": "-smp 2 -cpu core2duo" }, "images": [ + { + "filename": "exosvm-22.6.1.4.iso", + "version": "22.6.1.4", + "md5sum": "66146aba82575b3879431143b6dc8a35", + "filesize": 53706752, + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.6.1.4.iso" + }, { "filename": "exosvm-22.5.1.7.iso", "version": "22.5.1.7", @@ -108,6 +116,13 @@ } ], "versions": [ + { + "name": "22.6.1.4", + "images": { + "hda_disk_image": "empty8G.qcow2", + "cdrom_image": "exosvm-22.6.1.4.iso" + } + }, { "name": "22.5.1.7", "images": { diff --git a/gns3server/appliances/f5-bigip.gns3a b/gns3server/appliances/f5-bigip.gns3a index 78e39877..efaf8464 100644 --- a/gns3server/appliances/f5-bigip.gns3a +++ b/gns3server/appliances/f5-bigip.gns3a @@ -27,6 +27,13 @@ "options": "-smp 2 -cpu host" }, "images": [ + { + "filename": "BIGIP-14.0.0.3-0.0.4.qcow2", + "version": "14.0.0 HF3", + "md5sum": "dc80a7e436ff93e2f4092eece18d369b", + "filesize": 4550164480, + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v14.x/14.0.0/english/14.0.0.3_virtual-edition/&sw=BIG-IP&pro=big-ip_v14.x&ver=14.0.0&container=14.0.0.3_Virtual-Edition&file=BIGIP-14.0.0.3-0.0.4.ALL.qcow2.zip" + }, { "filename": "BIGIP-13.1.0.5-0.0.5.qcow2", "version": "13.1.0 HF5", @@ -135,6 +142,13 @@ } ], "versions": [ + { + "name": "14.0.0 HF3", + "images": { + "hda_disk_image": "BIGIP-14.0.0.3-0.0.4.qcow2", + "hdb_disk_image": "empty100G.qcow2" + } + }, { "name": "13.1.0 HF5", "images": { diff --git a/gns3server/appliances/f5-bigiq.gns3a b/gns3server/appliances/f5-bigiq.gns3a index d1878658..45c71511 100644 --- a/gns3server/appliances/f5-bigiq.gns3a +++ b/gns3server/appliances/f5-bigiq.gns3a @@ -29,6 +29,13 @@ "options": "-smp 2 -cpu host" }, "images": [ + { + "filename": "BIG-IQ-6.0.1.1.0.0.9.qcow2", + "version": "6.0.1.1", + "md5sum": "3ae32308fe39d5db555f7f1cdcc734dd", + "filesize": 3895787520, + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/6.0.1/english/v6.0.1.1/&sw=BIG-IQ&pro=big-iq_CM&ver=6.0.1&container=v6.0.1.1&file=BIG-IQ-6.0.1.1.0.0.9.qcow2.zip" + }, { "filename": "BIG-IQ-5.4.0.2.24.7467.qcow2", "version": "5.4.0.2", @@ -88,6 +95,13 @@ } ], "versions": [ + { + "name": "6.0.1.1", + "images": { + "hda_disk_image": "BIG-IQ-6.0.1.1.0.0.9.qcow2", + "hdb_disk_image": "empty100G.qcow2" + } + }, { "name": "5.4.0.2", "images": { diff --git a/gns3server/appliances/fortiadc.gns3a b/gns3server/appliances/fortiadc.gns3a index 5a6e7c83..3a32a0ff 100644 --- a/gns3server/appliances/fortiadc.gns3a +++ b/gns3server/appliances/fortiadc.gns3a @@ -34,6 +34,13 @@ "filesize": 30998528, "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" }, + { + "filename": "FAD_KVM-V500-build0239-FORTINET.out.kvm-boot.qcow2", + "version": "5.1.1", + "md5sum": "f94323bc6415dd1477f2352bd3323d14", + "filesize": 75235328, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FAD_KVM-V500-build0056-FORTINET.out.kvm-boot.qcow2", "version": "5.0.1", @@ -176,6 +183,13 @@ } ], "versions": [ + { + "name": "5.1.1", + "images": { + "hda_disk_image": "FAD_KVM-V500-build0239-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + } + }, { "name": "5.0.1", "images": { diff --git a/gns3server/appliances/fortianalyzer.gns3a b/gns3server/appliances/fortianalyzer.gns3a index 31475fa9..43d67635 100644 --- a/gns3server/appliances/fortianalyzer.gns3a +++ b/gns3server/appliances/fortianalyzer.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FAZ_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "version": "6.0.2", + "md5sum": "1c9c6a99244aaf8b215c52194e1f82ed", + "filesize": 115777536, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FAZ_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", "version": "6.0.0", @@ -127,6 +134,13 @@ } ], "versions": [ + { + "name": "6.0.2", + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + } + }, { "name": "6.0.0", "images": { diff --git a/gns3server/appliances/fortiauthenticator.gns3a b/gns3server/appliances/fortiauthenticator.gns3a index 4be5bd2b..29f58ab6 100644 --- a/gns3server/appliances/fortiauthenticator.gns3a +++ b/gns3server/appliances/fortiauthenticator.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FAC_VM_KVM-v5-build0297-FORTINET.out.kvm.qcow2", + "version": "5.4.1", + "md5sum": "e63bcaae040f903f9de315f582702619", + "filesize": 72617984, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FAC_VM_KVM-v5-build0163-FORTINET.out.kvm.qcow2", "version": "5.2.2", @@ -84,6 +91,13 @@ } ], "versions": [ + { + "name": "5.4.1", + "images": { + "hda_disk_image": "FAC_VM_KVM-v5-build0297-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + } + }, { "name": "5.2.2", "images": { diff --git a/gns3server/appliances/forticache.gns3a b/gns3server/appliances/forticache.gns3a index dddf5974..faeeb959 100644 --- a/gns3server/appliances/forticache.gns3a +++ b/gns3server/appliances/forticache.gns3a @@ -26,6 +26,13 @@ "kvm": "require" }, "images": [ + { + "filename": "FCHKVM-v400-build0226-FORTINET.out.kvm.qcow2", + "version": "4.2.8", + "md5sum": "17efdc8f037c8ec1d1fc67ae262f619e", + "filesize": 27676672, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FCHKVM-v400-build0222-FORTINET.out.kvm.qcow2", "version": "4.2.7", @@ -106,6 +113,13 @@ } ], "versions": [ + { + "name": "4.2.8", + "images": { + "hda_disk_image": "FCHKVM-v400-build0226-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" + } + }, { "name": "4.2.7", "images": { diff --git a/gns3server/appliances/fortigate.gns3a b/gns3server/appliances/fortigate.gns3a index f3c1afc4..cd75b5d7 100644 --- a/gns3server/appliances/fortigate.gns3a +++ b/gns3server/appliances/fortigate.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FGT_VM64_KVM-v6-build0200-FORTINET.out.kvm.qcow2", + "version": "6.0.3", + "md5sum": "be6f74ea13da09cf0b68e87234e2d8d5", + "filesize": 51552256, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FGT_VM64_KVM-v6-build0076-FORTINET.out.kvm.qcow2", "version": "6.0.0", @@ -197,6 +204,13 @@ } ], "versions": [ + { + "name": "6.0.3", + "images": { + "hda_disk_image": "FGT_VM64_KVM-v6-build0200-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + } + }, { "name": "6.0.0", "images": { diff --git a/gns3server/appliances/fortimail.gns3a b/gns3server/appliances/fortimail.gns3a index a970d912..a61711e1 100644 --- a/gns3server/appliances/fortimail.gns3a +++ b/gns3server/appliances/fortimail.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FML_VMKV-64-v60-build0126-FORTINET.out.kvm.qcow2", + "version": "6.0.3", + "md5sum": "b062636f029ff0f3d4b74451cc70b755", + "filesize": 96731136, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FML_VMKV-64-v54-build0719-FORTINET.out.kvm.qcow2", "version": "5.4.5", @@ -155,6 +162,13 @@ } ], "versions": [ + { + "name": "6.0.3", + "images": { + "hda_disk_image": "FML_VMKV-64-v60-build0126-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + } + }, { "name": "5.4.5", "images": { diff --git a/gns3server/appliances/fortimanager.gns3a b/gns3server/appliances/fortimanager.gns3a index 7827c2e5..091a0255 100644 --- a/gns3server/appliances/fortimanager.gns3a +++ b/gns3server/appliances/fortimanager.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FMG_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "version": "6.0.2", + "md5sum": "8f748649c537d9b5466b24c5b4e62017", + "filesize": 116981760, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FMG_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", "version": "6.0.0", @@ -127,6 +134,13 @@ } ], "versions": [ + { + "name": "6.0.2", + "images": { + "hda_disk_image": "FMG_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + } + }, { "name": "6.0.0", "images": { diff --git a/gns3server/appliances/fortisandbox.gns3a b/gns3server/appliances/fortisandbox.gns3a index 9abf5228..848fff5b 100644 --- a/gns3server/appliances/fortisandbox.gns3a +++ b/gns3server/appliances/fortisandbox.gns3a @@ -27,6 +27,13 @@ "options": "-smp 2" }, "images": [ + { + "filename": "FSA_KVM-v300-build0029-FORTINET.out.kvm.qcow2", + "version": "3.0.1", + "md5sum": "a2f6c5297a722c5dba40327734a6e0ac", + "filesize": 153158144, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", "version": "2.5.2", @@ -77,7 +84,7 @@ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" }, { - "filename": "FSA_v200-datadrive.qcow2", + "filename": "FSA-datadrive.qcow2", "version": "2.x", "md5sum": "f2dc0a8fc7591699c364aff400369157", "filesize": 200192, @@ -85,53 +92,60 @@ } ], "versions": [ + { + "name": "3.0.1", + "images": { + "hda_disk_image": "FSA_KVM-v300-build0029-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" + } + }, { "name": "2.5.2", "images": { "hda_disk_image": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.5.1", "images": { "hda_disk_image": "FSA_KVM-v200-build0329-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.4.1", "images": { "hda_disk_image": "FSA_KVM-v200-build0261-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.4.0", "images": { "hda_disk_image": "FSA_KVM-v200-build0252-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.3.3", "images": { "hda_disk_image": "FSA_KVM-v200-build0205-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.3.2", "images": { "hda_disk_image": "FSA_KVM-v200-build0195-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } }, { "name": "2.3.0", "images": { "hda_disk_image": "FSA_VM-v200-build0183-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hdb_disk_image": "FSA-datadrive.qcow2" } } ] diff --git a/gns3server/appliances/fortisiem-super_worker.gns3a b/gns3server/appliances/fortisiem-super_worker.gns3a index 739d1cf2..52156bc5 100644 --- a/gns3server/appliances/fortisiem-super_worker.gns3a +++ b/gns3server/appliances/fortisiem-super_worker.gns3a @@ -11,7 +11,7 @@ "status": "stable", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "usage": "This is the Super/Worker component. Default credentials:\n- admin / admin*1\n - root / ProspectHills\n\nIf you get a 503 error on the WebUI, run /opt/phoenix/deployment/jumpbox/phinitsuper as root.", + "usage": "This is the Super/Worker component. Default credentials:\n- admin / admin*1\n - root / ProspectHills\n\nIf you get a 503 error on the WebUI, run /opt/phoenix/deployment/jumpbox/phinitsuper as root.\n\nMake sure that Super, Worker(s), Collector(s) and Report Server can connect to FortiSIEM hosted CentOS repo on https port 443 under the URLs below. Otherwise, some packages may not install and 5.0.0 binaries will not run.\n- https://os-pkgs-cdn.fortisiem.fortinet.com/centos6/\n- https://os-pkgs.fortisiem.fortinet.com/centos6/", "port_name_format": "Port{port1}", "symbol": "fortinet.svg", "qemu": { @@ -28,26 +28,47 @@ "options": "-smp 4" }, "images": [ + { + "filename": "FortiSIEM-VA-5.1.0.1336.qcow2", + "version": "5.1.0", + "md5sum": "753685ee68287c7a56f9da53566ac522", + "filesize": 10376904704, + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html" + }, + { + "filename": "FortiSIEM-VA-5.1.0.1336-1.qcow2", + "version": "5.1.0", + "md5sum": "6ffb7e16d89a6731fc077982cb012ee2", + "filesize": 46858240, + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html" + }, + { + "filename": "FortiSIEM-VA-5.1.0.1336-2.qcow2", + "version": "5.1.0", + "md5sum": "8185e537ce222c2e8407e9bf08e604bb", + "filesize": 46858240, + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html" + }, { "filename": "FortiSIEM-VA-5.0.0.1201.qcow2", "version": "5.0.0", "md5sum": "1f2f0b1d84e89495fc5b5ca722cb5710", "filesize": 10029432832, - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html" }, { "filename": "FortiSIEM-VA-5.0.0.1201-1.qcow2", "version": "5.0.0", "md5sum": "88e96259f44a82b7c545b82925880513", "filesize": 46858240, - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html" }, { "filename": "FortiSIEM-VA-5.0.0.1201-2.qcow2", "version": "5.0.0", "md5sum": "58d61498e1adc1df062fc12113d42d86", "filesize": 46858240, - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html" }, { "filename": "FortiSIEM-VA-KVM-4.10.0.1102.qcow2", @@ -93,6 +114,14 @@ } ], "versions": [ + { + "name": "5.1.0", + "images": { + "hda_disk_image": "FortiSIEM-VA-5.1.0.1336.qcow2", + "hdb_disk_image": "FortiSIEM-VA-5.1.0.1336-1.qcow2", + "hdc_disk_image": "FortiSIEM-VA-5.1.0.1336-2.qcow2" + } + }, { "name": "5.0.0", "images": { diff --git a/gns3server/appliances/fortiweb.gns3a b/gns3server/appliances/fortiweb.gns3a index 64368fce..d2216e74 100644 --- a/gns3server/appliances/fortiweb.gns3a +++ b/gns3server/appliances/fortiweb.gns3a @@ -26,6 +26,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "FWB_KVM-v600-build0036-FORTINET.out.kvm.qcow2", + "version": "6.0.1", + "md5sum": "220170383b66a6f8091729d67a8fef3e", + "filesize": 138412544, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx" + }, { "filename": "FWB_KVM-v500-build1618-FORTINET.out.kvm.qcow2", "version": "5.9.1", @@ -93,6 +100,13 @@ ], "versions": [ + { + "name": "6.0.1", + "images": { + "hda_disk_image": "FWB_KVM-v600-build0036-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + } + }, { "name": "5.9.1", "images": { diff --git a/gns3server/appliances/freebsd.gns3a b/gns3server/appliances/freebsd.gns3a index 90d97218..37bf800d 100644 --- a/gns3server/appliances/freebsd.gns3a +++ b/gns3server/appliances/freebsd.gns3a @@ -22,6 +22,15 @@ "kvm": "require" }, "images": [ + { + "filename": "FreeBSD-11.2-RELEASE-amd64.qcow2", + "version": "11.2", + "md5sum": "44d37e65be4bb4054f067911c84d074a", + "filesize": 1630076928, + "download_url": "https://www.freebsd.org/where.html", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/amd64/Latest/FreeBSD-11.2-RELEASE-amd64.qcow2.xz", + "compression": "xz" + }, { "filename": "FreeBSD-11.1-RELEASE-amd64.qcow2", "version": "11.1", @@ -60,6 +69,12 @@ } ], "versions": [ + { + "name": "11.2", + "images": { + "hda_disk_image": "FreeBSD-11.2-RELEASE-amd64.qcow2" + } + }, { "name": "11.1", "images": { diff --git a/gns3server/appliances/freenas.gns3a b/gns3server/appliances/freenas.gns3a index 866e7023..75dc4023 100644 --- a/gns3server/appliances/freenas.gns3a +++ b/gns3server/appliances/freenas.gns3a @@ -24,9 +24,17 @@ "kvm": "require" }, "images": [ + { + "filename": "FreeNAS-11.1-U6.iso", + "version": "11.1 U6", + "md5sum": "633d6444cad903c707983b54e04fc053", + "filesize": 636065792, + "download_url": "http://www.freenas.org/download/", + "direct_download_url": "https://download.freenas.org/11/11.1-U4/x64/FreeNAS-11.1-U4.iso" + }, { "filename": "FreeNAS-11.1-U4.iso", - "version": "11.1 U1", + "version": "11.1 U4", "md5sum": "d75623e5671dbc82f32f4b4f8d46092f", "filesize": 633833472, "download_url": "http://www.freenas.org/download/", @@ -74,6 +82,14 @@ } ], "versions": [ + { + "name": "11.1 U6", + "images": { + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2", + "cdrom_image": "FreeNAS-11.1-U6.iso" + } + }, { "name": "11.1 U4", "images": { diff --git a/gns3server/appliances/hp-vsr1001.gns3a b/gns3server/appliances/hp-vsr1001.gns3a index c0b7f9c8..6d0fb3fc 100644 --- a/gns3server/appliances/hp-vsr1001.gns3a +++ b/gns3server/appliances/hp-vsr1001.gns3a @@ -1,7 +1,7 @@ { "name": "HPE VSR1001", "category": "router", - "description": "The HP VSR1000 Virtual Services Router Series is a software application, running on a server, which provides functionality similar to that of a physical router: robust routing between networked devices using a number of popular routing protocols. It also delivers the critical network services associated with today's enterprise routers such as VPN gateway, firewall and other security and traffic management functions.\n\nThe virtual services router (VSR) application runs on a hypervqcor on the server, and supports VMware vSphere and Linux KVM hypervqcors. From one to eight virtual CPUs are supported, depending on license.\n\nBecause the VSR1000 Series application runs the same HP Comware version 7 operating system as HP switches and routers, it enables significant operational savings. And being virtual, additional agility and ease of deployment is realized, as resources on the VSR can be dynamically allocated and upgraded upon demand as performance requirements grow.\n\nA variety of deployment models are supported including enterprise branch CPE routing, and cloud offload for small to medium workloads.", + "description": "The HPE VSR1000 Virtual Services Router Series is a software application, running on a server, which provides functionality similar to that of a physical router: robust routing between networked devices using a number of popular routing protocols. It also delivers the critical network services associated with today's enterprise routers such as VPN gateway, firewall and other security and traffic management functions.\n\nThe virtual services router (VSR) application runs on a hypervqcor on the server, and supports VMware vSphere and Linux KVM hypervqcors. From one to eight virtual CPUs are supported, depending on license.\n\nBecause the VSR1000 Series application runs the same HPE Comware version 7 operating system as HPE switches and routers, it enables significant operational savings. And being virtual, additional agility and ease of deployment is realized, as resources on the VSR can be dynamically allocated and upgraded upon demand as performance requirements grow.\n\nA variety of deployment models are supported including enterprise branch CPE routing, and cloud offload for small to medium workloads.", "vendor_name": "HPE", "vendor_url": "http://www.hpe.com", "documentation_url": "https://support.hpe.com/hpesc/public/home/documentHome?document_type=135&sp4ts.oid=5195141", @@ -24,6 +24,13 @@ "options": "-machine type=pc-1.0" }, "images": [ + { + "filename": "VSR1000_HPE-CMW710-E0519L03-X64.qco", + "version": "7.10.E0519L03", + "md5sum": "83e23d27e7c3ef7ce813e6aad31d74f7", + "filesize": 202047488, + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=23726&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=" + }, { "filename": "VSR1000_HPE-CMW710-R0327L01-X64.qco", "version": "7.10.R0327L01", @@ -82,6 +89,12 @@ } ], "versions": [ + { + "name": "7.10.E0519L03", + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0519L03-X64.qco" + } + }, { "name": "7.10.R0327L01", "images": { diff --git a/gns3server/appliances/ipfire.gns3a b/gns3server/appliances/ipfire.gns3a index 616c7e43..cac7f9cd 100644 --- a/gns3server/appliances/ipfire.gns3a +++ b/gns3server/appliances/ipfire.gns3a @@ -24,6 +24,15 @@ "kvm": "allow" }, "images": [ + { + "filename": "ipfire-2.21.2gb-ext4.x86_64-full-core124.img", + "version": "2.21.124", + "md5sum": "970a5cafaa0cb4cfbf42772f41d24932", + "filesize": 1541160960, + "download_url": "http://www.ipfire.org/download", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.21-core124/ipfire-2.21.2gb-ext4.x86_64-full-core124.img.xz", + "compression": "xz" + }, { "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img", "version": "2.19.119", @@ -80,6 +89,12 @@ } ], "versions": [ + { + "name": "2.21.124", + "images": { + "hda_disk_image": "ipfire-2.21.2gb-ext4.x86_64-full-core124.img" + } + }, { "name": "2.19.119", "images": { diff --git a/gns3server/appliances/kemp-vlm.gns3a b/gns3server/appliances/kemp-vlm.gns3a index b873db5c..16f1beb2 100644 --- a/gns3server/appliances/kemp-vlm.gns3a +++ b/gns3server/appliances/kemp-vlm.gns3a @@ -26,6 +26,13 @@ "options": "-smp 2" }, "images": [ + { + "filename": "LoadMaster-VLM-7.2.44.0.16685.RELEASE-Linux-KVM-XEN-FREE.disk", + "version": "7.2.44.0", + "md5sum": "90d2f84fcabe0ba530c84cf12fab87f1", + "filesize": 17179869185, + "download_url": "http://freeloadbalancer.com/download/" + }, { "filename": "LoadMaster-VLM-7.2.40.0.15707.RELEASE-Linux-KVM-XEN-FREE.disk", "version": "7.2.40.0", @@ -63,6 +70,12 @@ } ], "versions": [ + { + "name": "7.2.44.0", + "images": { + "hda_disk_image": "LoadMaster-VLM-7.2.44.0.16685.RELEASE-Linux-KVM-XEN-FREE.disk" + } + }, { "name": "7.2.40.0", "images": { diff --git a/gns3server/appliances/kerio-connect.gns3a b/gns3server/appliances/kerio-connect.gns3a index 206e91bb..c5117fc2 100644 --- a/gns3server/appliances/kerio-connect.gns3a +++ b/gns3server/appliances/kerio-connect.gns3a @@ -24,6 +24,14 @@ "kvm": "require" }, "images": [ + { + "filename": "kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk", + "version": "9.2.7p3", + "md5sum": "12950c8244300f1d86c85c109f0b3413", + "filesize": 914165248, + "download_url": "http://www.kerio.com/support/kerio-connect", + "direct_download_url": "http://cdn.kerio.com/dwn/connect/connect-9.2.7-4225/kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk" + }, { "filename": "kerio-connect-appliance-9.2.6-3851-p1-vmware-amd64-disk1.vmdk", "version": "9.2.6p1", @@ -75,6 +83,12 @@ } ], "versions": [ + { + "name": "9.2.7p3", + "images": { + "hda_disk_image": "kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk" + } + }, { "name": "9.2.6p1", "images": { diff --git a/gns3server/appliances/kerio-control.gns3a b/gns3server/appliances/kerio-control.gns3a index 02a868bb..bafcf681 100644 --- a/gns3server/appliances/kerio-control.gns3a +++ b/gns3server/appliances/kerio-control.gns3a @@ -23,6 +23,14 @@ "kvm": "require" }, "images": [ + { + "filename": "kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk", + "version": "9.2.7", + "md5sum": "d286a240be53f8dd9da5f80deb9086b0", + "filesize": 191135232, + "download_url": "http://www.kerio.com/support/kerio-control", + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.7-2921/kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk" + }, { "filename": "kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk", "version": "9.2.5p5", @@ -71,6 +79,12 @@ "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.1.4-1535/kerio-control-appliance-9.1.4-1535-vmware.vmdk" } ], "versions": [ + { + "name": "9.2.7", + "images": { + "hda_disk_image": "kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk" + } + }, { "name": "9.2.5p5", "images": { diff --git a/gns3server/appliances/kerio-operator.gns3a b/gns3server/appliances/kerio-operator.gns3a index 7d1d1781..7d4bf307 100644 --- a/gns3server/appliances/kerio-operator.gns3a +++ b/gns3server/appliances/kerio-operator.gns3a @@ -24,6 +24,14 @@ "kvm": "require" }, "images": [ + { + "filename": "kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk", + "version": "2.6.4", + "md5sum": "3823565dbc96069dc556158ebbbfb977", + "filesize": 307840512, + "download_url": "http://www.kerio.com/support/kerio-operator", + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.4-9320/kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk" + }, { "filename": "kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk", "version": "2.6.2", @@ -74,6 +82,12 @@ } ], "versions": [ + { + "name": "2.6.4", + "images": { + "hda_disk_image": "kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk" + } + }, { "name": "2.6.2", "images": { diff --git a/gns3server/appliances/packetfence-zen.gns3a b/gns3server/appliances/packetfence-zen.gns3a index efc68820..1b432f54 100644 --- a/gns3server/appliances/packetfence-zen.gns3a +++ b/gns3server/appliances/packetfence-zen.gns3a @@ -22,6 +22,15 @@ "kvm": "require" }, "images": [ + { + "filename": "PacketFenceZEN_USB-8.1.0.img", + "version": "8.1.0", + "md5sum": "f326f0e70b35d598c8b84ee3fc9c611f", + "filesize": 3221225472, + "download_url": "https://packetfence.org/download.html#/zen", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/8.1.0/PacketFenceZEN_USB-8.1.0.tar.bz2/download", + "compression": "bzip2" + }, { "filename": "PacketFenceZEN_USB-7.4.0.img", "version": "7.4.0", @@ -105,6 +114,12 @@ } ], "versions": [ + { + "name": "8.1.0", + "images": { + "hda_disk_image": "PacketFenceZEN_USB-8.1.0.img" + } + }, { "name": "7.4.0", "images": { diff --git a/gns3server/appliances/proxmox-mg.gns3a b/gns3server/appliances/proxmox-mg.gns3a index 56d2a774..2f00d6e6 100644 --- a/gns3server/appliances/proxmox-mg.gns3a +++ b/gns3server/appliances/proxmox-mg.gns3a @@ -24,6 +24,14 @@ "kvm": "require" }, "images": [ + { + "filename": "proxmox-mailgateway_5.1-1.iso", + "version": "5.1-1", + "md5sum": "e629d5ff3213ff3ffbe5a8ab8ef87489", + "filesize": 724660224, + "download_url": "http://www.proxmox.com/en/downloads", + "direct_download_url": "https://www.proxmox.com/en/downloads?task=callelement&format=raw&item_id=415&element=f85c494b-2b32-4109-b8c1-083cca2b7db6&method=download&args[0]=7348486df9daacc8bd891a1d7ef1e5cb" + }, { "filename": "proxmox-mailgateway_4.1-5.iso", "version": "4.1-5", @@ -42,6 +50,13 @@ } ], "versions": [ + { + "name": "5.1-1", + "images": { + "hda_disk_image": "empty30G.qcow2", + "cdrom_image": "proxmox-mailgateway_5.1-1.iso" + } + }, { "name": "4.1-5", "images": { diff --git a/gns3server/appliances/security-onion.gns3a b/gns3server/appliances/security-onion.gns3a index c2011f4d..f894fbe1 100644 --- a/gns3server/appliances/security-onion.gns3a +++ b/gns3server/appliances/security-onion.gns3a @@ -22,12 +22,20 @@ "kvm": "allow" }, "images": [ + { + "filename": "securityonion-16.04.5.3.iso", + "version": "16.04.5.3", + "md5sum": "886b369548c9c3841bc820cc3ab02bd9", + "filesize": 1895825408, + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", + "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v16.04.5.3_20181010/securityonion-16.04.5.3.iso" + }, { "filename": "securityonion-14.04.5.4.iso", "version": "14.04.5.4", "md5sum": "9c7cab756b675beb10de4274a3ad3bc6", "filesize": 1874853888, - "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.4.iso", + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.4.iso" }, { @@ -35,7 +43,7 @@ "version": "14.04.5.3", "md5sum": "fb80ccb2d3c0f3f511823fa5858f87d1", "filesize": 1889533952, - "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.3.iso", + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.3.iso" }, { @@ -49,6 +57,13 @@ ], "versions": [ + { + "name": "16.04.5.3", + "images": { + "hda_disk_image": "empty30G.qcow2", + "cdrom_image": "securityonion-16.04.5.3.iso" + } + }, { "name": "14.04.5.4", "images": { diff --git a/gns3server/appliances/sophos-iview.gns3a b/gns3server/appliances/sophos-iview.gns3a index 0ef5a699..59670f7a 100644 --- a/gns3server/appliances/sophos-iview.gns3a +++ b/gns3server/appliances/sophos-iview.gns3a @@ -24,6 +24,13 @@ "kvm": "require" }, "images": [ + { + "filename": "VI-SIVOS_03.01.2.KVM-009-PRIMARY.qcow2", + "version": "3.1.2", + "md5sum": "62551f70f71e08283d3a23929321eba9", + "filesize": 644218880, + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" + }, { "filename": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", "version": "2.0.0 MR2", @@ -32,7 +39,7 @@ "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" }, { - "filename": "VI-SIVOS_02.00.0_MR-2.KVM-776-AUXILARY.qcow2", + "filename": "VI-SIVOS-AUXILARY.qcow2", "version": "2.0.0 MR2", "md5sum": "a52d8cedb1ccd4b5b9f2723dfb41588b", "filesize": 204800, @@ -40,11 +47,18 @@ } ], "versions": [ + { + "name": "3.1.2", + "images": { + "hda_disk_image": "VI-SIVOS_03.01.2.KVM-009-PRIMARY.qcow2", + "hdb_disk_image": "VI-SIVOS-AUXILARY.qcow2" + } + }, { "name": "2.0.0 MR2", "images": { "hda_disk_image": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", - "hdb_disk_image": "VI-SIVOS_02.00.0_MR-2.KVM-776-AUXILARY.qcow2" + "hdb_disk_image": "VI-SIVOS-AUXILARY.qcow2" } } ] diff --git a/gns3server/appliances/sophos-utm.gns3a b/gns3server/appliances/sophos-utm.gns3a index 30584d40..431e991c 100644 --- a/gns3server/appliances/sophos-utm.gns3a +++ b/gns3server/appliances/sophos-utm.gns3a @@ -24,6 +24,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "asg-9.510-5.1.iso", + "version": "9.510-5.1", + "md5sum": "ae21f96686f238c25941fd3240c7da5b", + "filesize": 871266304, + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx" + }, { "filename": "asg-9.506-2.1.iso", "version": "9.506-2.1", @@ -139,6 +146,13 @@ } ], "versions": [ + { + "name": "9.510-5.1", + "images": { + "hda_disk_image": "empty30G.qcow2", + "cdrom_image": "asg-9.510-5.1.iso" + } + }, { "name": "9.506-2.1", "images": { diff --git a/gns3server/appliances/sophos-xg.gns3a b/gns3server/appliances/sophos-xg.gns3a index d190ee48..e17a9b67 100644 --- a/gns3server/appliances/sophos-xg.gns3a +++ b/gns3server/appliances/sophos-xg.gns3a @@ -23,6 +23,20 @@ "kvm": "require" }, "images": [ + { + "filename": "VI-17.1.3_MR-3.KVM-250-PRIMARY.qcow2", + "version": "17.1.3 MR3", + "md5sum": "f11c4f63656bcdacbd27c44c52416941", + "filesize": 298844160, + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" + }, + { + "filename": "VI-17.1.3_MR-3.KVM-250-AUXILARY.qcow2", + "version": "17.1.3 MR3", + "md5sum": "fbea59f7aa81f305bea78c86f82dc3a6", + "filesize": 59441152, + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" + }, { "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-PRIMARY.qcow2", "version": "17.0.2 MR2", @@ -32,7 +46,7 @@ }, { "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-AUXILARY.qcow2", - "version": "16.05.1 MR1", + "version": "17.0.2 MR2", "md5sum": "c3ef795423dbfc01771348b0daa75125", "filesize": 59441152, "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" @@ -46,7 +60,7 @@ }, { "filename": "VI-SFOS_16.05.4_MR-4.KVM-215-AUXILARY.qcow2", - "version": "16.05.1 MR1", + "version": "16.05.4 MR4", "md5sum": "cafac2d997a3ead087d5823b86ce6cb4", "filesize": 59441152, "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx" @@ -109,6 +123,13 @@ } ], "versions": [ + { + "name": "17.1.3 MR3", + "images": { + "hda_disk_image": "VI-17.1.3_MR-3.KVM-250-PRIMARY.qcow2", + "hdb_disk_image": "VI-17.1.3_MR-3.KVM-250-AUXILARY.qcow2" + } + }, { "name": "17.0.2 MR2", "images": { diff --git a/gns3server/appliances/untangle.gns3a b/gns3server/appliances/untangle.gns3a index 236400ea..a2d0963c 100644 --- a/gns3server/appliances/untangle.gns3a +++ b/gns3server/appliances/untangle.gns3a @@ -24,6 +24,13 @@ "kvm": "allow" }, "images": [ + { + "filename": "untangle_1401_x64.iso", + "version": "14.0.1", + "md5sum": "d9c01afd8bf4b5dfdc40c22aa3b2fd98", + "filesize": 680525824, + "download_url": "https://www.untangle.com/get-untangle/" + }, { "filename": "untangle_1321_x64.iso", "version": "13.2.1", @@ -104,6 +111,13 @@ } ], "versions": [ + { + "name": "14.0.1", + "images": { + "hda_disk_image": "empty30G.qcow2", + "cdrom_image": "untangle_1401_x64.iso" + } + }, { "name": "13.2.1", "images": { From f0fe9d39fa9418f56c3bf7faa8b34a4291659c37 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 11 Nov 2018 20:13:58 +0800 Subject: [PATCH 02/33] Base for dedicated appliance management API. Ref https://github.com/GNS3/gns3-server/issues/1427 --- gns3server/compute/vmware/vmware_vm.py | 8 +- gns3server/controller/__init__.py | 285 +++++++++++------- gns3server/controller/appliance.py | 79 +++-- gns3server/controller/node.py | 5 +- gns3server/controller/project.py | 7 +- .../api/controller/appliance_handler.py | 85 +++++- .../handlers/api/controller/node_handler.py | 3 +- gns3server/schemas/appliance.py | 48 +++ 8 files changed, 361 insertions(+), 159 deletions(-) diff --git a/gns3server/compute/vmware/vmware_vm.py b/gns3server/compute/vmware/vmware_vm.py index 2ca01096..f1fb7e0d 100644 --- a/gns3server/compute/vmware/vmware_vm.py +++ b/gns3server/compute/vmware/vmware_vm.py @@ -188,10 +188,10 @@ class VMwareVM(BaseNode): # create the linked clone based on the base snapshot new_vmx_path = os.path.join(self.working_dir, self.name + ".vmx") await self._control_vm("clone", - new_vmx_path, - "linked", - "-snapshot={}".format(base_snapshot_name), - "-cloneName={}".format(self.name)) + new_vmx_path, + "linked", + "-snapshot={}".format(base_snapshot_name), + "-cloneName={}".format(self.name)) try: vmsd_pairs = self.manager.parse_vmware_file(vmsd_path) diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index cf303e90..27c3b2cb 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -128,71 +128,59 @@ class Controller: log.warning("Cannot load appliance template file '%s': %s", path, str(e)) continue + def add_appliance(self, settings): + """ + Adds a new appliance. + + :param settings: appliance settings + + :returns: Appliance object + """ + + appliance_id = settings.get("appliance_id", "") + if appliance_id in self._appliances: + raise aiohttp.web.HTTPConflict(text="Appliance ID '{}' already exists".format(appliance_id)) + else: + appliance_id = settings.setdefault("appliance_id", str(uuid.uuid4())) + try: + appliance = Appliance(appliance_id, settings) + appliance.__json__() # Check if loaded without error + except KeyError as e: + # appliance settings is not complete + raise aiohttp.web.HTTPConflict(text="Cannot create new appliance: key '{}' is missing for appliance ID '{}'".format(e, appliance_id)) + self._appliances[appliance.id] = appliance + self.save() + return appliance + + def get_appliance(self, appliance_id): + """ + Gets an appliance. + + :param appliance_id: appliance identifier + + :returns: Appliance object + """ + + appliance = self._appliances.get(appliance_id) + if not appliance: + raise aiohttp.web.HTTPNotFound(text="Appliance ID {} doesn't exist".format(appliance_id)) + return appliance + + def delete_appliance(self, appliance_id): + """ + Deletes an appliance. + + :param appliance_id: appliance identifier + """ + + appliance = self._appliances.get(appliance_id) + if appliance.builtin: + raise aiohttp.web.HTTPConflict(text="Appliance ID {} cannot be deleted because it is builtin".format(appliance_id)) + self._appliances.pop(appliance_id) + def load_appliances(self): - self._appliances = {} - vms = [] - for vm in self._settings.get("Qemu", {}).get("vms", []): - vm["node_type"] = "qemu" - vms.append(vm) - for vm in self._settings.get("IOU", {}).get("devices", []): - vm["node_type"] = "iou" - vms.append(vm) - for vm in self._settings.get("Docker", {}).get("containers", []): - vm["node_type"] = "docker" - vms.append(vm) - for vm in self._settings.get("Builtin", {}).get("cloud_nodes", []): - vm["node_type"] = "cloud" - vms.append(vm) - for vm in self._settings.get("Builtin", {}).get("ethernet_switches", []): - vm["node_type"] = "ethernet_switch" - vms.append(vm) - for vm in self._settings.get("Builtin", {}).get("ethernet_hubs", []): - vm["node_type"] = "ethernet_hub" - vms.append(vm) - for vm in self._settings.get("Dynamips", {}).get("routers", []): - vm["node_type"] = "dynamips" - vms.append(vm) - for vm in self._settings.get("VMware", {}).get("vms", []): - vm["node_type"] = "vmware" - vms.append(vm) - for vm in self._settings.get("VirtualBox", {}).get("vms", []): - vm["node_type"] = "virtualbox" - vms.append(vm) - for vm in self._settings.get("VPCS", {}).get("nodes", []): - vm["node_type"] = "vpcs" - vms.append(vm) - for vm in self._settings.get("TraceNG", {}).get("nodes", []): - vm["node_type"] = "traceng" - vms.append(vm) - - for vm in vms: - # remove deprecated properties - for prop in vm.copy(): - if prop in ["enable_remote_console", "use_ubridge", "acpi_shutdown"]: - del vm[prop] - - # remove deprecated default_symbol and hover_symbol - # and set symbol if not present - deprecated = ["default_symbol", "hover_symbol"] - if len([prop for prop in vm.keys() if prop in deprecated]) > 0: - if "default_symbol" in vm.keys(): - del vm["default_symbol"] - if "hover_symbol" in vm.keys(): - del vm["hover_symbol"] - - if "symbol" not in vm.keys(): - vm["symbol"] = ":/symbols/computer.svg" - - vm.setdefault("appliance_id", str(uuid.uuid4())) - try: - appliance = Appliance(vm["appliance_id"], vm) - appliance.__json__() # Check if loaded without error - self._appliances[appliance.id] = appliance - except KeyError as e: - # appliance data is not complete (missing name or type) - log.warning("Cannot load appliance template {} ('{}'): missing key {}".format(vm["appliance_id"], vm.get("name", "unknown"), e)) - continue + #self._appliances = {} # Add builtins builtins = [] @@ -232,14 +220,14 @@ class Controller: computes = await self._load_controller_settings() try: self._local_server = await self.add_compute(compute_id="local", - name=name, - protocol=server_config.get("protocol", "http"), - host=host, - console_host=console_host, - port=port, - user=server_config.get("user", ""), - password=server_config.get("password", ""), - force=True) + name=name, + protocol=server_config.get("protocol", "http"), + host=host, + console_host=console_host, + port=port, + user=server_config.get("user", ""), + password=server_config.get("password", ""), + force=True) except aiohttp.web.HTTPConflict as e: log.fatal("Cannot access to the local server, make sure something else is not running on the TCP port {}".format(port)) sys.exit(1) @@ -288,31 +276,34 @@ class Controller: # We don't save during the loading otherwise we could lost stuff if self._settings is None: return - data = { - "computes": [], - "settings": self._settings, - "gns3vm": self.gns3vm.__json__(), - "appliance_templates_etag": self._appliance_templates_etag, - "version": __version__ - } - - for c in self._computes.values(): - if c.id != "local" and c.id != "vm": - data["computes"].append({ - "host": c.host, - "name": c.name, - "port": c.port, - "protocol": c.protocol, - "user": c.user, - "password": c.password, - "compute_id": c.id - }) + + controller_settings = {"computes": [], + "settings": self._settings, + "appliances": [], + "gns3vm": self.gns3vm.__json__(), + "appliance_templates_etag": self._appliance_templates_etag, + "version": __version__} + + for appliance in self._appliances.values(): + if not appliance.builtin: + controller_settings["appliances"].append(appliance.__json__()) + + for compute in self._computes.values(): + if compute.id != "local" and compute.id != "vm": + controller_settings["computes"].append({"host": compute.host, + "name": compute.name, + "port": compute.port, + "protocol": compute.protocol, + "user": compute.user, + "password": compute.password, + "compute_id": compute.id}) + try: os.makedirs(os.path.dirname(self._config_file), exist_ok=True) with open(self._config_file, 'w+') as f: - json.dump(data, f, indent=4) + json.dump(controller_settings, f, indent=4) except OSError as e: - log.error("Cannnot write configuration file '{}': {}".format(self._config_file, e)) + log.error("Cannot write controller configuration file '{}': {}".format(self._config_file, e)) async def _load_controller_settings(self): """ @@ -324,23 +315,37 @@ class Controller: await self._import_gns3_gui_conf() self.save() with open(self._config_file) as f: - data = json.load(f) + controller_settings = json.load(f) except (OSError, ValueError) as e: log.critical("Cannot load configuration file '{}': {}".format(self._config_file, e)) self._settings = {} return [] - if "settings" in data and data["settings"] is not None: - self._settings = data["settings"] + if "settings" in controller_settings and controller_settings["settings"] is not None: + self._settings = controller_settings["settings"] else: self._settings = {} - if "gns3vm" in data: - self.gns3vm.settings = data["gns3vm"] - self._appliance_templates_etag = data.get("appliance_templates_etag") + # load the appliances + if "appliances" in controller_settings: + for appliance_settings in controller_settings["appliances"]: + try: + appliance = Appliance(appliance_settings["appliance_id"], appliance_settings) + appliance.__json__() # Check if loaded without error + self._appliances[appliance.id] = appliance + except KeyError as e: + # appliance data is not complete (missing name or type) + log.warning("Cannot load appliance template {} ('{}'): missing key {}".format(appliance_settings["appliance_id"], appliance_settings.get("name", "unknown"), e)) + continue + + # load GNS3 VM settings + if "gns3vm" in controller_settings: + self.gns3vm.settings = controller_settings["gns3vm"] + + self._appliance_templates_etag = controller_settings.get("appliance_templates_etag") self.load_appliance_templates() self.load_appliances() - return data.get("computes", []) + return controller_settings.get("computes", []) async def load_projects(self): """ @@ -416,18 +421,16 @@ class Controller: config_file = os.path.join(os.path.dirname(self._config_file), "gns3_gui.conf") if os.path.exists(config_file): with open(config_file) as f: - data = json.load(f) - server_settings = data.get("Servers", {}) + settings = json.load(f) + server_settings = settings.get("Servers", {}) for remote in server_settings.get("remote_servers", []): try: - await self.add_compute( - host=remote.get("host", "localhost"), - port=remote.get("port", 3080), - protocol=remote.get("protocol", "http"), - name=remote.get("url"), - user=remote.get("user"), - password=remote.get("password") - ) + await self.add_compute(host=remote.get("host", "localhost"), + port=remote.get("port", 3080), + protocol=remote.get("protocol", "http"), + name=remote.get("url"), + user=remote.get("user"), + password=remote.get("password")) except aiohttp.web.HTTPConflict: pass # if the server is broken we skip it if "vm" in server_settings: @@ -458,6 +461,70 @@ class Controller: "headless": vm_settings.get("headless", False), "vmname": vmname } + + vms = [] + for vm in settings.get("Qemu", {}).get("vms", []): + vm["node_type"] = "qemu" + vms.append(vm) + for vm in settings.get("IOU", {}).get("devices", []): + vm["node_type"] = "iou" + vms.append(vm) + for vm in settings.get("Docker", {}).get("containers", []): + vm["node_type"] = "docker" + vms.append(vm) + for vm in settings.get("Builtin", {}).get("cloud_nodes", []): + vm["node_type"] = "cloud" + vms.append(vm) + for vm in settings.get("Builtin", {}).get("ethernet_switches", []): + vm["node_type"] = "ethernet_switch" + vms.append(vm) + for vm in settings.get("Builtin", {}).get("ethernet_hubs", []): + vm["node_type"] = "ethernet_hub" + vms.append(vm) + for vm in settings.get("Dynamips", {}).get("routers", []): + vm["node_type"] = "dynamips" + vms.append(vm) + for vm in settings.get("VMware", {}).get("vms", []): + vm["node_type"] = "vmware" + vms.append(vm) + for vm in settings.get("VirtualBox", {}).get("vms", []): + vm["node_type"] = "virtualbox" + vms.append(vm) + for vm in settings.get("VPCS", {}).get("nodes", []): + vm["node_type"] = "vpcs" + vms.append(vm) + for vm in settings.get("TraceNG", {}).get("nodes", []): + vm["node_type"] = "traceng" + vms.append(vm) + + for vm in vms: + # remove deprecated properties + for prop in vm.copy(): + if prop in ["enable_remote_console", "use_ubridge", "acpi_shutdown"]: + del vm[prop] + + # remove deprecated default_symbol and hover_symbol + # and set symbol if not present + deprecated = ["default_symbol", "hover_symbol"] + if len([prop for prop in vm.keys() if prop in deprecated]) > 0: + if "default_symbol" in vm.keys(): + del vm["default_symbol"] + if "hover_symbol" in vm.keys(): + del vm["hover_symbol"] + + if "symbol" not in vm.keys(): + vm["symbol"] = ":/symbols/computer.svg" + + vm.setdefault("appliance_id", str(uuid.uuid4())) + try: + appliance = Appliance(vm["appliance_id"], vm) + appliance.__json__() # Check if loaded without error + self._appliances[appliance.id] = appliance + except KeyError as e: + # appliance data is not complete (missing name or type) + log.warning("Cannot load appliance template {} ('{}'): missing key {}".format(vm["appliance_id"], vm.get("name", "unknown"), e)) + continue + self._settings = {} @property diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index 4f40637c..63949099 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -18,8 +18,6 @@ import copy import uuid - -# Convert old GUI category to text category ID_TO_CATEGORY = { 3: "firewall", 2: "guest", @@ -30,7 +28,7 @@ ID_TO_CATEGORY = { class Appliance: - def __init__(self, appliance_id, data, builtin=False): + def __init__(self, appliance_id, settings, builtin=False): if appliance_id is None: self._id = str(uuid.uuid4()) @@ -38,18 +36,30 @@ class Appliance: self._id = str(appliance_id) else: self._id = appliance_id - self._data = data.copy() - if "appliance_id" in self._data: - del self._data["appliance_id"] + + self._settings = copy.deepcopy(settings) # Version of the gui before 2.1 use linked_base # and the server linked_clone - if "linked_base" in self._data: - linked_base = self._data.pop("linked_base") - if "linked_clone" not in self._data: - self._data["linked_clone"] = linked_base - if data["node_type"] == "iou" and "image" in data: - del self._data["image"] + if "linked_base" in self.settings: + linked_base = self._settings.pop("linked_base") + if "linked_clone" not in self._settings: + self._settings["linked_clone"] = linked_base + + # Convert old GUI category to text category + try: + self._settings["category"] = ID_TO_CATEGORY[self._settings["category"]] + except KeyError: + pass + + # The "server" setting has been replaced by "compute_id" setting in version 2.2 + if "server" in self._settings: + self._settings["compute_id"] = self._settings.pop("server") + + # Remove an old IOU setting + if settings["node_type"] == "iou" and "image" in settings: + del self._settings["image"] + self._builtin = builtin @property @@ -57,16 +67,25 @@ class Appliance: return self._id @property - def data(self): - return copy.deepcopy(self._data) + def settings(self): + return self._settings + + @settings.setter + def settings(self, settings): + + self._settings.update(settings) @property def name(self): - return self._data["name"] + return self._settings["name"] @property def compute_id(self): - return self._data.get("server") + return self._settings["compute_id"] + + @property + def node_type(self): + return self._settings["node_type"] @property def builtin(self): @@ -74,21 +93,15 @@ class Appliance: def __json__(self): """ - Appliance data (a hash) + Appliance settings. """ - try: - category = ID_TO_CATEGORY[self._data["category"]] - except KeyError: - category = self._data["category"] - - return { - "appliance_id": self._id, - "node_type": self._data["node_type"], - "name": self._data["name"], - "default_name_format": self._data.get("default_name_format", "{name}-{0}"), - "category": category, - "symbol": self._data.get("symbol", ":/symbols/computer.svg"), - "compute_id": self.compute_id, - "builtin": self._builtin, - "platform": self._data.get("platform", None) - } + settings = self._settings + settings.update({"appliance_id": self._id, + "default_name_format": settings.get("default_name_format", "{name}-{0}"), + "symbol": settings.get("symbol", ":/symbols/computer.svg"), + "builtin": self.builtin}) + + if not self.builtin: + settings["compute_id"] = self.compute_id + + return settings diff --git a/gns3server/controller/node.py b/gns3server/controller/node.py index 642d07af..95227606 100644 --- a/gns3server/controller/node.py +++ b/gns3server/controller/node.py @@ -271,9 +271,8 @@ class Node: if self._label is None: # Apply to label user style or default try: - style = qt_font_to_style( - self._project.controller.settings["GraphicsView"]["default_label_font"], - self._project.controller.settings["GraphicsView"]["default_label_color"]) + style = qt_font_to_style(self._project.controller.settings["GraphicsView"]["default_label_font"], + self._project.controller.settings["GraphicsView"]["default_label_color"]) except KeyError: style = "font-size: 10;font-familly: Verdana" diff --git a/gns3server/controller/project.py b/gns3server/controller/project.py index 457473f4..04f82a6a 100644 --- a/gns3server/controller/project.py +++ b/gns3server/controller/project.py @@ -465,7 +465,7 @@ class Project: Create a node from an appliance """ try: - template = self.controller.appliances[appliance_id].data + template = self.controller.appliances[appliance_id].settings except KeyError: msg = "Appliance {} doesn't exist".format(appliance_id) log.error(msg) @@ -473,12 +473,13 @@ class Project: template["x"] = x template["y"] = y node_type = template.pop("node_type") - compute = self.controller.get_compute(template.pop("server", compute_id)) + compute = self.controller.get_compute(template.pop("compute_id", compute_id)) name = template.pop("name") default_name_format = template.pop("default_name_format", "{name}-{0}") name = default_name_format.replace("{name}", name) node_id = str(uuid.uuid4()) - node = await self.add_node(compute, name, node_id, node_type=node_type, appliance_id=appliance_id, **template) + template.pop("builtin") # not needed to add a node + node = await self.add_node(compute, name, node_id, node_type=node_type, **template) return node @open_required diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index c78f6cb1..eda9618f 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -20,6 +20,11 @@ from gns3server.controller import Controller from gns3server.schemas.node import NODE_OBJECT_SCHEMA from gns3server.schemas.appliance import APPLIANCE_USAGE_SCHEMA +from gns3server.schemas.appliance import ( + APPLIANCE_OBJECT_SCHEMA, + APPLIANCE_UPDATE_SCHEMA, + APPLIANCE_CREATE_SCHEMA +) import logging log = logging.getLogger(__name__) @@ -42,6 +47,74 @@ class ApplianceHandler: controller.load_appliance_templates() response.json([c for c in controller.appliance_templates.values()]) + @Route.post( + r"/appliances", + description="Create a new appliance", + status_codes={ + 201: "Appliance created", + 400: "Invalid request" + }, + input=APPLIANCE_CREATE_SCHEMA, + output=APPLIANCE_OBJECT_SCHEMA) + def create(request, response): + + controller = Controller.instance() + appliance = controller.add_appliance(request.json) + response.set_status(201) + response.json(appliance) + + @Route.get( + r"/appliances/{appliance_id}", + status_codes={ + 200: "Appliance found", + 400: "Invalid request", + 404: "Appliance doesn't exist" + }, + description="Get an appliance", + output=APPLIANCE_OBJECT_SCHEMA) + def get(request, response): + + controller = Controller.instance() + appliance = controller.get_appliance(request.match_info["appliance_id"]) + response.set_status(200) + response.json(appliance) + + @Route.put( + r"/appliances/{appliance_id}", + status_codes={ + 200: "Appliance updated", + 400: "Invalid request", + 404: "Appliance doesn't exist" + }, + description="Update an appliance", + input=APPLIANCE_UPDATE_SCHEMA, + output=APPLIANCE_OBJECT_SCHEMA) + def update(request, response): + + controller = Controller.instance() + appliance = controller.get_appliance(request.match_info["appliance_id"]) + #TODO: update appliance! + #appliance.settings = request.json + response.set_status(200) + response.json(appliance) + + @Route.delete( + r"/appliances/{appliance_id}", + parameters={ + "appliance_id": "Node UUID" + }, + status_codes={ + 204: "Appliance deleted", + 400: "Invalid request", + 404: "Appliance doesn't exist" + }, + description="Delete an appliance") + def delete(request, response): + + controller = Controller.instance() + controller.delete_appliance(request.match_info["appliance_id"]) + response.set_status(204) + @Route.get( r"/appliances", description="List of appliance", @@ -50,6 +123,8 @@ class ApplianceHandler: }) def list(request, response): + #old_etag = request.headers.get('If-None-Match', '') + #print("ETAG => ", old_etag) controller = Controller.instance() response.json([c for c in controller.appliances.values()]) @@ -58,11 +133,11 @@ class ApplianceHandler: description="Create a node from an appliance", parameters={ "project_id": "Project UUID", - "appliance_id": "Appliance template UUID" + "appliance_id": "Appliance UUID" }, status_codes={ 201: "Node created", - 404: "The project or template doesn't exist" + 404: "The project or appliance doesn't exist" }, input=APPLIANCE_USAGE_SCHEMA, output=NODE_OBJECT_SCHEMA) @@ -71,7 +146,7 @@ class ApplianceHandler: controller = Controller.instance() project = controller.get_project(request.match_info["project_id"]) await project.add_node_from_appliance(request.match_info["appliance_id"], - x=request.json["x"], - y=request.json["y"], - compute_id=request.json.get("compute_id")) + x=request.json["x"], + y=request.json["y"], + compute_id=request.json.get("compute_id")) response.set_status(201) diff --git a/gns3server/handlers/api/controller/node_handler.py b/gns3server/handlers/api/controller/node_handler.py index 075eda96..11567ee3 100644 --- a/gns3server/handlers/api/controller/node_handler.py +++ b/gns3server/handlers/api/controller/node_handler.py @@ -76,7 +76,7 @@ class NodeHandler: 400: "Invalid request", 404: "Node doesn't exist" }, - description="Update a node instance", + description="Get a node", output=NODE_OBJECT_SCHEMA) def get_node(request, response): project = Controller.instance().get_project(request.match_info["project_id"]) @@ -84,7 +84,6 @@ class NodeHandler: response.set_status(200) response.json(node) - @Route.put( r"/projects/{project_id}/nodes/{node_id}", status_codes={ diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index fde89ae3..7101c7f4 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -15,6 +15,54 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import copy +from .node import NODE_TYPE_SCHEMA + + +APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A template object", + "type": "object", + "properties": { + "appliance_id": { + "description": "Appliance UUID from which the node has been created. Read only", + "type": ["null", "string"], + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "compute_id": { + "description": "Compute identifier", + "type": "string" + }, + "node_type": NODE_TYPE_SCHEMA, + "name": { + "description": "Appliance name", + "type": "string", + "minLength": 1, + }, + "default_name_format": { + "description": "Default name format", + "type": "string", + "minLength": 1, + }, + "symbol": { + "description": "Symbol of the appliance", + "type": "string", + "minLength": 1 + }, + }, + "additionalProperties": True, #TODO: validate all properties + "required": ["appliance_id", "compute_id", "node_type", "name", "default_name_format", "symbol"] +} + +APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) +# these properties are not required to create an appliance +APPLIANCE_CREATE_SCHEMA["required"].remove("appliance_id") +APPLIANCE_CREATE_SCHEMA["required"].remove("compute_id") +APPLIANCE_CREATE_SCHEMA["required"].remove("default_name_format") +APPLIANCE_CREATE_SCHEMA["required"].remove("symbol") +APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) APPLIANCE_USAGE_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", From d0bab9947eb1753e8f907d0df2b4c94310bed42f Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 11 Nov 2018 21:07:33 +0800 Subject: [PATCH 03/33] Support tigervnc in Docker VM. Ref #1438 --- gns3server/compute/docker/docker_vm.py | 68 +++++++++++++++++--------- 1 file changed, 44 insertions(+), 24 deletions(-) diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py index ad24a987..b6c9b4da 100644 --- a/gns3server/compute/docker/docker_vm.py +++ b/gns3server/compute/docker/docker_vm.py @@ -24,6 +24,7 @@ import shutil import psutil import shlex import aiohttp +import subprocess import os from gns3server.utils.asyncio.telnet_server import AsyncioTelnetServer @@ -82,7 +83,8 @@ class DockerVM(BaseNode): self._ethernet_adapters = [] self._temporary_directory = None self._telnet_servers = [] - self._x11vnc_process = None + self._vnc_process = None + self._xvfb_process = None self._console_resolution = console_resolution self._console_http_path = console_http_path self._console_http_port = console_http_port @@ -517,29 +519,46 @@ class DockerVM(BaseNode): """ self._display = self._get_free_display_port() - if shutil.which("Xvfb") is None or shutil.which("x11vnc") is None: - raise DockerError("Please install Xvfb and x11vnc before using VNC support") - self._xvfb_process = yield from asyncio.create_subprocess_exec("Xvfb", "-nolisten", "tcp", ":{}".format(self._display), "-screen", "0", self._console_resolution + "x16") - # We pass a port for TCPV6 due to a crash in X11VNC if not here: https://github.com/GNS3/gns3-server/issues/569 - self._x11vnc_process = yield from asyncio.create_subprocess_exec("x11vnc", "-forever", "-nopw", "-shared", "-geometry", self._console_resolution, "-display", "WAIT:{}".format(self._display), "-rfbport", str(self.console), "-rfbportv6", str(self.console), "-noncache", "-listen", self._manager.port_manager.console_host) + if shutil.which("Xtigervnc") is None or shutil.which("Xvfb") is None or shutil.which("x11vnc") is None: + raise DockerError("Please install tigervnc-standalone-server (recommended) or Xvfb + x11vnc before using VNC support") + + if shutil.which("Xtigervnc"): + with open(os.path.join(self.working_dir, "vnc.log"), "w") as fd: + self._vnc_process = yield from asyncio.create_subprocess_exec("Xtigervnc", + "-geometry", self._console_resolution, + "-depth", "16", + "-interface", self._manager.port_manager.console_host, + "-rfbport", str(self.console), + "-AlwaysShared", + "-SecurityTypes", "None", + ":{}".format(self._display), + stdout=fd, stderr=subprocess.STDOUT) + else: + self._xvfb_process = yield from asyncio.create_subprocess_exec("Xvfb", + "-nolisten", + "tcp", ":{}".format(self._display), + "-screen", "0", + self._console_resolution + "x16") + + # We pass a port for TCPV6 due to a crash in X11VNC if not here: https://github.com/GNS3/gns3-server/issues/569 + with open(os.path.join(self.working_dir, "vnc.log"), "w") as fd: + self._vnc_process = yield from asyncio.create_subprocess_exec("x11vnc", + "-forever", + "-nopw" + "-shared", + "-geometry", self._console_resolution, + "-display", "WAIT:{}".format(self._display), + "-rfbport", str(self.console), + "-rfbportv6", str(self.console), + "-noncache", + "-listen", self._manager.port_manager.console_host, + stdout=fd, stderr=subprocess.STDOUT) x11_socket = os.path.join("/tmp/.X11-unix/", "X{}".format(self._display)) yield from wait_for_file_creation(x11_socket) + #monitor_process(self._vnc_process, self._vnc_callback) - #monitor_process(self._xvfb_process, self._xvfb_callback) - #monitor_process(self._x11vnc_process, self._x11vnc_callback) - - def _xvfb_callback(self, returncode): - """ - Called when the process has stopped. - - :param returncode: Process returncode - """ - - if returncode != 0: - self.project.emit("log.error", {"message": "The Xvfb process has stopped, return code: {}.".format(returncode)}) - - def _x11vnc_callback(self, returncode): + def _vnc_callback(self, returncode): """ Called when the process has stopped. @@ -547,7 +566,7 @@ class DockerVM(BaseNode): """ if returncode != 0: - self.project.emit("log.error", {"message": "The x11vnc process has stopped, return code: {}.".format(returncode)}) + self.project.emit("log.error", {"message": "The vnc process has stopped, return code: {}.".format(returncode)}) @asyncio.coroutine def _start_http(self): @@ -725,12 +744,13 @@ class DockerVM(BaseNode): if state == "paused" or state == "running": yield from self.stop() if self.console_type == "vnc": - if self._x11vnc_process: + if self._vnc_process: try: - self._x11vnc_process.terminate() - yield from self._x11vnc_process.wait() + self._vnc_process.terminate() + yield from self._vnc_process.wait() except ProcessLookupError: pass + if self._xvfb_process: try: self._xvfb_process.terminate() yield from self._xvfb_process.wait() From d45d52f15c643c23cf44d0d9c402d42ce7672c90 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 11 Nov 2018 23:23:30 +0800 Subject: [PATCH 04/33] Support Xtigervnc restart. --- gns3server/compute/docker/docker_vm.py | 37 +++++++++++++++----------- tests/compute/docker/test_docker_vm.py | 5 ++-- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py index 07f30e4b..fe975fb2 100644 --- a/gns3server/compute/docker/docker_vm.py +++ b/gns3server/compute/docker/docker_vm.py @@ -83,7 +83,7 @@ class DockerVM(BaseNode): self._temporary_directory = None self._telnet_servers = [] self._xvfb_process = None - self._x11vnc_process = None + self._vnc_process = None self._console_resolution = console_resolution self._console_http_path = console_http_path self._console_http_port = console_http_port @@ -424,9 +424,10 @@ class DockerVM(BaseNode): return else: - if self._console_type == "vnc" and not self._x11vnc_process: - # start the x11vnc process in case it had previously crashed - self._x11vnc_process = await asyncio.create_subprocess_exec("x11vnc", "-forever", "-nopw", "-shared", "-geometry", self._console_resolution, "-display", "WAIT:{}".format(self._display), "-rfbport", str(self.console), "-rfbportv6", str(self.console), "-noncache", "-listen", self._manager.port_manager.console_host) + if self._console_type == "vnc" and not self._vnc_process: + # restart the vnc process in case it had previously crashed + await self._start_vnc_process(restart=True) + monitor_process(self._vnc_process, self._vnc_callback) await self._clean_servers() @@ -521,15 +522,11 @@ class DockerVM(BaseNode): raise DockerError("Could not fix permissions for {}: {}".format(volume, e)) await process.wait() - async def _start_vnc(self): + async def _start_vnc_process(self, restart=False): """ - Starts a VNC server for this container + Starts the VNC process. """ - self._display = self._get_free_display_port() - if not (shutil.which("Xtigervnc") or shutil.which("Xvfb") and shutil.which("x11vnc")): - raise DockerError("Please install tigervnc-standalone-server (recommended) or Xvfb + x11vnc before using VNC support") - if shutil.which("Xtigervnc"): with open(os.path.join(self.working_dir, "vnc.log"), "w") as fd: self._vnc_process = await asyncio.create_subprocess_exec("Xtigervnc", @@ -542,11 +539,12 @@ class DockerVM(BaseNode): ":{}".format(self._display), stdout=fd, stderr=subprocess.STDOUT) else: - self._xvfb_process = await asyncio.create_subprocess_exec("Xvfb", - "-nolisten", - "tcp", ":{}".format(self._display), - "-screen", "0", - self._console_resolution + "x16") + if restart is False: + self._xvfb_process = await asyncio.create_subprocess_exec("Xvfb", + "-nolisten", + "tcp", ":{}".format(self._display), + "-screen", "0", + self._console_resolution + "x16") # We pass a port for TCPV6 due to a crash in X11VNC if not here: https://github.com/GNS3/gns3-server/issues/569 with open(os.path.join(self.working_dir, "vnc.log"), "w") as fd: @@ -562,6 +560,15 @@ class DockerVM(BaseNode): "-listen", self._manager.port_manager.console_host, stdout=fd, stderr=subprocess.STDOUT) + async def _start_vnc(self): + """ + Starts a VNC server for this container + """ + + self._display = self._get_free_display_port() + if not (shutil.which("Xtigervnc") or shutil.which("Xvfb") and shutil.which("x11vnc")): + raise DockerError("Please install tigervnc-standalone-server (recommended) or Xvfb + x11vnc before using VNC support") + await self._start_vnc_process() x11_socket = os.path.join("/tmp/.X11-unix/", "X{}".format(self._display)) await wait_for_file_creation(x11_socket) diff --git a/tests/compute/docker/test_docker_vm.py b/tests/compute/docker/test_docker_vm.py index d1a5d8c7..ae34281a 100644 --- a/tests/compute/docker/test_docker_vm.py +++ b/tests/compute/docker/test_docker_vm.py @@ -975,12 +975,11 @@ def test_start_vnc(vm, loop): with asyncio_patch("asyncio.create_subprocess_exec") as mock_exec: loop.run_until_complete(asyncio.ensure_future(vm._start_vnc())) assert vm._display is not None - mock_exec.assert_any_call("Xvfb", "-nolisten", "tcp", ":{}".format(vm._display), "-screen", "0", "1280x1024x16") - mock_exec.assert_any_call("x11vnc", "-forever", "-nopw", "-shared", "-geometry", "1280x1024", "-display", "WAIT:{}".format(vm._display), "-rfbport", str(vm.console), "-rfbportv6", str(vm.console), "-noncache", "-listen", "127.0.0.1") + assert mock_exec.call_args[0] == ("Xtigervnc", "-geometry", vm.console_resolution, "-depth", "16", "-interface", "127.0.0.1", "-rfbport", str(vm.console), "-AlwaysShared", "-SecurityTypes", "None", ":{}".format(vm._display)) mock_wait.assert_called_with("/tmp/.X11-unix/X{}".format(vm._display)) -def test_start_vnc_xvfb_missing(vm, loop): +def test_start_vnc_missing(vm, loop): with pytest.raises(DockerError): loop.run_until_complete(asyncio.ensure_future(vm._start_vnc())) From 089fdff4f1adb873f13aa03e10d02fd5cce54ce1 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 13 Nov 2018 14:59:18 +0800 Subject: [PATCH 05/33] Working dedicated appliance management API. Ref https://github.com/GNS3/gns3-server/issues/1427 --- gns3server/controller/__init__.py | 43 ++++++++++--------- gns3server/controller/appliance.py | 15 +++++-- gns3server/controller/project.py | 4 +- .../api/controller/appliance_handler.py | 19 +++++--- gns3server/schemas/appliance.py | 9 ++-- 5 files changed, 55 insertions(+), 35 deletions(-) diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index 27c3b2cb..242f80a9 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -174,9 +174,12 @@ class Controller: """ appliance = self._appliances.get(appliance_id) + if not appliance: + raise aiohttp.web.HTTPNotFound(text="Appliance ID {} doesn't exist".format(appliance_id)) if appliance.builtin: - raise aiohttp.web.HTTPConflict(text="Appliance ID {} cannot be deleted because it is builtin".format(appliance_id)) + raise aiohttp.web.HTTPConflict(text="Appliance ID {} cannot be deleted because it is a builtin".format(appliance_id)) self._appliances.pop(appliance_id) + self.save() def load_appliances(self): @@ -184,17 +187,17 @@ class Controller: # Add builtins builtins = [] - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "cloud"), {"node_type": "cloud", "name": "Cloud", "category": 2, "symbol": ":/symbols/cloud.svg"}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "nat"), {"node_type": "nat", "name": "NAT", "category": 2, "symbol": ":/symbols/cloud.svg"}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "vpcs"), {"node_type": "vpcs", "name": "VPCS", "default_name_format": "PC-{0}", "category": 2, "symbol": ":/symbols/vpcs_guest.svg", "properties": {"base_script_file": "vpcs_base_config.txt"}}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_switch"), {"node_type": "ethernet_switch", "console_type": "telnet", "name": "Ethernet switch", "category": 1, "symbol": ":/symbols/ethernet_switch.svg"}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_hub"), {"node_type": "ethernet_hub", "name": "Ethernet hub", "category": 1, "symbol": ":/symbols/hub.svg"}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "frame_relay_switch"), {"node_type": "frame_relay_switch", "name": "Frame Relay switch", "category": 1, "symbol": ":/symbols/frame_relay_switch.svg"}, builtin=True)) - builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "atm_switch"), {"node_type": "atm_switch", "name": "ATM switch", "category": 1, "symbol": ":/symbols/atm_switch.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "cloud"), {"appliance_type": "cloud", "name": "Cloud", "category": 2, "symbol": ":/symbols/cloud.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "nat"), {"appliance_type": "nat", "name": "NAT", "category": 2, "symbol": ":/symbols/cloud.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "vpcs"), {"appliance_type": "vpcs", "name": "VPCS", "default_name_format": "PC-{0}", "category": 2, "symbol": ":/symbols/vpcs_guest.svg", "properties": {"base_script_file": "vpcs_base_config.txt"}}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_switch"), {"appliance_type": "ethernet_switch", "console_type": "telnet", "name": "Ethernet switch", "category": 1, "symbol": ":/symbols/ethernet_switch.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "ethernet_hub"), {"appliance_type": "ethernet_hub", "name": "Ethernet hub", "category": 1, "symbol": ":/symbols/hub.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "frame_relay_switch"), {"appliance_type": "frame_relay_switch", "name": "Frame Relay switch", "category": 1, "symbol": ":/symbols/frame_relay_switch.svg"}, builtin=True)) + builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "atm_switch"), {"appliance_type": "atm_switch", "name": "ATM switch", "category": 1, "symbol": ":/symbols/atm_switch.svg"}, builtin=True)) #FIXME: disable TraceNG #if sys.platform.startswith("win"): - # builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "traceng"), {"node_type": "traceng", "name": "TraceNG", "default_name_format": "TraceNG-{0}", "category": 2, "symbol": ":/symbols/traceng.svg", "properties": {}}, builtin=True)) + # builtins.append(Appliance(uuid.uuid3(uuid.NAMESPACE_DNS, "traceng"), {"appliance_type": "traceng", "name": "TraceNG", "default_name_format": "TraceNG-{0}", "category": 2, "symbol": ":/symbols/traceng.svg", "properties": {}}, builtin=True)) for b in builtins: self._appliances[b.id] = b @@ -464,37 +467,37 @@ class Controller: vms = [] for vm in settings.get("Qemu", {}).get("vms", []): - vm["node_type"] = "qemu" + vm["appliance_type"] = "qemu" vms.append(vm) for vm in settings.get("IOU", {}).get("devices", []): - vm["node_type"] = "iou" + vm["appliance_type"] = "iou" vms.append(vm) for vm in settings.get("Docker", {}).get("containers", []): - vm["node_type"] = "docker" + vm["appliance_type"] = "docker" vms.append(vm) for vm in settings.get("Builtin", {}).get("cloud_nodes", []): - vm["node_type"] = "cloud" + vm["appliance_type"] = "cloud" vms.append(vm) for vm in settings.get("Builtin", {}).get("ethernet_switches", []): - vm["node_type"] = "ethernet_switch" + vm["appliance_type"] = "ethernet_switch" vms.append(vm) for vm in settings.get("Builtin", {}).get("ethernet_hubs", []): - vm["node_type"] = "ethernet_hub" + vm["appliance_type"] = "ethernet_hub" vms.append(vm) for vm in settings.get("Dynamips", {}).get("routers", []): - vm["node_type"] = "dynamips" + vm["appliance_type"] = "dynamips" vms.append(vm) for vm in settings.get("VMware", {}).get("vms", []): - vm["node_type"] = "vmware" + vm["appliance_type"] = "vmware" vms.append(vm) for vm in settings.get("VirtualBox", {}).get("vms", []): - vm["node_type"] = "virtualbox" + vm["appliance_type"] = "virtualbox" vms.append(vm) for vm in settings.get("VPCS", {}).get("nodes", []): - vm["node_type"] = "vpcs" + vm["appliance_type"] = "vpcs" vms.append(vm) for vm in settings.get("TraceNG", {}).get("nodes", []): - vm["node_type"] = "traceng" + vm["appliance_type"] = "traceng" vms.append(vm) for vm in vms: diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index 63949099..7428d859 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -56,8 +56,12 @@ class Appliance: if "server" in self._settings: self._settings["compute_id"] = self._settings.pop("server") + # The "node_type" setting has been replaced by "appliance_type" setting in version 2.2 + if "node_type" in self._settings: + self._settings["appliance_type"] = self._settings.pop("node_type") + # Remove an old IOU setting - if settings["node_type"] == "iou" and "image" in settings: + if self._settings["appliance_type"] == "iou" and "image" in self._settings: del self._settings["image"] self._builtin = builtin @@ -72,7 +76,6 @@ class Appliance: @settings.setter def settings(self, settings): - self._settings.update(settings) @property @@ -84,17 +87,21 @@ class Appliance: return self._settings["compute_id"] @property - def node_type(self): - return self._settings["node_type"] + def appliance_type(self): + return self._settings["appliance_type"] @property def builtin(self): return self._builtin + def update(self, **kwargs): + self._settings.update(kwargs) + def __json__(self): """ Appliance settings. """ + settings = self._settings settings.update({"appliance_id": self._id, "default_name_format": settings.get("default_name_format", "{name}-{0}"), diff --git a/gns3server/controller/project.py b/gns3server/controller/project.py index 04f82a6a..f7561af1 100644 --- a/gns3server/controller/project.py +++ b/gns3server/controller/project.py @@ -465,14 +465,14 @@ class Project: Create a node from an appliance """ try: - template = self.controller.appliances[appliance_id].settings + template = copy.deepcopy(self.controller.appliances[appliance_id].settings) except KeyError: msg = "Appliance {} doesn't exist".format(appliance_id) log.error(msg) raise aiohttp.web.HTTPNotFound(text=msg) template["x"] = x template["y"] = y - node_type = template.pop("node_type") + node_type = template.pop("appliance_type") compute = self.controller.get_compute(template.pop("compute_id", compute_id)) name = template.pop("name") default_name_format = template.pop("default_name_format", "{name}-{0}") diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index eda9618f..06e6f56c 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -20,6 +20,9 @@ from gns3server.controller import Controller from gns3server.schemas.node import NODE_OBJECT_SCHEMA from gns3server.schemas.appliance import APPLIANCE_USAGE_SCHEMA +import hashlib +import json + from gns3server.schemas.appliance import ( APPLIANCE_OBJECT_SCHEMA, APPLIANCE_UPDATE_SCHEMA, @@ -74,10 +77,17 @@ class ApplianceHandler: output=APPLIANCE_OBJECT_SCHEMA) def get(request, response): + request_etag = request.headers.get("If-None-Match", "") controller = Controller.instance() appliance = controller.get_appliance(request.match_info["appliance_id"]) - response.set_status(200) - response.json(appliance) + data = json.dumps(appliance.__json__()) + appliance_etag = '"' + hashlib.md5(data.encode()).hexdigest() + '"' + if appliance_etag == request_etag: + response.set_status(304) + else: + response.headers["ETag"] = appliance_etag + response.set_status(200) + response.json(appliance) @Route.put( r"/appliances/{appliance_id}", @@ -93,8 +103,7 @@ class ApplianceHandler: controller = Controller.instance() appliance = controller.get_appliance(request.match_info["appliance_id"]) - #TODO: update appliance! - #appliance.settings = request.json + appliance.update(**request.json) response.set_status(200) response.json(appliance) @@ -123,8 +132,6 @@ class ApplianceHandler: }) def list(request, response): - #old_etag = request.headers.get('If-None-Match', '') - #print("ETAG => ", old_etag) controller = Controller.instance() response.json([c for c in controller.appliances.values()]) diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 7101c7f4..2cbb9ea8 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -18,6 +18,7 @@ import copy from .node import NODE_TYPE_SCHEMA +APPLIANCE_TYPE_SCHEMA = NODE_TYPE_SCHEMA APPLIANCE_OBJECT_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", @@ -35,7 +36,7 @@ APPLIANCE_OBJECT_SCHEMA = { "description": "Compute identifier", "type": "string" }, - "node_type": NODE_TYPE_SCHEMA, + "appliance_type": APPLIANCE_TYPE_SCHEMA, "name": { "description": "Appliance name", "type": "string", @@ -53,7 +54,7 @@ APPLIANCE_OBJECT_SCHEMA = { }, }, "additionalProperties": True, #TODO: validate all properties - "required": ["appliance_id", "compute_id", "node_type", "name", "default_name_format", "symbol"] + "required": ["appliance_id", "compute_id", "appliance_type", "name", "default_name_format", "symbol"] } APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) @@ -62,7 +63,9 @@ APPLIANCE_CREATE_SCHEMA["required"].remove("appliance_id") APPLIANCE_CREATE_SCHEMA["required"].remove("compute_id") APPLIANCE_CREATE_SCHEMA["required"].remove("default_name_format") APPLIANCE_CREATE_SCHEMA["required"].remove("symbol") -APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) +APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_CREATE_SCHEMA) +#APPLIANCE_UPDATE_SCHEMA["additionalProperties"] = False +del APPLIANCE_UPDATE_SCHEMA["required"] APPLIANCE_USAGE_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", From cebb56387a001c33d7e44e8c758067910db3d309 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 13 Nov 2018 15:40:18 +0800 Subject: [PATCH 06/33] Fix tests. --- gns3server/controller/appliance.py | 2 + tests/controller/test_appliance.py | 10 ++--- tests/controller/test_controller.py | 62 ++--------------------------- tests/controller/test_project.py | 3 +- 4 files changed, 12 insertions(+), 65 deletions(-) diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index 7428d859..5616bf77 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -95,6 +95,8 @@ class Appliance: return self._builtin def update(self, **kwargs): + + #TODO: do not update appliance_id, builtin or appliance_type self._settings.update(kwargs) def __json__(self): diff --git a/tests/controller/test_appliance.py b/tests/controller/test_appliance.py index 810ea5e3..a30bd370 100644 --- a/tests/controller/test_appliance.py +++ b/tests/controller/test_appliance.py @@ -30,7 +30,7 @@ def test_appliance_json(): }) assert a.__json__() == { "appliance_id": a.id, - "node_type": "qemu", + "appliance_type": "qemu", "builtin": False, "name": "Test", "default_name_format": "{name}-{0}", @@ -53,7 +53,7 @@ def test_appliance_json_with_not_known_category(): }) assert a.__json__() == { "appliance_id": a.id, - "node_type": "qemu", + "appliance_type": "qemu", "builtin": False, "name": "Test", "default_name_format": "{name}-{0}", @@ -76,7 +76,7 @@ def test_appliance_json_with_platform(): }) assert a.__json__() == { "appliance_id": a.id, - "node_type": "dynamips", + "appliance_type": "dynamips", "builtin": False, "name": "Test", "default_name_format": "{name}-{0}", @@ -101,5 +101,5 @@ def test_appliance_fix_linked_base(): "server": "local", "linked_base": True }) - assert a.data["linked_clone"] - assert "linked_base" not in a.data + assert a.settings["linked_clone"] + assert "linked_base" not in a.settings diff --git a/tests/controller/test_controller.py b/tests/controller/test_controller.py index 7bec5ac5..18e87fd6 100644 --- a/tests/controller/test_controller.py +++ b/tests/controller/test_controller.py @@ -506,25 +506,15 @@ def test_appliance_templates(controller, async_run, tmpdir): def test_load_appliances(controller): - controller._settings = { - "Qemu": { - "vms": [ - { - "name": "Test", - "node_type": "qemu", - "category": "router" - } - ] - } - } + controller._settings = {} controller.load_appliances() - assert "Test" in [appliance.name for appliance in controller.appliances.values()] + assert "Cloud" in [appliance.name for appliance in controller.appliances.values()] assert "VPCS" in [appliance.name for appliance in controller.appliances.values()] for appliance in controller.appliances.values(): if appliance.name == "VPCS": - assert appliance._data["properties"] == {"base_script_file": "vpcs_base_config.txt"} + assert appliance._settings["properties"] == {"base_script_file": "vpcs_base_config.txt"} # UUID should not change when you run again the function for appliance in controller.appliances.values(): @@ -540,52 +530,6 @@ def test_load_appliances(controller): assert cloud_uuid == appliance.id -def test_load_appliances_deprecated_features_default_symbol(controller): - controller._settings = { - "Qemu": { - "vms": [ - { - "name": "Test", - "node_type": "qemu", - "category": "router", - "default_symbol": ":/symbols/iosv_virl.normal.svg", - "hover_symbol": ":/symbols/iosv_virl.selected.svg", - } - ] - } - } - controller.load_appliances() - appliances = dict([(a.name, a) for a in controller.appliances.values()]) - - assert appliances["Test"].__json__()["symbol"] == ":/symbols/computer.svg" - assert "default_symbol" not in appliances["Test"].data.keys() - assert "hover_symbol" not in appliances["Test"].data.keys() - - -def test_load_appliances_deprecated_features_default_symbol_with_symbol(controller): - controller._settings = { - "Qemu": { - "vms": [ - { - "name": "Test", - "node_type": "qemu", - "category": "router", - "default_symbol": ":/symbols/iosv_virl.normal.svg", - "hover_symbol": ":/symbols/iosv_virl.selected.svg", - "symbol": ":/symbols/my-symbol.svg" - - } - ] - } - } - controller.load_appliances() - appliances = dict([(a.name, a) for a in controller.appliances.values()]) - - assert appliances["Test"].__json__()["symbol"] == ":/symbols/my-symbol.svg" - assert "default_symbol" not in appliances["Test"].data.keys() - assert "hover_symbol" not in appliances["Test"].data.keys() - - def test_autoidlepc(controller, async_run): controller._computes["local"] = AsyncioMagicMock() node_mock = AsyncioMagicMock() diff --git a/tests/controller/test_project.py b/tests/controller/test_project.py index d73008e7..78920ce0 100644 --- a/tests/controller/test_project.py +++ b/tests/controller/test_project.py @@ -216,7 +216,8 @@ def test_add_node_from_appliance(async_run, controller): "server": "local", "name": "Test", "default_name_format": "{name}-{0}", - "node_type": "vpcs", + "appliance_type": "vpcs", + "builtin": False, "properties": { "a": 1 } From 98f04365b7ec2b2bbb044cb3d403f5bbc2ad5c63 Mon Sep 17 00:00:00 2001 From: grossmj Date: Wed, 14 Nov 2018 16:24:30 +0800 Subject: [PATCH 07/33] Remove generic controller settings API endpoint. --- conf/gns3_server.conf | 2 - gns3server/compute/iou/iou_vm.py | 22 ++++++- gns3server/controller/__init__.py | 58 +++++++------------ gns3server/controller/appliance.py | 5 +- gns3server/controller/node.py | 19 +++--- .../api/controller/appliance_handler.py | 5 ++ .../api/controller/gns3_vm_handler.py | 2 - .../handlers/api/controller/server_handler.py | 53 ++++++++--------- gns3server/schemas/appliance.py | 7 ++- gns3server/schemas/iou.py | 4 ++ .../schemas/iou_license.py | 34 +++++------ gns3server/schemas/label.py | 6 +- tests/conftest.py | 2 +- tests/controller/test_controller.py | 11 +--- tests/controller/test_node.py | 8 +-- 15 files changed, 120 insertions(+), 118 deletions(-) rename tests/handlers/api/controller/test_settings.py => gns3server/schemas/iou_license.py (54%) diff --git a/conf/gns3_server.conf b/conf/gns3_server.conf index bcf188a1..ffab4ec8 100644 --- a/conf/gns3_server.conf +++ b/conf/gns3_server.conf @@ -61,8 +61,6 @@ sparse_memory_support = True ghost_ios_support = True [IOU] -; iouyap executable path, default: search in PATH -;iouyap_path = iouyap ; Path of your .iourc file. If not provided, the file is searched in $HOME/.iourc iourc_path = /home/gns3/.iourc ; Validate if the iourc license file is correct. If you turn this off and your licence is invalid IOU will not start and no errors will be shown. diff --git a/gns3server/compute/iou/iou_vm.py b/gns3server/compute/iou/iou_vm.py index 7f22d055..170d3560 100644 --- a/gns3server/compute/iou/iou_vm.py +++ b/gns3server/compute/iou/iou_vm.py @@ -76,6 +76,7 @@ class IOUVM(BaseNode): self._started = False self._nvram_watcher = None self._path = self.manager.get_abs_image_path(path) + self._license_check = True # IOU settings self._ethernet_adapters = [] @@ -358,6 +359,16 @@ class IOUVM(BaseNode): except OSError as e: raise IOUError("Could not write the iourc file {}: {}".format(path, e)) + @property + def license_check(self): + + return self._license_check + + @license_check.setter + def license_check(self, value): + + self._license_check = value + async def _library_check(self): """ Checks for missing shared library dependencies in the IOU image. @@ -379,11 +390,18 @@ class IOUVM(BaseNode): """ Checks for a valid IOU key in the iourc file (paranoid mode). """ + + # license check is sent by the controller + if self.license_check is False: + return + try: - license_check = self._config().getboolean("license_check", True) + # we allow license check to be disabled server wide + server_wide_license_check = self._config().getboolean("license_check", True) except ValueError: raise IOUError("Invalid licence check setting") - if license_check is False: + + if server_wide_license_check is False: return config = configparser.ConfigParser() diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index 242f80a9..da316b52 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -54,9 +54,9 @@ class Controller: self._notification = Notification(self) self.gns3vm = GNS3VM(self) self.symbols = Symbols() - - # FIXME: store settings shared by the different GUI will be replace by dedicated API later - self._settings = None + self._iou_license_settings = {"iourc_content": "", + "license_check": True} + self._config_loaded = False self._appliances = {} self._appliance_templates = {} self._appliance_templates_etag = None @@ -150,6 +150,7 @@ class Controller: raise aiohttp.web.HTTPConflict(text="Cannot create new appliance: key '{}' is missing for appliance ID '{}'".format(e, appliance_id)) self._appliances[appliance.id] = appliance self.save() + self.notification.controller_emit("appliance.created", appliance.__json__()) return appliance def get_appliance(self, appliance_id): @@ -173,13 +174,12 @@ class Controller: :param appliance_id: appliance identifier """ - appliance = self._appliances.get(appliance_id) - if not appliance: - raise aiohttp.web.HTTPNotFound(text="Appliance ID {} doesn't exist".format(appliance_id)) + appliance = self.get_appliance(appliance_id) if appliance.builtin: raise aiohttp.web.HTTPConflict(text="Appliance ID {} cannot be deleted because it is a builtin".format(appliance_id)) self._appliances.pop(appliance_id) self.save() + self.notification.controller_emit("appliance.deleted", appliance.__json__()) def load_appliances(self): @@ -231,7 +231,7 @@ class Controller: user=server_config.get("user", ""), password=server_config.get("password", ""), force=True) - except aiohttp.web.HTTPConflict as e: + except aiohttp.web.HTTPConflict: log.fatal("Cannot access to the local server, make sure something else is not running on the TCP port {}".format(port)) sys.exit(1) for c in computes: @@ -276,14 +276,13 @@ class Controller: Save the controller configuration on disk """ - # We don't save during the loading otherwise we could lost stuff - if self._settings is None: + if self._config_loaded is False: return controller_settings = {"computes": [], - "settings": self._settings, "appliances": [], "gns3vm": self.gns3vm.__json__(), + "iou_license": self._iou_license_settings, "appliance_templates_etag": self._appliance_templates_etag, "version": __version__} @@ -321,14 +320,8 @@ class Controller: controller_settings = json.load(f) except (OSError, ValueError) as e: log.critical("Cannot load configuration file '{}': {}".format(self._config_file, e)) - self._settings = {} return [] - if "settings" in controller_settings and controller_settings["settings"] is not None: - self._settings = controller_settings["settings"] - else: - self._settings = {} - # load the appliances if "appliances" in controller_settings: for appliance_settings in controller_settings["appliances"]: @@ -345,9 +338,14 @@ class Controller: if "gns3vm" in controller_settings: self.gns3vm.settings = controller_settings["gns3vm"] + # load the IOU license settings + if "iou_license" in controller_settings: + self._iou_license_settings = controller_settings["iou_license"] + self._appliance_templates_etag = controller_settings.get("appliance_templates_etag") self.load_appliance_templates() self.load_appliances() + self._config_loaded = True return controller_settings.get("computes", []) async def load_projects(self): @@ -528,26 +526,6 @@ class Controller: log.warning("Cannot load appliance template {} ('{}'): missing key {}".format(vm["appliance_id"], vm.get("name", "unknown"), e)) continue - self._settings = {} - - @property - def settings(self): - """ - Store settings shared by the different GUI will be replace by dedicated API later. Dictionnary - """ - - return self._settings - - @settings.setter - def settings(self, val): - - self._settings = val - self._settings["modification_uuid"] = str(uuid.uuid4()) # We add a modification id to the settings to help the gui to detect changes - self.save() - self.load_appliance_templates() - self.load_appliances() - self.notification.controller_emit("settings.updated", val) - async def add_compute(self, compute_id=None, name=None, force=False, connect=True, **kwargs): """ Add a server to the dictionary of compute servers controlled by this controller @@ -783,6 +761,14 @@ class Controller: return self._appliances + @property + def iou_license(self): + """ + :returns: The dictionary of IOU license settings + """ + + return self._iou_license_settings + def projects_directory(self): server_config = Config.instance().get_section_config("Server") diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index 5616bf77..ecc304ce 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -96,8 +96,11 @@ class Appliance: def update(self, **kwargs): - #TODO: do not update appliance_id, builtin or appliance_type self._settings.update(kwargs) + from gns3server.controller import Controller + controller = Controller.instance() + controller.notification.controller_emit("appliance.updated", self.__json__()) + controller.save() def __json__(self): """ diff --git a/gns3server/controller/node.py b/gns3server/controller/node.py index 95227606..2e9047bc 100644 --- a/gns3server/controller/node.py +++ b/gns3server/controller/node.py @@ -271,16 +271,17 @@ class Node: if self._label is None: # Apply to label user style or default try: - style = qt_font_to_style(self._project.controller.settings["GraphicsView"]["default_label_font"], - self._project.controller.settings["GraphicsView"]["default_label_color"]) + style = None # FIXME: allow configuration of default label font & color on controller + #style = qt_font_to_style(self._project.controller.settings["GraphicsView"]["default_label_font"], + # self._project.controller.settings["GraphicsView"]["default_label_color"]) except KeyError: - style = "font-size: 10;font-familly: Verdana" + style = "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;" self._label = { "y": round(self._height / 2 + 10) * -1, "text": html.escape(self._name), - "style": style, - "x": None, # None: mean the client should center it + "style": style, # None: means the client will apply its default style + "x": None, # None: means the client should center it "rotation": 0 } @@ -483,11 +484,11 @@ class Node: try: # For IOU we need to send the licence everytime if self.node_type == "iou": - try: - licence = self._project.controller.settings["IOU"]["iourc_content"] - except KeyError: + license_check = self._project.controller.iou_license.get("license_check", True) + iourc_content = self._project.controller.iou_license.get("iourc_content", None) + if license_check and not iourc_content: raise aiohttp.web.HTTPConflict(text="IOU licence is not configured") - await self.post("/start", timeout=240, data={"iourc_content": licence}) + await self.post("/start", timeout=240, data={"license_check": license_check, "iourc_content": iourc_content}) else: await self.post("/start", data=data, timeout=240) except asyncio.TimeoutError: diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index 06e6f56c..4c3115f7 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -103,6 +103,11 @@ class ApplianceHandler: controller = Controller.instance() appliance = controller.get_appliance(request.match_info["appliance_id"]) + # Ignore these because we only use them when creating a appliance + request.json.pop("appliance_id", None) + request.json.pop("appliance_type", None) + request.json.pop("compute_id", None) + request.json.pop("builtin", None) appliance.update(**request.json) response.set_status(200) response.json(appliance) diff --git a/gns3server/handlers/api/controller/gns3_vm_handler.py b/gns3server/handlers/api/controller/gns3_vm_handler.py index 5371e3d0..d1c56b6a 100644 --- a/gns3server/handlers/api/controller/gns3_vm_handler.py +++ b/gns3server/handlers/api/controller/gns3_vm_handler.py @@ -15,12 +15,10 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -from aiohttp.web import HTTPConflict from gns3server.web.route import Route from gns3server.controller import Controller from gns3server.schemas.gns3vm import GNS3VM_SETTINGS_SCHEMA - import logging log = logging.getLogger(__name__) diff --git a/gns3server/handlers/api/controller/server_handler.py b/gns3server/handlers/api/controller/server_handler.py index a7422816..ae1160c4 100644 --- a/gns3server/handlers/api/controller/server_handler.py +++ b/gns3server/handlers/api/controller/server_handler.py @@ -19,6 +19,7 @@ from gns3server.web.route import Route from gns3server.config import Config from gns3server.controller import Controller from gns3server.schemas.version import VERSION_SCHEMA +from gns3server.schemas.iou_license import IOU_LICENSE_SETTINGS_SCHEMA from gns3server.version import __version__ from aiohttp.web import HTTPConflict, HTTPForbidden @@ -102,37 +103,31 @@ class ServerHandler: response.json({"version": __version__}) @Route.get( - r"/settings", - description="Retrieve gui settings from the server. Temporary will we removed in later release") - async def read_settings(request, response): - - settings = None - while True: - # The init of the server could take some times - # we ensure settings are loaded before returning them - settings = Controller.instance().settings - - if settings is not None: - break - await asyncio.sleep(0.5) - response.json(settings) - - @Route.post( - r"/settings", - description="Write gui settings on the server. Temporary will we removed in later releases", + r"/iou_license", + description="Get the IOU license settings", status_codes={ - 201: "Settings saved" + 200: "IOU license settings returned" + }, + output_schema=IOU_LICENSE_SETTINGS_SCHEMA) + def show(request, response): + + response.json(Controller.instance().iou_license) + + @Route.put( + r"/iou_license", + description="Update the IOU license settings", + input_schema=IOU_LICENSE_SETTINGS_SCHEMA, + output_schema=IOU_LICENSE_SETTINGS_SCHEMA, + status_codes={ + 201: "IOU license settings updated" }) - def write_settings(request, response): - controller = Controller.instance() - if controller.settings is None: # Server is not loaded ignore settings update to prevent buggy client sync issue - return - try: - controller.settings = request.json - #controller.save() - except (OSError, PermissionError) as e: - raise HTTPConflict(text="Can't save the settings {}".format(str(e))) - response.json(controller.settings) + async def update(request, response): + + controller = Controller().instance() + iou_license = controller.iou_license + iou_license.update(request.json) + controller.save() + response.json(iou_license) response.set_status(201) @Route.post( diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 2cbb9ea8..408e33c4 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -58,13 +58,16 @@ APPLIANCE_OBJECT_SCHEMA = { } APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) + +# create schema # these properties are not required to create an appliance APPLIANCE_CREATE_SCHEMA["required"].remove("appliance_id") APPLIANCE_CREATE_SCHEMA["required"].remove("compute_id") APPLIANCE_CREATE_SCHEMA["required"].remove("default_name_format") APPLIANCE_CREATE_SCHEMA["required"].remove("symbol") -APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_CREATE_SCHEMA) -#APPLIANCE_UPDATE_SCHEMA["additionalProperties"] = False + +# update schema +APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) del APPLIANCE_UPDATE_SCHEMA["required"] APPLIANCE_USAGE_SCHEMA = { diff --git a/gns3server/schemas/iou.py b/gns3server/schemas/iou.py index 3243c890..8bad7a9e 100644 --- a/gns3server/schemas/iou.py +++ b/gns3server/schemas/iou.py @@ -104,6 +104,10 @@ IOU_START_SCHEMA = { "iourc_content": { "description": "Content of the iourc file. Ignored if Null", "type": ["string", "null"] + }, + "license_check": { + "description": "Whether the license should be checked", + "type": "boolean" } } } diff --git a/tests/handlers/api/controller/test_settings.py b/gns3server/schemas/iou_license.py similarity index 54% rename from tests/handlers/api/controller/test_settings.py rename to gns3server/schemas/iou_license.py index a87df472..4b2262cf 100644 --- a/tests/handlers/api/controller/test_settings.py +++ b/gns3server/schemas/iou_license.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # -# Copyright (C) 2015 GNS3 Technologies Inc. +# Copyright (C) 2018 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 @@ -15,19 +15,19 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -""" -This test suite check /version endpoint -It's also used for unittest the HTTP implementation. -""" - -from gns3server.config import Config - - -def test_settings(http_controller): - query = {"test": True} - response = http_controller.post('/settings', query, example=True) - assert response.status == 201 - response = http_controller.get('/settings', example=True) - assert response.status == 200 - assert response.json["test"] is True - assert response.json["modification_uuid"] is not None +IOU_LICENSE_SETTINGS_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "IOU license", + "type": "object", + "properties": { + "iourc_content": { + "type": "string", + "description": "Content of iourc file" + }, + "license_check": { + "type": "boolean", + "description": "Whether the license must be checked or not", + }, + }, + "additionalProperties": False +} diff --git a/gns3server/schemas/label.py b/gns3server/schemas/label.py index eae97417..eb5c2de1 100644 --- a/gns3server/schemas/label.py +++ b/gns3server/schemas/label.py @@ -20,11 +20,11 @@ LABEL_OBJECT_SCHEMA = { "properties": { "text": {"type": "string"}, "style": { - "description": "SVG style attribute", - "type": "string" + "description": "SVG style attribute. Apply default style if null", + "type": ["string", "null"] }, "x": { - "description": "Relative X position of the label. If null center it", + "description": "Relative X position of the label. Center it if null", "type": ["integer", "null"] }, "y": { diff --git a/tests/conftest.py b/tests/conftest.py index bb24dca5..2c4260c5 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -201,7 +201,7 @@ def controller(tmpdir, controller_config_path): Controller._instance = None controller = Controller.instance() controller._config_file = controller_config_path - controller._settings = {} + controller._config_loaded = True return controller diff --git a/tests/controller/test_controller.py b/tests/controller/test_controller.py index 18e87fd6..0d99a534 100644 --- a/tests/controller/test_controller.py +++ b/tests/controller/test_controller.py @@ -35,7 +35,7 @@ def test_save(controller, controller_config_path): data = json.load(f) assert data["computes"] == [] assert data["version"] == __version__ - assert data["settings"] == {} + assert data["iou_license"] == controller.iou_license assert data["gns3vm"] == controller.gns3vm.__json__() @@ -53,12 +53,10 @@ def test_load_controller_settings(controller, controller_config_path, async_run) "compute_id": "test1" } ] - data["settings"] = {"IOU": {"test": True}} data["gns3vm"] = {"vmname": "Test VM"} with open(controller_config_path, "w+") as f: json.dump(data, f) assert len(async_run(controller._load_controller_settings())) == 1 - assert controller.settings["IOU"] assert controller.gns3vm.settings["vmname"] == "Test VM" @@ -199,13 +197,6 @@ def test_import_remote_gns3vm_1_x(controller, controller_config_path, async_run) assert controller.gns3vm.settings["vmname"] == "http://127.0.0.1:3081" -def test_settings(controller): - controller._notification = MagicMock() - controller.settings = {"a": 1} - controller._notification.controller_emit.assert_called_with("settings.updated", controller.settings) - assert controller.settings["modification_uuid"] is not None - - def test_load_projects(controller, projects_dir, async_run): controller.save() diff --git a/tests/controller/test_node.py b/tests/controller/test_node.py index a80bc9a1..715cdbbf 100644 --- a/tests/controller/test_node.py +++ b/tests/controller/test_node.py @@ -269,7 +269,7 @@ def test_symbol(node, symbols_dir): assert node.height == 71 assert node.label["x"] is None assert node.label["y"] == -40 - assert node.label["style"] == "font-size: 10;font-familly: Verdana" + assert node.label["style"] == None#"font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;" shutil.copy(os.path.join("gns3server", "symbols", "cloud.svg"), os.path.join(symbols_dir, "cloud2.svg")) node.symbol = "cloud2.svg" @@ -298,7 +298,7 @@ def test_label_with_default_label_font(node): node._label = None node.symbol = ":/symbols/dslam.svg" - assert node.label["style"] == "font-family: TypeWriter;font-size: 10;font-weight: bold;fill: #ff0000;fill-opacity: 1.0;" + assert node.label["style"] == None #"font-family: TypeWriter;font-size: 10;font-weight: bold;fill: #ff0000;fill-opacity: 1.0;" def test_update(node, compute, project, async_run, controller): @@ -405,9 +405,9 @@ def test_start_iou(compute, project, async_run, controller): with pytest.raises(aiohttp.web.HTTPConflict): async_run(node.start()) - controller.settings["IOU"] = {"iourc_content": "aa"} + controller._iou_license_settings = {"license_check": True, "iourc_content": "aa"} async_run(node.start()) - compute.post.assert_called_with("/projects/{}/iou/nodes/{}/start".format(node.project.id, node.id), timeout=240, data={"iourc_content": "aa"}) + compute.post.assert_called_with("/projects/{}/iou/nodes/{}/start".format(node.project.id, node.id), timeout=240, data={"license_check": True, "iourc_content": "aa"}) def test_stop(node, compute, project, async_run): From bb3edfe779d7f2a37e919d5a4a6d5272c9cd13a6 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Thu, 15 Nov 2018 00:57:47 +0100 Subject: [PATCH 08/33] Update pytest from 3.8.1 to 4.0.0 --- dev-requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-requirements.txt b/dev-requirements.txt index 67200009..c6d332ac 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -1,6 +1,6 @@ -rrequirements.txt sphinx==1.7.1 -pytest==3.8.1 +pytest==4.0.0 pep8==1.7.1 pytest-timeout==1.2.1 From 9aafa4e62f7c81bab80c8756c148cc2feffac0b1 Mon Sep 17 00:00:00 2001 From: grossmj Date: Thu, 15 Nov 2018 17:28:17 +0700 Subject: [PATCH 09/33] Schema validation for appliance API. Ref #1427. --- gns3server/schemas/appliance.py | 836 +++++++++++++++++++++++++++++- gns3server/schemas/dynamips_vm.py | 39 ++ 2 files changed, 848 insertions(+), 27 deletions(-) diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 408e33c4..e52c1242 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -16,45 +16,827 @@ # along with this program. If not, see . import copy -from .node import NODE_TYPE_SCHEMA +from .dynamips_vm import DYNAMIPS_ADAPTERS, DYNAMIPS_WICS +from .qemu import QEMU_PLATFORMS +from .port import PORT_OBJECT_SCHEMA +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA -APPLIANCE_TYPE_SCHEMA = NODE_TYPE_SCHEMA + +BASE_APPLIANCE_PROPERTIES = { + "appliance_id": { + "description": "Appliance UUID from which the node has been created. Read only", + "type": ["null", "string"], + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "compute_id": { + "description": "Compute identifier", + "type": "string" + }, + "category": { + "description": "Appliance category", + "anyOf": [ + {"type": "integer"}, # old category support + {"enum": ["router", "switch", "guest", "firewall"]} + ] + }, + "name": { + "description": "Appliance name", + "type": "string", + "minLength": 1, + }, + "default_name_format": { + "description": "Default name format", + "type": "string", + "minLength": 1, + }, + "symbol": { + "description": "Symbol of the appliance", + "type": "string", + "minLength": 1 + }, + "builtin": { + "description": "Appliance is builtin", + "type": "boolean" + }, +} + +#TODO: improve schema for Dynamips (match platform specific options, e.g. NPE allowd only for c7200) +DYNAMIPS_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["dynamips"] + }, + "image": { + "description": "Path to the IOS image", + "type": "string", + "minLength": 1 + }, + "chassis": { + "description": "Chassis type", + "enum": ["1720","1721", "1750", "1751", "1760", "2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", + "2621XM", "2651XM", "3620", "3640", "3660", ""] + }, + "platform": { + "description": "Platform type", + "enum": ["c1700", "c2600", "c2691", "c3725", "c3745", "c3600", "c7200"] + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer" + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer" + }, + "mmap": { + "description": "MMAP feature", + "type": "boolean" + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean" + }, + "exec_area": { + "description": "Exec area value", + "type": "integer", + }, + "disk0": { + "description": "Disk0 size in MB", + "type": "integer" + }, + "disk1": { + "description": "Disk1 size in MB", + "type": "integer" + }, + "mac_addr": { + "description": "Base MAC address", + "type": "string", + "anyOf": [ + {"pattern": "^([0-9a-fA-F]{4}\\.){2}[0-9a-fA-F]{4}$"}, + {"pattern": "^$"} + ] + }, + "system_id": { + "description": "System ID", + "type": "string", + "minLength": 1, + }, + "startup_config": { + "description": "IOS startup configuration file", + "type": "string" + }, + "private_config": { + "description": "IOS private configuration file", + "type": "string" + }, + "idlepc": { + "description": "Idle-PC value", + "type": "string", + "pattern": "^(0x[0-9a-fA-F]+)?$" + }, + "idlemax": { + "description": "Idlemax value", + "type": "integer", + }, + "idlesleep": { + "description": "Idlesleep value", + "type": "integer", + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + "npe": { + "description": "NPE model", + "enum": ["npe-100", + "npe-150", + "npe-175", + "npe-200", + "npe-225", + "npe-300", + "npe-400", + "npe-g2"] + }, + "midplane": { + "description": "Midplane model", + "enum": ["std", "vxr"] + }, + "auto_delete_disks": { + "description": "Automatically delete nvram and disk files", + "type": "boolean" + }, + "wic0": DYNAMIPS_WICS, + "wic1": DYNAMIPS_WICS, + "wic2": DYNAMIPS_WICS, + "slot0": DYNAMIPS_ADAPTERS, + "slot1": DYNAMIPS_ADAPTERS, + "slot2": DYNAMIPS_ADAPTERS, + "slot3": DYNAMIPS_ADAPTERS, + "slot4": DYNAMIPS_ADAPTERS, + "slot5": DYNAMIPS_ADAPTERS, + "slot6": DYNAMIPS_ADAPTERS, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + } +} + +DYNAMIPS_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +IOU_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["iou"] + }, + "path": { + "description": "Path of IOU executable", + "type": "string", + "minLength": 1 + }, + "ethernet_adapters": { + "description": "Number of ethernet adapters", + "type": "integer", + }, + "serial_adapters": { + "description": "Number of serial adapters", + "type": "integer" + }, + "ram": { + "description": "RAM in MB", + "type": "integer" + }, + "nvram": { + "description": "NVRAM in KB", + "type": "integer" + }, + "use_default_iou_values": { + "description": "Use default IOU values", + "type": "boolean" + }, + "startup_config": { + "description": "Startup-config of IOU", + "type": "string" + }, + "private_config": { + "description": "Private-config of IOU", + "type": "string" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, +} + +IOU_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +DOCKER_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["docker"] + }, + "image": { + "description": "Docker image name", + "type": "string", + "minLength": 1 + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 99 + }, + "start_command": { + "description": "Docker CMD entry", + "type": "string", + "minLength": 1 + }, + "environment": { + "description": "Docker environment variables", + "type": "string", + "minLength": 1 + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "http", "https", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, + "console_http_port": { + "description": "Internal port in the container for the HTTP server", + "type": "integer", + "minimum": 1, + "maximum": 65535 + }, + "console_http_path": { + "description": "Path of the web interface", + "type": "string", + "minLength": 1 + }, + "console_resolution": { + "description": "Console resolution for VNC", + "type": "string", + "pattern": "^[0-9]+x[0-9]+$" + }, + "extra_hosts": { + "description": "Docker extra hosts (added to /etc/hosts)", + "type": "string", + "minLength": 1 + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +DOCKER_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +QEMU_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["qemu"] + }, + "usage": { + "description": "How to use the Qemu VM", + "type": "string", + "minLength": 1 + }, + "qemu_path": { + "description": "Path to QEMU", + "type": ["string", "null"], + "minLength": 1, + }, + "platform": { + "description": "Platform to emulate", + "enum": QEMU_PLATFORMS + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer" + }, + "cpus": { + "description": "Number of vCPUs", + "type": "integer", + "minimum": 1, + "maximum": 255 + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 275 + }, + "adapter_type": { + "description": "QEMU adapter type", + "type": "string", + "minLength": 1 + }, + "mac_address": { + "description": "QEMU MAC address", + "type": "string", + "minLength": 1, + "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$" + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "minLength": 1 + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "minLength": 1 + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "spice", "spice+agent", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, + "boot_priority": { + "description": "QEMU boot priority", + "enum": ["c", "d", "n", "cn", "cd", "dn", "dc", "nc", "nd"] + }, + "hda_disk_image": { + "description": "QEMU hda disk image path", + "type": "string", + "minLength": 1 + }, + "hda_disk_interface": { + "description": "QEMU hda interface", + "type": "string", + "minLength": 1 + }, + "hdb_disk_image": { + "description": "QEMU hdb disk image path", + "type": "string", + "minLength": 1 + }, + "hdb_disk_interface": { + "description": "QEMU hdb interface", + "type": "string", + "minLength": 1 + }, + "hdc_disk_image": { + "description": "QEMU hdc disk image path", + "type": "string", + "minLength": 1 + }, + "hdc_disk_interface": { + "description": "QEMU hdc interface", + "type": "string", + "minLength": 1 + }, + "hdd_disk_image": { + "description": "QEMU hdd disk image path", + "type": "string", + "minLength": 1 + }, + "hdd_disk_interface": { + "description": "QEMU hdd interface", + "type": "string", + "minLength": 1 + }, + "cdrom_image": { + "description": "QEMU cdrom image path", + "type": "string", + "minLength": 1 + }, + "initrd": { + "description": "QEMU initrd path", + "type": "string", + "minLength": 1 + }, + "kernel_image": { + "description": "QEMU kernel image path", + "type": "string", + "minLength": 1 + }, + "bios_image": { + "description": "QEMU bios image path", + "type": "string", + "minLength": 1 + }, + "kernel_command_line": { + "description": "QEMU kernel command line", + "type": "string", + "minLength": 1 + }, + "legacy_networking": { + "description": "Use QEMU legagy networking commands (-net syntax)", + "type": "boolean" + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + }, + "cpu_throttling": { + "description": "Percentage of CPU allowed for QEMU", + "minimum": 0, + "maximum": 800, + "type": "integer" + }, + "process_priority": { + "description": "Process priority for QEMU", + "enum": ["realtime", "very high", "high", "normal", "low", "very low"] + }, + "options": { + "description": "Additional QEMU options", + "type": "string", + "minLength": 1 + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +QEMU_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +VMWARE_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["vmware"] + }, + "vmx_path": { + "description": "Path to the vmx file", + "type": "string", + "minLength": 1, + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean" + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "minLength": 1 + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "minLength": 1 + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer" + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 10, # maximum adapters support by VMware VMs + }, + "adapter_type": { + "description": "VMware adapter type", + "type": "string", + "minLength": 1, + }, + "use_any_adapter": { + "description": "Allow GNS3 to use any VMware adapter", + "type": "boolean", + }, + "headless": { + "description": "Headless mode", + "type": "boolean" + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +VMWARE_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +VIRTUALBOX_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["virtualbox"] + }, + "vmname": { + "description": "VirtualBox VM name (in VirtualBox itself)", + "type": "string", + "minLength": 1, + }, + "ram": { + "description": "Amount of RAM", + "minimum": 0, + "maximum": 65535, + "type": "integer" + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean" + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 36, # maximum given by the ICH9 chipset in VirtualBox + }, + "use_any_adapter": { + "description": "Allow GNS3 to use any VirtualBox adapter", + "type": "boolean", + }, + "adapter_type": { + "description": "VirtualBox adapter type", + "type": "string", + "minLength": 1, + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "minLength": 1 + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "minLength": 1 + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer" + }, + "headless": { + "description": "Headless mode", + "type": "boolean" + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +VIRTUALBOX_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +TRACENG_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["traceng"] + }, + "ip_address": { + "description": "Source IP address for tracing", + "type": ["string"], + "minLength": 1 + }, + "default_destination": { + "description": "Default destination IP address or hostname for tracing", + "type": ["string"], + "minLength": 1 + }, + "console_type": { + "description": "Console type", + "enum": ["none"] + }, +} + +TRACENG_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +VPCS_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["vpcs"] + }, + "base_script_file": { + "description": "Script file", + "type": "string", + "minLength": 1, + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, +} + +VPCS_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["ethernet_switch"] + }, + "ports_mapping": { + "type": "array", + "items": [ + {"type": "object", + "oneOf": [ + { + "description": "Ethernet port", + "properties": { + "name": { + "description": "Port name", + "type": "string", + "minLength": 1 + }, + "port_number": { + "description": "Port number", + "type": "integer", + "minimum": 0 + }, + "type": { + "description": "Port type", + "enum": ["access", "dot1q", "qinq"], + }, + "vlan": {"description": "VLAN number", + "type": "integer", + "minimum": 1 + }, + "ethertype": { + "description": "QinQ Ethertype", + "enum": ["", "0x8100", "0x88A8", "0x9100", "0x9200"], + }, + }, + "required": ["name", "port_number", "type"], + "additionalProperties": False + }, + ]}, + ] + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"] + }, +} + +ETHERNET_SWITCH_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +ETHERNET_HUB_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["ethernet_hub"] + }, + "ports_mapping": { + "type": "array", + "items": [ + {"type": "object", + "oneOf": [ + { + "description": "Ethernet port", + "properties": { + "name": { + "description": "Port name", + "type": "string", + "minLength": 1 + }, + "port_number": { + "description": "Port number", + "type": "integer", + "minimum": 0 + }, + }, + "required": ["name", "port_number"], + "additionalProperties": False + }, + ]}, + ] + } +} + +ETHERNET_HUB_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) + +CLOUD_APPLIANCE_PROPERTIES = { + "appliance_type": { + "enum": ["cloud"] + }, + "ports_mapping": { + "type": "array", + "items": [ + PORT_OBJECT_SCHEMA + ] + }, + "remote_console_host": { + "description": "Remote console host or IP", + "type": ["string"], + "minLength": 1 + }, + "remote_console_port": { + "description": "Console TCP port", + "minimum": 1, + "maximum": 65535, + "type": "integer" + }, + "remote_console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "spice", "http", "https", "none"] + }, + "remote_console_http_path": { + "description": "Path of the remote web interface", + "type": "string", + "minLength": 1 + }, +} + +CLOUD_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) APPLIANCE_OBJECT_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", "description": "A template object", "type": "object", - "properties": { - "appliance_id": { - "description": "Appliance UUID from which the node has been created. Read only", - "type": ["null", "string"], - "minLength": 36, - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + "definitions": { + "Dynamips": { + "description": "Dynamips appliance", + "properties": DYNAMIPS_APPLIANCE_PROPERTIES, + #"additionalProperties": False, + "required": ["platform", "image", "ram"] }, - "compute_id": { - "description": "Compute identifier", - "type": "string" + "IOU": { + "description": "IOU appliance", + "properties": IOU_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["path"] + }, + "Docker": { + "description": "Docker appliance", + "properties": DOCKER_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["image"] + }, + "Qemu": { + "description": "Qemu appliance", + "properties": QEMU_APPLIANCE_PROPERTIES, + "additionalProperties": False, + }, + "VMware": { + "description": "VMware appliance", + "properties": VMWARE_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["vmx_path", "linked_clone"] + }, + "VirtualBox": { + "description": "VirtualBox appliance", + "properties": VIRTUALBOX_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["vmname"] + }, + "TraceNG": { + "description": "TraceNG appliance", + "properties": TRACENG_APPLIANCE_PROPERTIES, + "additionalProperties": False, + }, + "VPCS": { + "description": "VPCS appliance", + "properties": VPCS_APPLIANCE_PROPERTIES, + "additionalProperties": False, }, - "appliance_type": APPLIANCE_TYPE_SCHEMA, - "name": { - "description": "Appliance name", - "type": "string", - "minLength": 1, + "EthernetSwitch": { + "description": "Ethernet switch appliance", + "properties": ETHERNET_SWITCH_APPLIANCE_PROPERTIES, + "additionalProperties": False, }, - "default_name_format": { - "description": "Default name format", - "type": "string", - "minLength": 1, + "EthernetHub": { + "description": "Ethernet hub appliance", + "properties": ETHERNET_HUB_APPLIANCE_PROPERTIES, + "additionalProperties": False, }, - "symbol": { - "description": "Symbol of the appliance", - "type": "string", - "minLength": 1 + "Cloud": { + "description": "Cloud appliance", + "properties": CLOUD_APPLIANCE_PROPERTIES, + "additionalProperties": False, }, }, - "additionalProperties": True, #TODO: validate all properties - "required": ["appliance_id", "compute_id", "appliance_type", "name", "default_name_format", "symbol"] + "oneOf": [ + {"$ref": "#/definitions/Dynamips"}, + {"$ref": "#/definitions/IOU"}, + {"$ref": "#/definitions/Docker"}, + {"$ref": "#/definitions/Qemu"}, + {"$ref": "#/definitions/VMware"}, + {"$ref": "#/definitions/VirtualBox"}, + {"$ref": "#/definitions/TraceNG"}, + {"$ref": "#/definitions/VPCS"}, + {"$ref": "#/definitions/EthernetSwitch"}, + {"$ref": "#/definitions/EthernetHub"}, + {"$ref": "#/definitions/Cloud"}, + ], + "required": ["name", "appliance_id", "appliance_type", "category", "compute_id", "default_name_format", "symbol"] } APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) diff --git a/gns3server/schemas/dynamips_vm.py b/gns3server/schemas/dynamips_vm.py index a3cefb8d..3798f0e1 100644 --- a/gns3server/schemas/dynamips_vm.py +++ b/gns3server/schemas/dynamips_vm.py @@ -16,6 +16,45 @@ # along with this program. If not, see . +DYNAMIPS_ADAPTERS = { + "description": "Dynamips Network Module", + "enum": ["C7200-IO-2FE", + "C7200-IO-FE", + "C7200-IO-GE-E", + "NM-16ESW", + "NM-1E", + "NM-1FE-TX", + "NM-4E", + "NM-4T", + "PA-2FE-TX", + "PA-4E", + "PA-4T+", + "PA-8E", + "PA-8T", + "PA-A1", + "PA-FE-TX", + "PA-GE", + "PA-POS-OC3", + "C2600-MB-2FE", + "C2600-MB-1E", + "C1700-MB-1FE", + "C2600-MB-2E", + "C2600-MB-1FE", + "C1700-MB-WIC1", + "GT96100-FE", + "Leopard-2FE", + ""] +} + +DYNAMIPS_WICS = { + "description": "Dynamips WIC", + "enum": ["WIC-1ENET", + "WIC-1T", + "WIC-2T", + ""] +} + +#TODO: improve schema for Dynamips (match platform specific options, e.g. NPE allowd only for c7200) VM_CREATE_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", "description": "Request validation to create a new Dynamips VM instance", From 1184f29b90ac62343297713b64b48618de4001ba Mon Sep 17 00:00:00 2001 From: grossmj Date: Thu, 15 Nov 2018 21:34:36 +0700 Subject: [PATCH 10/33] Add appliance API tests. Ref #1427. --- gns3server/schemas/appliance.py | 2 +- .../handlers/api/controller/test_appliance.py | 134 +++++++++++++++++- 2 files changed, 131 insertions(+), 5 deletions(-) diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index e52c1242..5ce51903 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -765,7 +765,7 @@ APPLIANCE_OBJECT_SCHEMA = { "Dynamips": { "description": "Dynamips appliance", "properties": DYNAMIPS_APPLIANCE_PROPERTIES, - #"additionalProperties": False, + "additionalProperties": False, "required": ["platform", "image", "ram"] }, "IOU": { diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index a0cadf23..05835fd3 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -45,12 +45,12 @@ def test_appliance_list(http_controller, controller): id = str(uuid.uuid4()) controller.load_appliances() controller._appliances[id] = Appliance(id, { - "node_type": "qemu", + "appliance_type": "qemu", "category": 0, "name": "test", "symbol": "guest.svg", "default_name_format": "{name}-{0}", - "server": "local" + "compute_id": "local" }) response = http_controller.get("/appliances", example=True) assert response.status == 200 @@ -66,16 +66,142 @@ def test_appliance_templates_list(http_controller, controller, async_run): assert len(response.json) > 0 +def test_cr(http_controller, controller, async_run): + + controller.load_appliance_templates() + response = http_controller.get("/appliances/templates", example=True) + assert response.status == 200 + assert len(response.json) > 0 + + +def test_appliance_create_without_id(http_controller, controller): + + params = {"base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.route == "/appliances" + assert response.json["appliance_id"] is not None + assert len(controller.appliances) == 1 + + +def test_appliance_create_with_id(http_controller, controller): + + params = {"appliance_id": str(uuid.uuid4()), + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.route == "/appliances" + assert response.json["appliance_id"] is not None + assert len(controller.appliances) == 1 + + +def test_appliance_get(http_controller, controller): + + appliance_id = str(uuid.uuid4()) + params = {"appliance_id": appliance_id, + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + + response = http_controller.get("/appliances/{}".format(appliance_id), example=True) + assert response.status == 200 + assert response.json["appliance_id"] == appliance_id + + +def test_appliance_update(http_controller, controller): + + appliance_id = str(uuid.uuid4()) + params = {"appliance_id": appliance_id, + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + + response = http_controller.get("/appliances/{}".format(appliance_id)) + assert response.status == 200 + assert response.json["appliance_id"] == appliance_id + + params["name"] = "VPCS_TEST_RENAMED" + response = http_controller.put("/appliances/{}".format(appliance_id), params, example=True) + + assert response.status == 200 + assert response.json["name"] == "VPCS_TEST_RENAMED" + + +def test_appliance_delete(http_controller, controller): + + appliance_id = str(uuid.uuid4()) + params = {"appliance_id": appliance_id, + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + + response = http_controller.get("/appliances") + assert len(response.json) == 1 + assert len(controller.appliances) == 1 + + response = http_controller.delete("/appliances/{}".format(appliance_id), example=True) + assert response.status == 204 + + response = http_controller.get("/appliances") + assert len(response.json) == 0 + assert len(controller.appliances) == 0 + + def test_create_node_from_appliance(http_controller, controller, project, compute): id = str(uuid.uuid4()) controller._appliances = {id: Appliance(id, { - "node_type": "qemu", + "appliance_type": "qemu", "category": 0, "name": "test", "symbol": "guest.svg", "default_name_format": "{name}-{0}", - "server": "example.com" + "compute_id": "example.com" })} with asyncio_patch("gns3server.controller.project.Project.add_node_from_appliance") as mock: response = http_controller.post("/projects/{}/appliances/{}".format(project.id, id), { From f486f07a61a4f0ed1deea472a70ee319fb9c05f2 Mon Sep 17 00:00:00 2001 From: pyup-bot Date: Fri, 16 Nov 2018 13:11:49 +0100 Subject: [PATCH 11/33] Update pytest-timeout from 1.2.1 to 1.3.3 --- dev-requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-requirements.txt b/dev-requirements.txt index 67200009..a388074c 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -3,4 +3,4 @@ sphinx==1.7.1 pytest==3.8.1 pep8==1.7.1 -pytest-timeout==1.2.1 +pytest-timeout==1.3.3 From 627c7e9cfe7d9d325c6ba7550c5d2150f637ed45 Mon Sep 17 00:00:00 2001 From: grossmj Date: Fri, 16 Nov 2018 23:02:10 +0700 Subject: [PATCH 12/33] Use schema to set appliance default values and better schema validation error messages. --- .../api/controller/appliance_handler.py | 3 +- gns3server/schemas/appliance.py | 708 ++++++++++++++---- gns3server/web/route.py | 59 +- 3 files changed, 605 insertions(+), 165 deletions(-) diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index 4c3115f7..3ee979aa 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -58,7 +58,8 @@ class ApplianceHandler: 400: "Invalid request" }, input=APPLIANCE_CREATE_SCHEMA, - output=APPLIANCE_OBJECT_SCHEMA) + output=APPLIANCE_OBJECT_SCHEMA, + set_input_schema_defaults=True) def create(request, response): controller = Controller.instance() diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 5ce51903..25e69bdc 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -30,39 +30,38 @@ BASE_APPLIANCE_PROPERTIES = { "maxLength": 36, "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, - "compute_id": { - "description": "Compute identifier", - "type": "string" - }, - "category": { - "description": "Appliance category", - "anyOf": [ - {"type": "integer"}, # old category support - {"enum": ["router", "switch", "guest", "firewall"]} - ] - }, "name": { "description": "Appliance name", "type": "string", "minLength": 1, }, + "compute_id": { + "description": "Compute identifier", + "type": "string" + }, "default_name_format": { "description": "Default name format", "type": "string", - "minLength": 1, + "minLength": 1 }, "symbol": { "description": "Symbol of the appliance", "type": "string", "minLength": 1 }, + "category": { + "description": "Appliance category", + "anyOf": [ + {"type": "integer"}, # old category support + {"enum": ["router", "switch", "guest", "firewall"]} + ] + }, "builtin": { "description": "Appliance is builtin", "type": "boolean" }, } -#TODO: improve schema for Dynamips (match platform specific options, e.g. NPE allowd only for c7200) DYNAMIPS_APPLIANCE_PROPERTIES = { "appliance_type": { "enum": ["dynamips"] @@ -72,42 +71,15 @@ DYNAMIPS_APPLIANCE_PROPERTIES = { "type": "string", "minLength": 1 }, - "chassis": { - "description": "Chassis type", - "enum": ["1720","1721", "1750", "1751", "1760", "2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", - "2621XM", "2651XM", "3620", "3640", "3660", ""] - }, - "platform": { - "description": "Platform type", - "enum": ["c1700", "c2600", "c2691", "c3725", "c3745", "c3600", "c7200"] - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer" - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer" - }, "mmap": { "description": "MMAP feature", - "type": "boolean" - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean" + "type": "boolean", + "default": True }, "exec_area": { "description": "Exec area value", "type": "integer", - }, - "disk0": { - "description": "Disk0 size in MB", - "type": "integer" - }, - "disk1": { - "description": "Disk1 size in MB", - "type": "integer" + "default": 64 }, "mac_addr": { "description": "Base MAC address", @@ -115,58 +87,55 @@ DYNAMIPS_APPLIANCE_PROPERTIES = { "anyOf": [ {"pattern": "^([0-9a-fA-F]{4}\\.){2}[0-9a-fA-F]{4}$"}, {"pattern": "^$"} - ] + ], + "default": "" }, "system_id": { "description": "System ID", "type": "string", "minLength": 1, + "default": "FTX0945W0MY" }, "startup_config": { "description": "IOS startup configuration file", - "type": "string" + "type": "string", + "default": "ios_base_startup-config.txt" }, "private_config": { "description": "IOS private configuration file", - "type": "string" + "type": "string", + "default": "" }, "idlepc": { "description": "Idle-PC value", "type": "string", - "pattern": "^(0x[0-9a-fA-F]+)?$" + "pattern": "^(0x[0-9a-fA-F]+)?$", + "default": "" }, "idlemax": { "description": "Idlemax value", "type": "integer", + "default": 500 }, "idlesleep": { "description": "Idlesleep value", "type": "integer", + "default": 30 }, - "iomem": { - "description": "I/O memory percentage", + "disk0": { + "description": "Disk0 size in MB", "type": "integer", - "minimum": 0, - "maximum": 100 + "default": 0 }, - "npe": { - "description": "NPE model", - "enum": ["npe-100", - "npe-150", - "npe-175", - "npe-200", - "npe-225", - "npe-300", - "npe-400", - "npe-g2"] - }, - "midplane": { - "description": "Midplane model", - "enum": ["std", "vxr"] + "disk1": { + "description": "Disk1 size in MB", + "type": "integer", + "default": 0 }, "auto_delete_disks": { "description": "Automatically delete nvram and disk files", - "type": "boolean" + "type": "boolean", + "default": False }, "wic0": DYNAMIPS_WICS, "wic1": DYNAMIPS_WICS, @@ -180,15 +149,280 @@ DYNAMIPS_APPLIANCE_PROPERTIES = { "slot6": DYNAMIPS_ADAPTERS, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "telnet" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False + } +} + +DYNAMIPS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +DYNAMIPS_APPLIANCE_PROPERTIES["category"]["default"] = "router" +DYNAMIPS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "R{0}" +DYNAMIPS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/router.svg" + +C7200_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c7200"] + }, + # "chassis": { + # "description": "Chassis type", + # "type": ["string", "null"], + # "maxLength": 0, + # "default": None + # }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 512 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 512 + }, + "npe": { + "description": "NPE model", + "enum": ["npe-100", "npe-150", "npe-175", "npe-200", "npe-225", "npe-300", "npe-400", "npe-g2"], + "default": "npe-400" + }, + "midplane": { + "description": "Midplane model", + "enum": ["std", "vxr"], + "default": "vxr" + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C7200_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3745_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c3745"] + }, + # "chassis": { + # "description": "Chassis type", + # "type": ["string", "null"], + # "maxLength": 0, + # "default": None + # }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 256 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3745_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3725_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c3725"] + }, + # "chassis": { + # "description": "Chassis type", + # "type": ["string", "null"], + # "maxLength": 0, + # "default": None + # }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 128 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3725_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3600_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c3600"] + }, + "chassis": { + "description": "Chassis type", + "enum": ["3620", "3640", "3660"], + "default": "3660" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 192 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C2691_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c2691"] + }, + # "chassis": { + # "description": "Chassis type", + # "type": ["string", "null"], + # "maxLength": 0, + # "default": None + # }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 192 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C2691_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C2600_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c2600"] + }, + "chassis": { + "description": "Chassis type", + "enum": ["2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", "2621XM", "2651XM"], + "default": "2651XM" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 160 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 15 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True } } -DYNAMIPS_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +C2600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C1700_DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c1700"] + }, + "chassis": { + "description": "Chassis type", + "enum": ["1720", "1721", "1750", "1751", "1760"], + "default": "1760" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 160 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 15 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": False + } +} + +C1700_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) IOU_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -202,42 +436,54 @@ IOU_APPLIANCE_PROPERTIES = { "ethernet_adapters": { "description": "Number of ethernet adapters", "type": "integer", + "default": 2 }, "serial_adapters": { "description": "Number of serial adapters", - "type": "integer" + "type": "integer", + "default": 2 }, "ram": { "description": "RAM in MB", - "type": "integer" + "type": "integer", + "default": 256 }, "nvram": { "description": "NVRAM in KB", - "type": "integer" + "type": "integer", + "default": 128 }, "use_default_iou_values": { "description": "Use default IOU values", - "type": "boolean" + "type": "boolean", + "default": True }, "startup_config": { "description": "Startup-config of IOU", - "type": "string" + "type": "string", + "default": "iou_l2_base_startup-config.txt" }, "private_config": { "description": "Private-config of IOU", - "type": "string" + "type": "string", + "default": "" }, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "telnet" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False }, } -IOU_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +IOU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +IOU_APPLIANCE_PROPERTIES["category"]["default"] = "router" +IOU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "IOU{0}" +IOU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/multilayer_switch.svg" DOCKER_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -252,51 +498,63 @@ DOCKER_APPLIANCE_PROPERTIES = { "description": "Number of adapters", "type": "integer", "minimum": 0, - "maximum": 99 + "maximum": 99, + "default": 1 }, "start_command": { "description": "Docker CMD entry", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "environment": { "description": "Docker environment variables", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "console_type": { "description": "Console type", - "enum": ["telnet", "vnc", "http", "https", "none"] + "enum": ["telnet", "vnc", "http", "https", "none"], + "default": "telnet" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False, }, "console_http_port": { "description": "Internal port in the container for the HTTP server", "type": "integer", "minimum": 1, - "maximum": 65535 + "maximum": 65535, + "default": 80 }, "console_http_path": { "description": "Path of the web interface", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "/" }, "console_resolution": { "description": "Console resolution for VNC", "type": "string", - "pattern": "^[0-9]+x[0-9]+$" + "pattern": "^[0-9]+x[0-9]+$", + "default": "1024x768" }, "extra_hosts": { "description": "Docker extra hosts (added to /etc/hosts)", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "", }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA } -DOCKER_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +DOCKER_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +DOCKER_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +DOCKER_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +DOCKER_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/docker_guest.svg" QEMU_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -305,166 +563,213 @@ QEMU_APPLIANCE_PROPERTIES = { "usage": { "description": "How to use the Qemu VM", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "qemu_path": { "description": "Path to QEMU", - "type": ["string", "null"], + "type": "string", "minLength": 1, + "default": "" }, "platform": { "description": "Platform to emulate", - "enum": QEMU_PLATFORMS + "enum": QEMU_PLATFORMS, + "default": "i386" }, "linked_clone": { "description": "Whether the VM is a linked clone or not", - "type": "boolean" + "type": "boolean", + "default": True }, "ram": { "description": "Amount of RAM in MB", - "type": "integer" + "type": "integer", + "default": 256 }, "cpus": { "description": "Number of vCPUs", "type": "integer", "minimum": 1, - "maximum": 255 + "maximum": 255, + "default": 1 }, "adapters": { "description": "Number of adapters", "type": "integer", "minimum": 0, - "maximum": 275 + "maximum": 275, + "default": 1 }, "adapter_type": { "description": "QEMU adapter type", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "e1000" }, "mac_address": { "description": "QEMU MAC address", "type": "string", "minLength": 1, - "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$" + "anyOf": [ + {"pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$"}, + {"pattern": "^$"} + ], + "default": "", }, "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "Ethernet{0}" }, "port_segment_size": { "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer" + "type": "integer", + "default": 0 }, "console_type": { "description": "Console type", - "enum": ["telnet", "vnc", "spice", "spice+agent", "none"] + "enum": ["telnet", "vnc", "spice", "spice+agent", "none"], + "default": "telnet" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False }, "boot_priority": { "description": "QEMU boot priority", - "enum": ["c", "d", "n", "cn", "cd", "dn", "dc", "nc", "nd"] + "enum": ["c", "d", "n", "cn", "cd", "dn", "dc", "nc", "nd"], + "default": "c" }, "hda_disk_image": { "description": "QEMU hda disk image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "hda_disk_interface": { "description": "QEMU hda interface", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "ide" }, "hdb_disk_image": { "description": "QEMU hdb disk image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "hdb_disk_interface": { "description": "QEMU hdb interface", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "ide" }, "hdc_disk_image": { "description": "QEMU hdc disk image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "hdc_disk_interface": { "description": "QEMU hdc interface", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "ide" }, "hdd_disk_image": { "description": "QEMU hdd disk image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "hdd_disk_interface": { "description": "QEMU hdd interface", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "ide" }, "cdrom_image": { "description": "QEMU cdrom image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "initrd": { "description": "QEMU initrd path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "kernel_image": { "description": "QEMU kernel image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "bios_image": { "description": "QEMU bios image path", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "kernel_command_line": { "description": "QEMU kernel command line", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "legacy_networking": { "description": "Use QEMU legagy networking commands (-net syntax)", - "type": "boolean" + "type": "boolean", + "default": False }, "on_close": { "description": "Action to execute on the VM is closed", "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" }, "cpu_throttling": { "description": "Percentage of CPU allowed for QEMU", "minimum": 0, "maximum": 800, - "type": "integer" + "type": "integer", + "default": 0 }, "process_priority": { "description": "Process priority for QEMU", - "enum": ["realtime", "very high", "high", "normal", "low", "very low"] + "enum": ["realtime", "very high", "high", "normal", "low", "very low"], + "default": "normal" }, "options": { "description": "Additional QEMU options", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA } -QEMU_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +QEMU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +QEMU_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +QEMU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +QEMU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/qemu_guest.svg" + +VMWARE_VM_SETTINGS = { + "vmx_path": "", + + + "console_type": "none", + "console_auto_start": False, +} VMWARE_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -477,57 +782,71 @@ VMWARE_APPLIANCE_PROPERTIES = { }, "linked_clone": { "description": "Whether the VM is a linked clone or not", - "type": "boolean" + "type": "boolean", + "default": False }, "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "Ethernet{0}" }, "port_segment_size": { "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer" + "type": "integer", + "default": 0 }, "adapters": { "description": "Number of adapters", "type": "integer", "minimum": 0, - "maximum": 10, # maximum adapters support by VMware VMs + "maximum": 10, # maximum adapters support by VMware VMs, + "default": 1 }, "adapter_type": { "description": "VMware adapter type", "type": "string", "minLength": 1, + "default": "e1000" }, "use_any_adapter": { "description": "Allow GNS3 to use any VMware adapter", "type": "boolean", + "default": False }, "headless": { "description": "Headless mode", - "type": "boolean" + "type": "boolean", + "default": False }, "on_close": { "description": "Action to execute on the VM is closed", "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" }, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "none" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA } -VMWARE_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +VMWARE_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VMWARE_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VMWARE_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +VMWARE_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vmware_guest.svg" VIRTUALBOX_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -542,61 +861,76 @@ VIRTUALBOX_APPLIANCE_PROPERTIES = { "description": "Amount of RAM", "minimum": 0, "maximum": 65535, - "type": "integer" + "type": "integer", + "default": 256 }, "linked_clone": { "description": "Whether the VM is a linked clone or not", - "type": "boolean" + "type": "boolean", + "default": False }, "adapters": { "description": "Number of adapters", "type": "integer", "minimum": 0, "maximum": 36, # maximum given by the ICH9 chipset in VirtualBox + "default": 1 }, "use_any_adapter": { "description": "Allow GNS3 to use any VirtualBox adapter", "type": "boolean", + "default": False }, "adapter_type": { "description": "VirtualBox adapter type", "type": "string", "minLength": 1, + "default": "Intel PRO/1000 MT Desktop (82540EM)" }, "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1 + "minLength": 1, + "default": "Ethernet{0}" }, "port_segment_size": { "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer" + "type": "integer", + "default": 0 }, "headless": { "description": "Headless mode", - "type": "boolean" + "type": "boolean", + "default": False }, "on_close": { "description": "Action to execute on the VM is closed", "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" }, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "none" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA } -VIRTUALBOX_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +VIRTUALBOX_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VIRTUALBOX_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VIRTUALBOX_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +VIRTUALBOX_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vbox_guest.svg" TRACENG_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -614,11 +948,15 @@ TRACENG_APPLIANCE_PROPERTIES = { }, "console_type": { "description": "Console type", - "enum": ["none"] + "enum": ["none"], + "default": "none" }, } -TRACENG_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +TRACENG_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +TRACENG_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +TRACENG_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "TraceNG{0}" +TRACENG_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/traceng.svg" VPCS_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -628,18 +966,24 @@ VPCS_APPLIANCE_PROPERTIES = { "description": "Script file", "type": "string", "minLength": 1, + "default": "vpcs_base_config.txt" }, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "telnet" }, "console_auto_start": { "description": "Automatically start the console when the node has started", - "type": "boolean" + "type": "boolean", + "default": False }, } -VPCS_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +VPCS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VPCS_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VPCS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "PC{0}" +VPCS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vpcs_guest.svg" ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -684,11 +1028,15 @@ ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { }, "console_type": { "description": "Console type", - "enum": ["telnet", "none"] + "enum": ["telnet", "none"], + "default": "telnet" }, } -ETHERNET_SWITCH_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +ETHERNET_SWITCH_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["category"]["default"] = "switch" +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Switch{0}" +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/ethernet_switch.svg" ETHERNET_HUB_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -721,7 +1069,10 @@ ETHERNET_HUB_APPLIANCE_PROPERTIES = { } } -ETHERNET_HUB_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +ETHERNET_HUB_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +ETHERNET_HUB_APPLIANCE_PROPERTIES["category"]["default"] = "switch" +ETHERNET_HUB_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Hub{0}" +ETHERNET_HUB_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/hub.svg" CLOUD_APPLIANCE_PROPERTIES = { "appliance_type": { @@ -755,18 +1106,57 @@ CLOUD_APPLIANCE_PROPERTIES = { }, } -CLOUD_APPLIANCE_PROPERTIES.update(BASE_APPLIANCE_PROPERTIES) +CLOUD_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +CLOUD_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +CLOUD_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Cloud{0}" +CLOUD_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/cloud.svg" APPLIANCE_OBJECT_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", "description": "A template object", "type": "object", "definitions": { - "Dynamips": { - "description": "Dynamips appliance", - "properties": DYNAMIPS_APPLIANCE_PROPERTIES, + "c7200": { + "description": "c7200 appliance", + "properties": C7200_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image"] + }, + "c3745": { + "description": "c3745 appliance", + "properties": C3745_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image"] + }, + "c3725": { + "description": "c3725 appliance", + "properties": C3725_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image"] + }, + "c3600": { + "description": "c3600 appliance", + "properties": C3600_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image", "chassis"] + }, + "c2691": { + "description": "c2691 appliance", + "properties": C2691_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image"] + }, + "c2600": { + "description": "c2600 appliance", + "properties": C2600_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False, + "required": ["platform", "image", "chassis"] + }, + "c1700": { + "description": "c1700 appliance", + "properties": C1700_DYNAMIPS_APPLIANCE_PROPERTIES, "additionalProperties": False, - "required": ["platform", "image", "ram"] + "required": ["platform", "image", "chassis"] }, "IOU": { "description": "IOU appliance", @@ -789,7 +1179,7 @@ APPLIANCE_OBJECT_SCHEMA = { "description": "VMware appliance", "properties": VMWARE_APPLIANCE_PROPERTIES, "additionalProperties": False, - "required": ["vmx_path", "linked_clone"] + "required": ["vmx_path"] }, "VirtualBox": { "description": "VirtualBox appliance", @@ -824,7 +1214,13 @@ APPLIANCE_OBJECT_SCHEMA = { }, }, "oneOf": [ - {"$ref": "#/definitions/Dynamips"}, + {"$ref": "#/definitions/c7200"}, + {"$ref": "#/definitions/c3745"}, + {"$ref": "#/definitions/c3725"}, + {"$ref": "#/definitions/c3600"}, + {"$ref": "#/definitions/c2691"}, + {"$ref": "#/definitions/c2600"}, + {"$ref": "#/definitions/c1700"}, {"$ref": "#/definitions/IOU"}, {"$ref": "#/definitions/Docker"}, {"$ref": "#/definitions/Qemu"}, @@ -836,7 +1232,7 @@ APPLIANCE_OBJECT_SCHEMA = { {"$ref": "#/definitions/EthernetHub"}, {"$ref": "#/definitions/Cloud"}, ], - "required": ["name", "appliance_id", "appliance_type", "category", "compute_id", "default_name_format", "symbol"] + "required": ["name", "appliance_type", "appliance_id", "category", "compute_id", "default_name_format", "symbol"] } APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) @@ -844,7 +1240,7 @@ APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) # create schema # these properties are not required to create an appliance APPLIANCE_CREATE_SCHEMA["required"].remove("appliance_id") -APPLIANCE_CREATE_SCHEMA["required"].remove("compute_id") +APPLIANCE_CREATE_SCHEMA["required"].remove("category") APPLIANCE_CREATE_SCHEMA["required"].remove("default_name_format") APPLIANCE_CREATE_SCHEMA["required"].remove("symbol") diff --git a/gns3server/web/route.py b/gns3server/web/route.py index 41dec3f8..22e66f52 100644 --- a/gns3server/web/route.py +++ b/gns3server/web/route.py @@ -23,7 +23,7 @@ import aiohttp import logging import traceback import jsonschema - +import jsonschema.exceptions log = logging.getLogger(__name__) @@ -36,7 +36,30 @@ from ..crash_report import CrashReport from ..config import Config -async def parse_request(request, input_schema, raw): +# Add default values for missing entries in a request, largely taken from jsonschema documentation example +# https://python-jsonschema.readthedocs.io/en/latest/faq/#why-doesn-t-my-schema-s-default-property-set-the-default-on-my-instance +def extend_with_default(validator_class): + + validate_properties = validator_class.VALIDATORS["properties"] + def set_defaults(validator, properties, instance, schema): + if jsonschema.Draft4Validator(schema).is_valid(instance): + # only add default for the matching sub-schema (e.g. when using 'oneOf') + for property, subschema in properties.items(): + if "default" in subschema: + instance.setdefault(property, subschema["default"]) + + for error in validate_properties(validator, properties, instance, schema,): + yield error + + return jsonschema.validators.extend( + validator_class, {"properties" : set_defaults}, + ) + + +ValidatorWithDefaults = extend_with_default(jsonschema.Draft4Validator) + + +async def parse_request(request, input_schema, raw, set_input_schema_defaults=False): """Parse body of request and raise HTTP errors in case of problems""" request.json = {} @@ -55,16 +78,35 @@ async def parse_request(request, input_schema, raw): request.json[k] = v[0] if input_schema: + + if set_input_schema_defaults: + validator = ValidatorWithDefaults(input_schema) + else: + validator = jsonschema.Draft4Validator(input_schema) try: - jsonschema.validate(request.json, input_schema) + validator.validate(request.json) except jsonschema.ValidationError as e: - log.error("Invalid input query. JSON schema error: {}".format(e.message)) - raise aiohttp.web.HTTPBadRequest(text="Invalid JSON: {} in schema: {}".format( - e.message, - json.dumps(e.schema))) + best_match = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) + message = "JSON schema error with API request '{}': {} (best matched error: {})".format(request.path_qs, e.message, best_match.message) + log.error(message) + log.debug("Input schema: {}".format(json.dumps(input_schema))) + raise aiohttp.web.HTTPBadRequest(text=message) return request + # if set_input_schema_defaults: + # validator = ValidatorWithDefaults(input_schema) + # else: + # validator = jsonschema.Draft4Validator(input_schema) + # error = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) + # if error: + # message = "JSON schema error with API request '{}' while validating JSON data '{}': {}".format(request.path_qs, request.json, error.message) + # log.error(message) + # log.debug("Input schema: {}".format(json.dumps(input_schema))) + # raise aiohttp.web.HTTPBadRequest(text=message) + # + # return request + class Route(object): @@ -132,6 +174,7 @@ class Route(object): input_schema = kw.get("input", {}) api_version = kw.get("api_version", 2) raw = kw.get("raw", False) + set_input_schema_defaults = kw.get("set_input_schema_defaults", False) def register(func): # Add the type of server to the route @@ -180,7 +223,7 @@ class Route(object): return response # API call - request = await parse_request(request, input_schema, raw) + request = await parse_request(request, input_schema, raw, set_input_schema_defaults) record_file = server_config.get("record") if record_file: try: From 71fcf855b40f777bfc2b7297567c4dfc166f7774 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 15:37:20 +0700 Subject: [PATCH 13/33] Add tests for all appliance types. --- gns3server/schemas/appliance.py | 181 +++-- gns3server/web/route.py | 6 +- .../handlers/api/controller/test_appliance.py | 746 +++++++++++++++++- 3 files changed, 851 insertions(+), 82 deletions(-) diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 25e69bdc..764245e8 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -169,12 +169,6 @@ C7200_DYNAMIPS_APPLIANCE_PROPERTIES = { "description": "Platform type", "enum": ["c7200"] }, - # "chassis": { - # "description": "Chassis type", - # "type": ["string", "null"], - # "maxLength": 0, - # "default": None - # }, "ram": { "description": "Amount of RAM in MB", "type": "integer", @@ -209,12 +203,6 @@ C3745_DYNAMIPS_APPLIANCE_PROPERTIES = { "description": "Platform type", "enum": ["c3745"] }, - # "chassis": { - # "description": "Chassis type", - # "type": ["string", "null"], - # "maxLength": 0, - # "default": None - # }, "ram": { "description": "Amount of RAM in MB", "type": "integer", @@ -246,12 +234,6 @@ C3725_DYNAMIPS_APPLIANCE_PROPERTIES = { "description": "Platform type", "enum": ["c3725"] }, - # "chassis": { - # "description": "Chassis type", - # "type": ["string", "null"], - # "maxLength": 0, - # "default": None - # }, "ram": { "description": "Amount of RAM in MB", "type": "integer", @@ -320,12 +302,6 @@ C2691_DYNAMIPS_APPLIANCE_PROPERTIES = { "description": "Platform type", "enum": ["c2691"] }, - # "chassis": { - # "description": "Chassis type", - # "type": ["string", "null"], - # "maxLength": 0, - # "default": None - # }, "ram": { "description": "Amount of RAM in MB", "type": "integer", @@ -461,7 +437,7 @@ IOU_APPLIANCE_PROPERTIES = { "startup_config": { "description": "Startup-config of IOU", "type": "string", - "default": "iou_l2_base_startup-config.txt" + "default": "iou_l3_base_startup-config.txt" }, "private_config": { "description": "Private-config of IOU", @@ -504,13 +480,11 @@ DOCKER_APPLIANCE_PROPERTIES = { "start_command": { "description": "Docker CMD entry", "type": "string", - "minLength": 1, "default": "" }, "environment": { "description": "Docker environment variables", "type": "string", - "minLength": 1, "default": "" }, "console_type": { @@ -545,7 +519,6 @@ DOCKER_APPLIANCE_PROPERTIES = { "extra_hosts": { "description": "Docker extra hosts (added to /etc/hosts)", "type": "string", - "minLength": 1, "default": "", }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA @@ -563,13 +536,11 @@ QEMU_APPLIANCE_PROPERTIES = { "usage": { "description": "How to use the Qemu VM", "type": "string", - "minLength": 1, "default": "" }, "qemu_path": { "description": "Path to QEMU", "type": "string", - "minLength": 1, "default": "" }, "platform": { @@ -604,13 +575,14 @@ QEMU_APPLIANCE_PROPERTIES = { "adapter_type": { "description": "QEMU adapter type", "type": "string", - "minLength": 1, + "enum": ["e1000", "i82550", "i82551", "i82557a", "i82557b", "i82557c", "i82558a","i82558b", "i82559a", + "i82559b", "i82559c", "i82559er", "i82562", "i82801", "ne2k_pci", "pcnet", "rtl8139", "virtio", + "virtio-net-pci", "vmxnet3"], "default": "e1000" }, "mac_address": { "description": "QEMU MAC address", "type": "string", - "minLength": 1, "anyOf": [ {"pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$"}, {"pattern": "^$"} @@ -620,13 +592,11 @@ QEMU_APPLIANCE_PROPERTIES = { "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1, "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1, "default": "Ethernet{0}" }, "port_segment_size": { @@ -652,79 +622,66 @@ QEMU_APPLIANCE_PROPERTIES = { "hda_disk_image": { "description": "QEMU hda disk image path", "type": "string", - "minLength": 1, "default": "" }, "hda_disk_interface": { "description": "QEMU hda interface", - "type": "string", - "minLength": 1, + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], "default": "ide" }, "hdb_disk_image": { "description": "QEMU hdb disk image path", "type": "string", - "minLength": 1, "default": "" }, "hdb_disk_interface": { "description": "QEMU hdb interface", - "type": "string", - "minLength": 1, + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], "default": "ide" }, "hdc_disk_image": { "description": "QEMU hdc disk image path", "type": "string", - "minLength": 1, "default": "" }, "hdc_disk_interface": { "description": "QEMU hdc interface", - "type": "string", - "minLength": 1, + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], "default": "ide" }, "hdd_disk_image": { "description": "QEMU hdd disk image path", "type": "string", - "minLength": 1, "default": "" }, "hdd_disk_interface": { "description": "QEMU hdd interface", - "type": "string", - "minLength": 1, + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], "default": "ide" }, "cdrom_image": { "description": "QEMU cdrom image path", "type": "string", - "minLength": 1, "default": "" }, "initrd": { "description": "QEMU initrd path", "type": "string", - "minLength": 1, "default": "" }, "kernel_image": { "description": "QEMU kernel image path", "type": "string", - "minLength": 1, "default": "" }, "bios_image": { "description": "QEMU bios image path", "type": "string", - "minLength": 1, "default": "" }, "kernel_command_line": { "description": "QEMU kernel command line", "type": "string", - "minLength": 1, "default": "" }, "legacy_networking": { @@ -752,7 +709,6 @@ QEMU_APPLIANCE_PROPERTIES = { "options": { "description": "Additional QEMU options", "type": "string", - "minLength": 1, "default": "" }, "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA @@ -788,13 +744,11 @@ VMWARE_APPLIANCE_PROPERTIES = { "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1, "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1, "default": "Ethernet{0}" }, "port_segment_size": { @@ -811,8 +765,7 @@ VMWARE_APPLIANCE_PROPERTIES = { }, "adapter_type": { "description": "VMware adapter type", - "type": "string", - "minLength": 1, + "enum": ["default", "e1000", "e1000e", "flexible", "vlance", "vmxnet", "vmxnet2", "vmxnet3"], "default": "e1000" }, "use_any_adapter": { @@ -883,20 +836,22 @@ VIRTUALBOX_APPLIANCE_PROPERTIES = { }, "adapter_type": { "description": "VirtualBox adapter type", - "type": "string", - "minLength": 1, + "enum": ["PCnet-PCI II (Am79C970A)", + "PCNet-FAST III (Am79C973)", + "Intel PRO/1000 MT Desktop (82540EM)", + "Intel PRO/1000 T Server (82543GC)", + "Intel PRO/1000 MT Server (82545EM)", + "Paravirtualized Network (virtio-net)"], "default": "Intel PRO/1000 MT Desktop (82540EM)" }, "first_port_name": { "description": "Optional name of the first networking port example: eth0", "type": "string", - "minLength": 1, "default": "" }, "port_name_format": { "description": "Optional formatting of the networking port example: eth{0}", "type": "string", - "minLength": 1, "default": "Ethernet{0}" }, "port_segment_size": { @@ -991,6 +946,55 @@ ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { }, "ports_mapping": { "type": "array", + "default": [{"ethertype": "", + "name": "Ethernet0", + "vlan": 1, + "type": "access", + "port_number": 0 + }, + {"ethertype": "", + "name": "Ethernet1", + "vlan": 1, + "type": "access", + "port_number": 1 + }, + {"ethertype": "", + "name": "Ethernet2", + "vlan": 1, + "type": "access", + "port_number": 2 + }, + {"ethertype": "", + "name": "Ethernet3", + "vlan": 1, + "type": "access", + "port_number": 3 + }, + {"ethertype": "", + "name": "Ethernet4", + "vlan": 1, + "type": "access", + "port_number": 4 + }, + {"ethertype": "", + "name": "Ethernet5", + "vlan": 1, + "type": "access", + "port_number": 5 + }, + {"ethertype": "", + "name": "Ethernet6", + "vlan": 1, + "type": "access", + "port_number": 6 + }, + {"ethertype": "", + "name": "Ethernet7", + "vlan": 1, + "type": "access", + "port_number": 7 + } + ], "items": [ {"type": "object", "oneOf": [ @@ -1044,27 +1048,46 @@ ETHERNET_HUB_APPLIANCE_PROPERTIES = { }, "ports_mapping": { "type": "array", + "default": [{"port_number": 0, + "name": "Ethernet0" + }, + {"port_number": 1, + "name": "Ethernet1" + }, + {"port_number": 2, + "name": "Ethernet2" + }, + {"port_number": 3, + "name": "Ethernet3" + }, + {"port_number": 4, + "name": "Ethernet4" + }, + {"port_number": 5, + "name": "Ethernet5" + }, + {"port_number": 6, + "name": "Ethernet6" + }, + {"port_number": 7, + "name": "Ethernet7" + } + ], "items": [ {"type": "object", - "oneOf": [ - { - "description": "Ethernet port", - "properties": { - "name": { - "description": "Port name", - "type": "string", - "minLength": 1 - }, - "port_number": { - "description": "Port number", - "type": "integer", - "minimum": 0 - }, - }, - "required": ["name", "port_number"], - "additionalProperties": False - }, - ]}, + "oneOf": [{"description": "Ethernet port", + "properties": {"name": {"description": "Port name", + "type": "string", + "minLength": 1}, + "port_number": { + "description": "Port number", + "type": "integer", + "minimum": 0} + }, + "required": ["name", "port_number"], + "additionalProperties": False} + ], + } ] } } diff --git a/gns3server/web/route.py b/gns3server/web/route.py index 22e66f52..764286c3 100644 --- a/gns3server/web/route.py +++ b/gns3server/web/route.py @@ -86,8 +86,10 @@ async def parse_request(request, input_schema, raw, set_input_schema_defaults=Fa try: validator.validate(request.json) except jsonschema.ValidationError as e: - best_match = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) - message = "JSON schema error with API request '{}': {} (best matched error: {})".format(request.path_qs, e.message, best_match.message) + message = "JSON schema error with API request '{}': {}".format(request.path_qs, e.message) + if "is not valid under any of the given schemas" not in message: + best_match = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) + message += " (best matched error: {})".format(best_match.message) log.error(message) log.debug("Input schema: {}".format(json.dumps(input_schema))) raise aiohttp.web.HTTPBadRequest(text=message) diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index 05835fd3..41ead4bc 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -113,6 +113,24 @@ def test_appliance_create_with_id(http_controller, controller): assert len(controller.appliances) == 1 +def test_appliance_create_wrong_type(http_controller, controller): + + params = {"appliance_id": str(uuid.uuid4()), + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "invalid_appliance_type"} + + response = http_controller.post("/appliances", params) + assert response.status == 400 + assert len(controller.appliances) == 0 + + def test_appliance_get(http_controller, controller): appliance_id = str(uuid.uuid4()) @@ -192,6 +210,733 @@ def test_appliance_delete(http_controller, controller): assert len(controller.appliances) == 0 +def test_c7200_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c7200 appliance", + "platform": "c7200", + "compute_id": "local", + "image": "c7200-adventerprisek9-mz.124-24.T5.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c7200-adventerprisek9-mz.124-24.T5.image", + "mac_addr": "", + "midplane": "vxr", + "mmap": True, + "name": "Cisco c7200 appliance", + "npe": "npe-400", + "nvram": 512, + "platform": "c7200", + "private_config": "", + "ram": 512, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c3745_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c3745 appliance", + "platform": "c3745", + "compute_id": "local", + "image": "c3745-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c3745-adventerprisek9-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c3745 appliance", + "iomem": 5, + "nvram": 256, + "platform": "c3745", + "private_config": "", + "ram": 256, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c3725_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c3725 appliance", + "platform": "c3725", + "compute_id": "local", + "image": "c3725-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c3725-adventerprisek9-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c3725 appliance", + "iomem": 5, + "nvram": 256, + "platform": "c3725", + "private_config": "", + "ram": 128, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c3600_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c3600 appliance", + "platform": "c3600", + "chassis": "3660", + "compute_id": "local", + "image": "c3660-a3jk9s-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c3660-a3jk9s-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c3600 appliance", + "iomem": 5, + "nvram": 128, + "platform": "c3600", + "chassis": "3660", + "private_config": "", + "ram": 192, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c3600_dynamips_appliance_create_wrong_chassis(http_controller): + + params = {"name": "Cisco c3600 appliance", + "platform": "c3600", + "chassis": "3650", + "compute_id": "local", + "image": "c3660-a3jk9s-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 400 + assert "is not valid under any of the given schemas" in response.json["message"] + + +def test_c2691_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c2691 appliance", + "platform": "c2691", + "compute_id": "local", + "image": "c2691-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c2691-adventerprisek9-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c2691 appliance", + "iomem": 5, + "nvram": 256, + "platform": "c2691", + "private_config": "", + "ram": 192, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c2600_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c2600 appliance", + "platform": "c2600", + "chassis": "2651XM", + "compute_id": "local", + "image": "c2600-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c2600-adventerprisek9-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c2600 appliance", + "iomem": 15, + "nvram": 128, + "platform": "c2600", + "chassis": "2651XM", + "private_config": "", + "ram": 160, + "sparsemem": True, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c2600_dynamips_appliance_create_wrong_chassis(http_controller): + + params = {"name": "Cisco c2600 appliance", + "platform": "c2600", + "chassis": "2660XM", + "compute_id": "local", + "image": "c2600-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 400 + assert "is not valid under any of the given schemas" in response.json["message"] + + +def test_c1700_dynamips_appliance_create(http_controller): + + params = {"name": "Cisco c1700 appliance", + "platform": "c1700", + "chassis": "1760", + "compute_id": "local", + "image": "c1700-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "dynamips", + "auto_delete_disks": False, + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "R{0}", + "disk0": 0, + "disk1": 0, + "exec_area": 64, + "idlemax": 500, + "idlepc": "", + "idlesleep": 30, + "image": "c1700-adventerprisek9-mz.124-25d.image", + "mac_addr": "", + "mmap": True, + "name": "Cisco c1700 appliance", + "iomem": 15, + "nvram": 128, + "platform": "c1700", + "chassis": "1760", + "private_config": "", + "ram": 160, + "sparsemem": False, + "startup_config": "ios_base_startup-config.txt", + "symbol": ":/symbols/router.svg", + "system_id": "FTX0945W0MY"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_c1700_dynamips_appliance_create_wrong_chassis(http_controller): + + params = {"name": "Cisco c1700 appliance", + "platform": "c1700", + "chassis": "1770", + "compute_id": "local", + "image": "c1700-adventerprisek9-mz.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 400 + assert "is not valid under any of the given schemas" in response.json["message"] + + +def test_dynamips_appliance_create_wrong_platform(http_controller): + + params = {"name": "Cisco c3900 appliance", + "platform": "c3900", + "compute_id": "local", + "image": "c3900-test.124-25d.image", + "appliance_type": "dynamips"} + + response = http_controller.post("/appliances", params) + assert response.status == 400 + assert "is not valid under any of the given schemas" in response.json["message"] + + +def test_iou_appliance_create(http_controller): + + params = {"name": "IOU appliance", + "compute_id": "local", + "path": "/path/to/i86bi_linux-ipbase-ms-12.4.bin", + "appliance_type": "iou"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "iou", + "builtin": False, + "category": "router", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "IOU{0}", + "ethernet_adapters": 2, + "name": "IOU appliance", + "nvram": 128, + "path": "/path/to/i86bi_linux-ipbase-ms-12.4.bin", + "private_config": "", + "ram": 256, + "serial_adapters": 2, + "startup_config": "iou_l3_base_startup-config.txt", + "symbol": ":/symbols/multilayer_switch.svg", + "use_default_iou_values": True} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_docker_appliance_create(http_controller): + + params = {"name": "Docker appliance", + "compute_id": "local", + "image": "gns3/endhost:latest", + "appliance_type": "docker"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"adapters": 1, + "appliance_type": "docker", + "builtin": False, + "category": "guest", + "compute_id": "local", + "console_auto_start": False, + "console_http_path": "/", + "console_http_port": 80, + "console_resolution": "1024x768", + "console_type": "telnet", + "default_name_format": "{name}-{0}", + "environment": "", + "extra_hosts": "", + "image": "gns3/endhost:latest", + "name": "Docker appliance", + "start_command": "", + "symbol": ":/symbols/docker_guest.svg"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_qemu_appliance_create(http_controller): + + params = {"name": "Qemu appliance", + "compute_id": "local", + "platform": "i386", + "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", + "ram": 512, + "appliance_type": "qemu"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"adapter_type": "e1000", + "adapters": 1, + "appliance_type": "qemu", + "bios_image": "", + "boot_priority": "c", + "builtin": False, + "category": "guest", + "cdrom_image": "", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "cpu_throttling": 0, + "cpus": 1, + "default_name_format": "{name}-{0}", + "first_port_name": "", + "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", + "hda_disk_interface": "ide", + "hdb_disk_image": "", + "hdb_disk_interface": "ide", + "hdc_disk_image": "", + "hdc_disk_interface": "ide", + "hdd_disk_image": "", + "hdd_disk_interface": "ide", + "initrd": "", + "kernel_command_line": "", + "kernel_image": "", + "legacy_networking": False, + "linked_clone": True, + "mac_address": "", + "name": "Qemu appliance", + "on_close": "power_off", + "options": "", + "platform": "i386", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "process_priority": "normal", + "qemu_path": "", + "ram": 512, + "symbol": ":/symbols/qemu_guest.svg", + "usage": ""} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_vmware_appliance_create(http_controller): + + params = {"name": "VMware appliance", + "compute_id": "local", + "appliance_type": "vmware", + "vmx_path": "/path/to/vm.vmx"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"adapter_type": "e1000", + "adapters": 1, + "appliance_type": "vmware", + "builtin": False, + "category": "guest", + "compute_id": "local", + "console_auto_start": False, + "console_type": "none", + "default_name_format": "{name}-{0}", + "first_port_name": "", + "headless": False, + "linked_clone": False, + "name": "VMware appliance", + "on_close": "power_off", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "symbol": ":/symbols/vmware_guest.svg", + "use_any_adapter": False, + "vmx_path": "/path/to/vm.vmx"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_virtualbox_appliance_create(http_controller): + + params = {"name": "VirtualBox appliance", + "compute_id": "local", + "appliance_type": "virtualbox", + "vmname": "My VirtualBox VM"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)", + "adapters": 1, + "appliance_type": "virtualbox", + "builtin": False, + "category": "guest", + "compute_id": "local", + "console_auto_start": False, + "console_type": "none", + "default_name_format": "{name}-{0}", + "first_port_name": "", + "headless": False, + "linked_clone": False, + "name": "VirtualBox appliance", + "on_close": "power_off", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "ram": 256, + "symbol": ":/symbols/vbox_guest.svg", + "use_any_adapter": False, + "vmname": "My VirtualBox VM"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + +def test_vpcs_appliance_create(http_controller): + + params = {"name": "VPCS appliance", + "compute_id": "local", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": False, + "category": "guest", + "compute_id": "local", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS appliance", + "symbol": ":/symbols/vpcs_guest.svg"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + +def test_ethernet_switch_appliance_create(http_controller): + + params = {"name": "Ethernet switch appliance", + "compute_id": "local", + "appliance_type": "ethernet_switch"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "ethernet_switch", + "builtin": False, + "category": "switch", + "compute_id": "local", + "console_type": "telnet", + "default_name_format": "Switch{0}", + "name": "Ethernet switch appliance", + "ports_mapping": [{"ethertype": "", + "name": "Ethernet0", + "port_number": 0, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet1", + "port_number": 1, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet2", + "port_number": 2, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet3", + "port_number": 3, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet4", + "port_number": 4, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet5", + "port_number": 5, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet6", + "port_number": 6, + "type": "access", + "vlan": 1 + }, + {"ethertype": "", + "name": "Ethernet7", + "port_number": 7, + "type": "access", + "vlan": 1 + }], + "symbol": ":/symbols/ethernet_switch.svg"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_cloud_appliance_create(http_controller): + + params = {"name": "Cloud appliance", + "compute_id": "local", + "appliance_type": "cloud"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"appliance_type": "cloud", + "builtin": False, + "category": "guest", + "compute_id": "local", + "default_name_format": "Cloud{0}", + "name": "Cloud appliance", + "symbol": ":/symbols/cloud.svg"} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + +def test_ethernet_hub_appliance_create(http_controller): + + params = {"name": "Ethernet hub appliance", + "compute_id": "local", + "appliance_type": "ethernet_hub"} + + response = http_controller.post("/appliances", params, example=True) + assert response.status == 201 + assert response.json["appliance_id"] is not None + + expected_response = {"ports_mapping": [{"port_number": 0, + "name": "Ethernet0" + }, + {"port_number": 1, + "name": "Ethernet1" + }, + {"port_number": 2, + "name": "Ethernet2" + }, + {"port_number": 3, + "name": "Ethernet3" + }, + {"port_number": 4, + "name": "Ethernet4" + }, + {"port_number": 5, + "name": "Ethernet5" + }, + {"port_number": 6, + "name": "Ethernet6" + }, + {"port_number": 7, + "name": "Ethernet7" + }], + "compute_id": "local", + "name": "Ethernet hub appliance", + "symbol": ":/symbols/hub.svg", + "default_name_format": "Hub{0}", + "appliance_type": "ethernet_hub", + "category": "switch", + "builtin": False} + + for item, value in expected_response.items(): + assert response.json.get(item) == value + + def test_create_node_from_appliance(http_controller, controller, project, compute): id = str(uuid.uuid4()) @@ -209,6 +954,5 @@ def test_create_node_from_appliance(http_controller, controller, project, comput "y": 12 }) mock.assert_called_with(id, x=42, y=12, compute_id=None) - print(response.body) assert response.route == "/projects/{project_id}/appliances/{appliance_id}" assert response.status == 201 From 499ab9844a0d596f029009b68a4c0929b7261be7 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 18:12:46 +0700 Subject: [PATCH 14/33] Reorganize how appliance creation is validated against JSON schemas. This allows for clearer error messages when validation fails. --- gns3server/controller/__init__.py | 15 +- gns3server/controller/appliance.py | 94 +- .../api/controller/appliance_handler.py | 3 +- gns3server/schemas/appliance.py | 1205 +---------------- gns3server/schemas/cloud_appliance.py | 61 + gns3server/schemas/docker_appliance.py | 95 ++ gns3server/schemas/dynamips_appliance.py | 399 ++++++ gns3server/schemas/ethernet_hub_appliance.py | 80 ++ .../schemas/ethernet_switch_appliance.py | 127 ++ gns3server/schemas/iou_appliance.py | 87 ++ gns3server/schemas/qemu_appliance.py | 217 +++ gns3server/schemas/traceng_appliance.py | 51 + gns3server/schemas/virtualbox_appliance.py | 113 ++ gns3server/schemas/vmware_appliance.py | 101 ++ gns3server/schemas/vpcs_appliance.py | 52 + gns3server/web/route.py | 55 +- tests/controller/test_appliance.py | 67 +- tests/controller/test_project.py | 23 +- .../handlers/api/controller/test_appliance.py | 4 - 19 files changed, 1524 insertions(+), 1325 deletions(-) create mode 100644 gns3server/schemas/cloud_appliance.py create mode 100644 gns3server/schemas/docker_appliance.py create mode 100644 gns3server/schemas/dynamips_appliance.py create mode 100644 gns3server/schemas/ethernet_hub_appliance.py create mode 100644 gns3server/schemas/ethernet_switch_appliance.py create mode 100644 gns3server/schemas/iou_appliance.py create mode 100644 gns3server/schemas/qemu_appliance.py create mode 100644 gns3server/schemas/traceng_appliance.py create mode 100644 gns3server/schemas/virtualbox_appliance.py create mode 100644 gns3server/schemas/vmware_appliance.py create mode 100644 gns3server/schemas/vpcs_appliance.py diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index da316b52..0d3235d9 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -23,6 +23,7 @@ import socket import shutil import asyncio import aiohttp +import jsonschema from ..config import Config from .project import Project @@ -144,10 +145,9 @@ class Controller: appliance_id = settings.setdefault("appliance_id", str(uuid.uuid4())) try: appliance = Appliance(appliance_id, settings) - appliance.__json__() # Check if loaded without error - except KeyError as e: - # appliance settings is not complete - raise aiohttp.web.HTTPConflict(text="Cannot create new appliance: key '{}' is missing for appliance ID '{}'".format(e, appliance_id)) + except jsonschema.ValidationError as e: + message = "JSON schema error adding appliance with JSON data '{}': {}".format(settings, e.message) + raise aiohttp.web.HTTPBadRequest(text=message) self._appliances[appliance.id] = appliance self.save() self.notification.controller_emit("appliance.created", appliance.__json__()) @@ -327,11 +327,10 @@ class Controller: for appliance_settings in controller_settings["appliances"]: try: appliance = Appliance(appliance_settings["appliance_id"], appliance_settings) - appliance.__json__() # Check if loaded without error self._appliances[appliance.id] = appliance - except KeyError as e: - # appliance data is not complete (missing name or type) - log.warning("Cannot load appliance template {} ('{}'): missing key {}".format(appliance_settings["appliance_id"], appliance_settings.get("name", "unknown"), e)) + except jsonschema.ValidationError as e: + message = "Cannot load appliance with JSON data '{}': {}".format(appliance_settings, e.message) + log.warning(message) continue # load GNS3 VM settings diff --git a/gns3server/controller/appliance.py b/gns3server/controller/appliance.py index ecc304ce..65075938 100644 --- a/gns3server/controller/appliance.py +++ b/gns3server/controller/appliance.py @@ -17,6 +17,56 @@ import copy import uuid +import json +import jsonschema + +from gns3server.schemas.cloud_appliance import CLOUD_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.ethernet_switch_appliance import ETHERNET_SWITCH_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.ethernet_hub_appliance import ETHERNET_HUB_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.docker_appliance import DOCKER_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.vpcs_appliance import VPCS_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.traceng_appliance import TRACENG_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.virtualbox_appliance import VIRTUALBOX_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.vmware_appliance import VMWARE_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.iou_appliance import IOU_APPLIANCE_OBJECT_SCHEMA +from gns3server.schemas.qemu_appliance import QEMU_APPLIANCE_OBJECT_SCHEMA + +from gns3server.schemas.dynamips_appliance import ( + DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C7200_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C3745_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C3725_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C3600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C2691_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C2600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + C1700_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA +) + +import logging +log = logging.getLogger(__name__) + + +# Add default values for missing entries in a request, largely taken from jsonschema documentation example +# https://python-jsonschema.readthedocs.io/en/latest/faq/#why-doesn-t-my-schema-s-default-property-set-the-default-on-my-instance +def extend_with_default(validator_class): + + validate_properties = validator_class.VALIDATORS["properties"] + def set_defaults(validator, properties, instance, schema): + if jsonschema.Draft4Validator(schema).is_valid(instance): + # only add default for the matching sub-schema (e.g. when using 'oneOf') + for property, subschema in properties.items(): + if "default" in subschema: + instance.setdefault(property, subschema["default"]) + + for error in validate_properties(validator, properties, instance, schema,): + yield error + + return jsonschema.validators.extend( + validator_class, {"properties" : set_defaults}, + ) + + +ValidatorWithDefaults = extend_with_default(jsonschema.Draft4Validator) ID_TO_CATEGORY = { 3: "firewall", @@ -25,6 +75,30 @@ ID_TO_CATEGORY = { 0: "router" } +APPLIANCE_TYPE_TO_SHEMA = { + "cloud": CLOUD_APPLIANCE_OBJECT_SCHEMA, + "ethernet_hub": ETHERNET_HUB_APPLIANCE_OBJECT_SCHEMA, + "ethernet_switch": ETHERNET_SWITCH_APPLIANCE_OBJECT_SCHEMA, + "docker": DOCKER_APPLIANCE_OBJECT_SCHEMA, + "dynamips": DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "vpcs": VPCS_APPLIANCE_OBJECT_SCHEMA, + "traceng": TRACENG_APPLIANCE_OBJECT_SCHEMA, + "virtualbox": VIRTUALBOX_APPLIANCE_OBJECT_SCHEMA, + "vmware": VMWARE_APPLIANCE_OBJECT_SCHEMA, + "iou": IOU_APPLIANCE_OBJECT_SCHEMA, + "qemu": QEMU_APPLIANCE_OBJECT_SCHEMA +} + +DYNAMIPS_PLATFORM_TO_SHEMA = { + "c7200": C7200_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c3745": C3745_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c3725": C3725_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c3600": C3600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c2691": C2691_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c2600": C2600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA, + "c1700": C1700_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA +} + class Appliance: @@ -66,6 +140,13 @@ class Appliance: self._builtin = builtin + if builtin is False: + self.validate_and_apply_defaults(APPLIANCE_TYPE_TO_SHEMA[self.appliance_type]) + + if self.appliance_type == "dynamips": + # special case for Dynamips to cover all platform types that contain specific settings + self.validate_and_apply_defaults(DYNAMIPS_PLATFORM_TO_SHEMA[self._settings["platform"]]) + @property def id(self): return self._id @@ -102,6 +183,17 @@ class Appliance: controller.notification.controller_emit("appliance.updated", self.__json__()) controller.save() + def validate_and_apply_defaults(self, schema): + + validator = ValidatorWithDefaults(schema) + try: + validator.validate(self.__json__()) + except jsonschema.ValidationError as e: + message = "JSON schema error {}".format(e.message) + log.error(message) + log.debug("Input schema: {}".format(json.dumps(schema))) + raise + def __json__(self): """ Appliance settings. @@ -109,8 +201,6 @@ class Appliance: settings = self._settings settings.update({"appliance_id": self._id, - "default_name_format": settings.get("default_name_format", "{name}-{0}"), - "symbol": settings.get("symbol", ":/symbols/computer.svg"), "builtin": self.builtin}) if not self.builtin: diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index 3ee979aa..4c3115f7 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -58,8 +58,7 @@ class ApplianceHandler: 400: "Invalid request" }, input=APPLIANCE_CREATE_SCHEMA, - output=APPLIANCE_OBJECT_SCHEMA, - set_input_schema_defaults=True) + output=APPLIANCE_OBJECT_SCHEMA) def create(request, response): controller = Controller.instance() diff --git a/gns3server/schemas/appliance.py b/gns3server/schemas/appliance.py index 764245e8..e8cba49b 100644 --- a/gns3server/schemas/appliance.py +++ b/gns3server/schemas/appliance.py @@ -16,20 +16,20 @@ # along with this program. If not, see . import copy -from .dynamips_vm import DYNAMIPS_ADAPTERS, DYNAMIPS_WICS -from .qemu import QEMU_PLATFORMS -from .port import PORT_OBJECT_SCHEMA -from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA - BASE_APPLIANCE_PROPERTIES = { "appliance_id": { "description": "Appliance UUID from which the node has been created. Read only", - "type": ["null", "string"], + "type": "string", "minLength": 36, "maxLength": 36, "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, + "appliance_type": { + "description": "Type of node", + "enum": ["cloud", "ethernet_hub", "ethernet_switch", "docker", "dynamips", "vpcs", "traceng", + "virtualbox", "vmware", "iou", "qemu"] + }, "name": { "description": "Appliance name", "type": "string", @@ -62,1200 +62,12 @@ BASE_APPLIANCE_PROPERTIES = { }, } -DYNAMIPS_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["dynamips"] - }, - "image": { - "description": "Path to the IOS image", - "type": "string", - "minLength": 1 - }, - "mmap": { - "description": "MMAP feature", - "type": "boolean", - "default": True - }, - "exec_area": { - "description": "Exec area value", - "type": "integer", - "default": 64 - }, - "mac_addr": { - "description": "Base MAC address", - "type": "string", - "anyOf": [ - {"pattern": "^([0-9a-fA-F]{4}\\.){2}[0-9a-fA-F]{4}$"}, - {"pattern": "^$"} - ], - "default": "" - }, - "system_id": { - "description": "System ID", - "type": "string", - "minLength": 1, - "default": "FTX0945W0MY" - }, - "startup_config": { - "description": "IOS startup configuration file", - "type": "string", - "default": "ios_base_startup-config.txt" - }, - "private_config": { - "description": "IOS private configuration file", - "type": "string", - "default": "" - }, - "idlepc": { - "description": "Idle-PC value", - "type": "string", - "pattern": "^(0x[0-9a-fA-F]+)?$", - "default": "" - }, - "idlemax": { - "description": "Idlemax value", - "type": "integer", - "default": 500 - }, - "idlesleep": { - "description": "Idlesleep value", - "type": "integer", - "default": 30 - }, - "disk0": { - "description": "Disk0 size in MB", - "type": "integer", - "default": 0 - }, - "disk1": { - "description": "Disk1 size in MB", - "type": "integer", - "default": 0 - }, - "auto_delete_disks": { - "description": "Automatically delete nvram and disk files", - "type": "boolean", - "default": False - }, - "wic0": DYNAMIPS_WICS, - "wic1": DYNAMIPS_WICS, - "wic2": DYNAMIPS_WICS, - "slot0": DYNAMIPS_ADAPTERS, - "slot1": DYNAMIPS_ADAPTERS, - "slot2": DYNAMIPS_ADAPTERS, - "slot3": DYNAMIPS_ADAPTERS, - "slot4": DYNAMIPS_ADAPTERS, - "slot5": DYNAMIPS_ADAPTERS, - "slot6": DYNAMIPS_ADAPTERS, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "telnet" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - } -} - -DYNAMIPS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -DYNAMIPS_APPLIANCE_PROPERTIES["category"]["default"] = "router" -DYNAMIPS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "R{0}" -DYNAMIPS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/router.svg" - -C7200_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c7200"] - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 512 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 512 - }, - "npe": { - "description": "NPE model", - "enum": ["npe-100", "npe-150", "npe-175", "npe-200", "npe-225", "npe-300", "npe-400", "npe-g2"], - "default": "npe-400" - }, - "midplane": { - "description": "Midplane model", - "enum": ["std", "vxr"], - "default": "vxr" - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C7200_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C3745_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c3745"] - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 256 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 256 - }, - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 5 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C3745_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C3725_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c3725"] - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 128 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 256 - }, - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 5 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C3725_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C3600_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c3600"] - }, - "chassis": { - "description": "Chassis type", - "enum": ["3620", "3640", "3660"], - "default": "3660" - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 192 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 128 - }, - - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 5 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C3600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C2691_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c2691"] - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 192 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 256 - }, - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 5 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C2691_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C2600_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c2600"] - }, - "chassis": { - "description": "Chassis type", - "enum": ["2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", "2621XM", "2651XM"], - "default": "2651XM" - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 160 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 128 - }, - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 15 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": True - } -} - -C2600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -C1700_DYNAMIPS_APPLIANCE_PROPERTIES = { - "platform": { - "description": "Platform type", - "enum": ["c1700"] - }, - "chassis": { - "description": "Chassis type", - "enum": ["1720", "1721", "1750", "1751", "1760"], - "default": "1760" - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 160 - }, - "nvram": { - "description": "Amount of NVRAM in KB", - "type": "integer", - "default": 128 - }, - "iomem": { - "description": "I/O memory percentage", - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": 15 - }, - "sparsemem": { - "description": "Sparse memory feature", - "type": "boolean", - "default": False - } -} - -C1700_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) - -IOU_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["iou"] - }, - "path": { - "description": "Path of IOU executable", - "type": "string", - "minLength": 1 - }, - "ethernet_adapters": { - "description": "Number of ethernet adapters", - "type": "integer", - "default": 2 - }, - "serial_adapters": { - "description": "Number of serial adapters", - "type": "integer", - "default": 2 - }, - "ram": { - "description": "RAM in MB", - "type": "integer", - "default": 256 - }, - "nvram": { - "description": "NVRAM in KB", - "type": "integer", - "default": 128 - }, - "use_default_iou_values": { - "description": "Use default IOU values", - "type": "boolean", - "default": True - }, - "startup_config": { - "description": "Startup-config of IOU", - "type": "string", - "default": "iou_l3_base_startup-config.txt" - }, - "private_config": { - "description": "Private-config of IOU", - "type": "string", - "default": "" - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "telnet" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - }, -} - -IOU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -IOU_APPLIANCE_PROPERTIES["category"]["default"] = "router" -IOU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "IOU{0}" -IOU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/multilayer_switch.svg" - -DOCKER_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["docker"] - }, - "image": { - "description": "Docker image name", - "type": "string", - "minLength": 1 - }, - "adapters": { - "description": "Number of adapters", - "type": "integer", - "minimum": 0, - "maximum": 99, - "default": 1 - }, - "start_command": { - "description": "Docker CMD entry", - "type": "string", - "default": "" - }, - "environment": { - "description": "Docker environment variables", - "type": "string", - "default": "" - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "vnc", "http", "https", "none"], - "default": "telnet" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False, - }, - "console_http_port": { - "description": "Internal port in the container for the HTTP server", - "type": "integer", - "minimum": 1, - "maximum": 65535, - "default": 80 - }, - "console_http_path": { - "description": "Path of the web interface", - "type": "string", - "minLength": 1, - "default": "/" - }, - "console_resolution": { - "description": "Console resolution for VNC", - "type": "string", - "pattern": "^[0-9]+x[0-9]+$", - "default": "1024x768" - }, - "extra_hosts": { - "description": "Docker extra hosts (added to /etc/hosts)", - "type": "string", - "default": "", - }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA -} - -DOCKER_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -DOCKER_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -DOCKER_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" -DOCKER_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/docker_guest.svg" - -QEMU_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["qemu"] - }, - "usage": { - "description": "How to use the Qemu VM", - "type": "string", - "default": "" - }, - "qemu_path": { - "description": "Path to QEMU", - "type": "string", - "default": "" - }, - "platform": { - "description": "Platform to emulate", - "enum": QEMU_PLATFORMS, - "default": "i386" - }, - "linked_clone": { - "description": "Whether the VM is a linked clone or not", - "type": "boolean", - "default": True - }, - "ram": { - "description": "Amount of RAM in MB", - "type": "integer", - "default": 256 - }, - "cpus": { - "description": "Number of vCPUs", - "type": "integer", - "minimum": 1, - "maximum": 255, - "default": 1 - }, - "adapters": { - "description": "Number of adapters", - "type": "integer", - "minimum": 0, - "maximum": 275, - "default": 1 - }, - "adapter_type": { - "description": "QEMU adapter type", - "type": "string", - "enum": ["e1000", "i82550", "i82551", "i82557a", "i82557b", "i82557c", "i82558a","i82558b", "i82559a", - "i82559b", "i82559c", "i82559er", "i82562", "i82801", "ne2k_pci", "pcnet", "rtl8139", "virtio", - "virtio-net-pci", "vmxnet3"], - "default": "e1000" - }, - "mac_address": { - "description": "QEMU MAC address", - "type": "string", - "anyOf": [ - {"pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$"}, - {"pattern": "^$"} - ], - "default": "", - }, - "first_port_name": { - "description": "Optional name of the first networking port example: eth0", - "type": "string", - "default": "" - }, - "port_name_format": { - "description": "Optional formatting of the networking port example: eth{0}", - "type": "string", - "default": "Ethernet{0}" - }, - "port_segment_size": { - "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer", - "default": 0 - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "vnc", "spice", "spice+agent", "none"], - "default": "telnet" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - }, - "boot_priority": { - "description": "QEMU boot priority", - "enum": ["c", "d", "n", "cn", "cd", "dn", "dc", "nc", "nd"], - "default": "c" - }, - "hda_disk_image": { - "description": "QEMU hda disk image path", - "type": "string", - "default": "" - }, - "hda_disk_interface": { - "description": "QEMU hda interface", - "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], - "default": "ide" - }, - "hdb_disk_image": { - "description": "QEMU hdb disk image path", - "type": "string", - "default": "" - }, - "hdb_disk_interface": { - "description": "QEMU hdb interface", - "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], - "default": "ide" - }, - "hdc_disk_image": { - "description": "QEMU hdc disk image path", - "type": "string", - "default": "" - }, - "hdc_disk_interface": { - "description": "QEMU hdc interface", - "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], - "default": "ide" - }, - "hdd_disk_image": { - "description": "QEMU hdd disk image path", - "type": "string", - "default": "" - }, - "hdd_disk_interface": { - "description": "QEMU hdd interface", - "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], - "default": "ide" - }, - "cdrom_image": { - "description": "QEMU cdrom image path", - "type": "string", - "default": "" - }, - "initrd": { - "description": "QEMU initrd path", - "type": "string", - "default": "" - }, - "kernel_image": { - "description": "QEMU kernel image path", - "type": "string", - "default": "" - }, - "bios_image": { - "description": "QEMU bios image path", - "type": "string", - "default": "" - }, - "kernel_command_line": { - "description": "QEMU kernel command line", - "type": "string", - "default": "" - }, - "legacy_networking": { - "description": "Use QEMU legagy networking commands (-net syntax)", - "type": "boolean", - "default": False - }, - "on_close": { - "description": "Action to execute on the VM is closed", - "enum": ["power_off", "shutdown_signal", "save_vm_state"], - "default": "power_off" - }, - "cpu_throttling": { - "description": "Percentage of CPU allowed for QEMU", - "minimum": 0, - "maximum": 800, - "type": "integer", - "default": 0 - }, - "process_priority": { - "description": "Process priority for QEMU", - "enum": ["realtime", "very high", "high", "normal", "low", "very low"], - "default": "normal" - }, - "options": { - "description": "Additional QEMU options", - "type": "string", - "default": "" - }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA -} - -QEMU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -QEMU_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -QEMU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" -QEMU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/qemu_guest.svg" - -VMWARE_VM_SETTINGS = { - "vmx_path": "", - - - "console_type": "none", - "console_auto_start": False, -} - -VMWARE_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["vmware"] - }, - "vmx_path": { - "description": "Path to the vmx file", - "type": "string", - "minLength": 1, - }, - "linked_clone": { - "description": "Whether the VM is a linked clone or not", - "type": "boolean", - "default": False - }, - "first_port_name": { - "description": "Optional name of the first networking port example: eth0", - "type": "string", - "default": "" - }, - "port_name_format": { - "description": "Optional formatting of the networking port example: eth{0}", - "type": "string", - "default": "Ethernet{0}" - }, - "port_segment_size": { - "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer", - "default": 0 - }, - "adapters": { - "description": "Number of adapters", - "type": "integer", - "minimum": 0, - "maximum": 10, # maximum adapters support by VMware VMs, - "default": 1 - }, - "adapter_type": { - "description": "VMware adapter type", - "enum": ["default", "e1000", "e1000e", "flexible", "vlance", "vmxnet", "vmxnet2", "vmxnet3"], - "default": "e1000" - }, - "use_any_adapter": { - "description": "Allow GNS3 to use any VMware adapter", - "type": "boolean", - "default": False - }, - "headless": { - "description": "Headless mode", - "type": "boolean", - "default": False - }, - "on_close": { - "description": "Action to execute on the VM is closed", - "enum": ["power_off", "shutdown_signal", "save_vm_state"], - "default": "power_off" - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "none" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA -} - -VMWARE_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -VMWARE_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -VMWARE_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" -VMWARE_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vmware_guest.svg" - -VIRTUALBOX_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["virtualbox"] - }, - "vmname": { - "description": "VirtualBox VM name (in VirtualBox itself)", - "type": "string", - "minLength": 1, - }, - "ram": { - "description": "Amount of RAM", - "minimum": 0, - "maximum": 65535, - "type": "integer", - "default": 256 - }, - "linked_clone": { - "description": "Whether the VM is a linked clone or not", - "type": "boolean", - "default": False - }, - "adapters": { - "description": "Number of adapters", - "type": "integer", - "minimum": 0, - "maximum": 36, # maximum given by the ICH9 chipset in VirtualBox - "default": 1 - }, - "use_any_adapter": { - "description": "Allow GNS3 to use any VirtualBox adapter", - "type": "boolean", - "default": False - }, - "adapter_type": { - "description": "VirtualBox adapter type", - "enum": ["PCnet-PCI II (Am79C970A)", - "PCNet-FAST III (Am79C973)", - "Intel PRO/1000 MT Desktop (82540EM)", - "Intel PRO/1000 T Server (82543GC)", - "Intel PRO/1000 MT Server (82545EM)", - "Paravirtualized Network (virtio-net)"], - "default": "Intel PRO/1000 MT Desktop (82540EM)" - }, - "first_port_name": { - "description": "Optional name of the first networking port example: eth0", - "type": "string", - "default": "" - }, - "port_name_format": { - "description": "Optional formatting of the networking port example: eth{0}", - "type": "string", - "default": "Ethernet{0}" - }, - "port_segment_size": { - "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", - "type": "integer", - "default": 0 - }, - "headless": { - "description": "Headless mode", - "type": "boolean", - "default": False - }, - "on_close": { - "description": "Action to execute on the VM is closed", - "enum": ["power_off", "shutdown_signal", "save_vm_state"], - "default": "power_off" - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "none" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA -} - -VIRTUALBOX_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -VIRTUALBOX_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -VIRTUALBOX_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" -VIRTUALBOX_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vbox_guest.svg" - -TRACENG_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["traceng"] - }, - "ip_address": { - "description": "Source IP address for tracing", - "type": ["string"], - "minLength": 1 - }, - "default_destination": { - "description": "Default destination IP address or hostname for tracing", - "type": ["string"], - "minLength": 1 - }, - "console_type": { - "description": "Console type", - "enum": ["none"], - "default": "none" - }, -} - -TRACENG_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -TRACENG_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -TRACENG_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "TraceNG{0}" -TRACENG_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/traceng.svg" - -VPCS_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["vpcs"] - }, - "base_script_file": { - "description": "Script file", - "type": "string", - "minLength": 1, - "default": "vpcs_base_config.txt" - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "telnet" - }, - "console_auto_start": { - "description": "Automatically start the console when the node has started", - "type": "boolean", - "default": False - }, -} - -VPCS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -VPCS_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -VPCS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "PC{0}" -VPCS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vpcs_guest.svg" - -ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["ethernet_switch"] - }, - "ports_mapping": { - "type": "array", - "default": [{"ethertype": "", - "name": "Ethernet0", - "vlan": 1, - "type": "access", - "port_number": 0 - }, - {"ethertype": "", - "name": "Ethernet1", - "vlan": 1, - "type": "access", - "port_number": 1 - }, - {"ethertype": "", - "name": "Ethernet2", - "vlan": 1, - "type": "access", - "port_number": 2 - }, - {"ethertype": "", - "name": "Ethernet3", - "vlan": 1, - "type": "access", - "port_number": 3 - }, - {"ethertype": "", - "name": "Ethernet4", - "vlan": 1, - "type": "access", - "port_number": 4 - }, - {"ethertype": "", - "name": "Ethernet5", - "vlan": 1, - "type": "access", - "port_number": 5 - }, - {"ethertype": "", - "name": "Ethernet6", - "vlan": 1, - "type": "access", - "port_number": 6 - }, - {"ethertype": "", - "name": "Ethernet7", - "vlan": 1, - "type": "access", - "port_number": 7 - } - ], - "items": [ - {"type": "object", - "oneOf": [ - { - "description": "Ethernet port", - "properties": { - "name": { - "description": "Port name", - "type": "string", - "minLength": 1 - }, - "port_number": { - "description": "Port number", - "type": "integer", - "minimum": 0 - }, - "type": { - "description": "Port type", - "enum": ["access", "dot1q", "qinq"], - }, - "vlan": {"description": "VLAN number", - "type": "integer", - "minimum": 1 - }, - "ethertype": { - "description": "QinQ Ethertype", - "enum": ["", "0x8100", "0x88A8", "0x9100", "0x9200"], - }, - }, - "required": ["name", "port_number", "type"], - "additionalProperties": False - }, - ]}, - ] - }, - "console_type": { - "description": "Console type", - "enum": ["telnet", "none"], - "default": "telnet" - }, -} - -ETHERNET_SWITCH_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -ETHERNET_SWITCH_APPLIANCE_PROPERTIES["category"]["default"] = "switch" -ETHERNET_SWITCH_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Switch{0}" -ETHERNET_SWITCH_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/ethernet_switch.svg" - -ETHERNET_HUB_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["ethernet_hub"] - }, - "ports_mapping": { - "type": "array", - "default": [{"port_number": 0, - "name": "Ethernet0" - }, - {"port_number": 1, - "name": "Ethernet1" - }, - {"port_number": 2, - "name": "Ethernet2" - }, - {"port_number": 3, - "name": "Ethernet3" - }, - {"port_number": 4, - "name": "Ethernet4" - }, - {"port_number": 5, - "name": "Ethernet5" - }, - {"port_number": 6, - "name": "Ethernet6" - }, - {"port_number": 7, - "name": "Ethernet7" - } - ], - "items": [ - {"type": "object", - "oneOf": [{"description": "Ethernet port", - "properties": {"name": {"description": "Port name", - "type": "string", - "minLength": 1}, - "port_number": { - "description": "Port number", - "type": "integer", - "minimum": 0} - }, - "required": ["name", "port_number"], - "additionalProperties": False} - ], - } - ] - } -} - -ETHERNET_HUB_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -ETHERNET_HUB_APPLIANCE_PROPERTIES["category"]["default"] = "switch" -ETHERNET_HUB_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Hub{0}" -ETHERNET_HUB_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/hub.svg" - -CLOUD_APPLIANCE_PROPERTIES = { - "appliance_type": { - "enum": ["cloud"] - }, - "ports_mapping": { - "type": "array", - "items": [ - PORT_OBJECT_SCHEMA - ] - }, - "remote_console_host": { - "description": "Remote console host or IP", - "type": ["string"], - "minLength": 1 - }, - "remote_console_port": { - "description": "Console TCP port", - "minimum": 1, - "maximum": 65535, - "type": "integer" - }, - "remote_console_type": { - "description": "Console type", - "enum": ["telnet", "vnc", "spice", "http", "https", "none"] - }, - "remote_console_http_path": { - "description": "Path of the remote web interface", - "type": "string", - "minLength": 1 - }, -} - -CLOUD_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) -CLOUD_APPLIANCE_PROPERTIES["category"]["default"] = "guest" -CLOUD_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Cloud{0}" -CLOUD_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/cloud.svg" - APPLIANCE_OBJECT_SCHEMA = { "$schema": "http://json-schema.org/draft-04/schema#", "description": "A template object", "type": "object", - "definitions": { - "c7200": { - "description": "c7200 appliance", - "properties": C7200_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image"] - }, - "c3745": { - "description": "c3745 appliance", - "properties": C3745_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image"] - }, - "c3725": { - "description": "c3725 appliance", - "properties": C3725_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image"] - }, - "c3600": { - "description": "c3600 appliance", - "properties": C3600_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image", "chassis"] - }, - "c2691": { - "description": "c2691 appliance", - "properties": C2691_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image"] - }, - "c2600": { - "description": "c2600 appliance", - "properties": C2600_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image", "chassis"] - }, - "c1700": { - "description": "c1700 appliance", - "properties": C1700_DYNAMIPS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["platform", "image", "chassis"] - }, - "IOU": { - "description": "IOU appliance", - "properties": IOU_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["path"] - }, - "Docker": { - "description": "Docker appliance", - "properties": DOCKER_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["image"] - }, - "Qemu": { - "description": "Qemu appliance", - "properties": QEMU_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - "VMware": { - "description": "VMware appliance", - "properties": VMWARE_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["vmx_path"] - }, - "VirtualBox": { - "description": "VirtualBox appliance", - "properties": VIRTUALBOX_APPLIANCE_PROPERTIES, - "additionalProperties": False, - "required": ["vmname"] - }, - "TraceNG": { - "description": "TraceNG appliance", - "properties": TRACENG_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - "VPCS": { - "description": "VPCS appliance", - "properties": VPCS_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - "EthernetSwitch": { - "description": "Ethernet switch appliance", - "properties": ETHERNET_SWITCH_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - "EthernetHub": { - "description": "Ethernet hub appliance", - "properties": ETHERNET_HUB_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - "Cloud": { - "description": "Cloud appliance", - "properties": CLOUD_APPLIANCE_PROPERTIES, - "additionalProperties": False, - }, - }, - "oneOf": [ - {"$ref": "#/definitions/c7200"}, - {"$ref": "#/definitions/c3745"}, - {"$ref": "#/definitions/c3725"}, - {"$ref": "#/definitions/c3600"}, - {"$ref": "#/definitions/c2691"}, - {"$ref": "#/definitions/c2600"}, - {"$ref": "#/definitions/c1700"}, - {"$ref": "#/definitions/IOU"}, - {"$ref": "#/definitions/Docker"}, - {"$ref": "#/definitions/Qemu"}, - {"$ref": "#/definitions/VMware"}, - {"$ref": "#/definitions/VirtualBox"}, - {"$ref": "#/definitions/TraceNG"}, - {"$ref": "#/definitions/VPCS"}, - {"$ref": "#/definitions/EthernetSwitch"}, - {"$ref": "#/definitions/EthernetHub"}, - {"$ref": "#/definitions/Cloud"}, - ], - "required": ["name", "appliance_type", "appliance_id", "category", "compute_id", "default_name_format", "symbol"] + "properties": BASE_APPLIANCE_PROPERTIES, + "required": ["name", "appliance_type", "appliance_id", "category", "compute_id", "default_name_format", "symbol", "builtin"] } APPLIANCE_CREATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) @@ -1266,6 +78,7 @@ APPLIANCE_CREATE_SCHEMA["required"].remove("appliance_id") APPLIANCE_CREATE_SCHEMA["required"].remove("category") APPLIANCE_CREATE_SCHEMA["required"].remove("default_name_format") APPLIANCE_CREATE_SCHEMA["required"].remove("symbol") +APPLIANCE_CREATE_SCHEMA["required"].remove("builtin") # update schema APPLIANCE_UPDATE_SCHEMA = copy.deepcopy(APPLIANCE_OBJECT_SCHEMA) diff --git a/gns3server/schemas/cloud_appliance.py b/gns3server/schemas/cloud_appliance.py new file mode 100644 index 00000000..64136c10 --- /dev/null +++ b/gns3server/schemas/cloud_appliance.py @@ -0,0 +1,61 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .port import PORT_OBJECT_SCHEMA + + +CLOUD_APPLIANCE_PROPERTIES = { + "ports_mapping": { + "type": "array", + "items": [PORT_OBJECT_SCHEMA] + }, + "remote_console_host": { + "description": "Remote console host or IP", + "type": ["string"], + "minLength": 1 + }, + "remote_console_port": { + "description": "Console TCP port", + "minimum": 1, + "maximum": 65535, + "type": "integer" + }, + "remote_console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "spice", "http", "https", "none"] + }, + "remote_console_http_path": { + "description": "Path of the remote web interface", + "type": "string", + "minLength": 1 + }, +} + +CLOUD_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +CLOUD_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +CLOUD_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Cloud{0}" +CLOUD_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/cloud.svg" + +CLOUD_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A cloud template object", + "type": "object", + "properties": CLOUD_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/schemas/docker_appliance.py b/gns3server/schemas/docker_appliance.py new file mode 100644 index 00000000..b5b6e241 --- /dev/null +++ b/gns3server/schemas/docker_appliance.py @@ -0,0 +1,95 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA + + +DOCKER_APPLIANCE_PROPERTIES = { + "image": { + "description": "Docker image name", + "type": "string", + "minLength": 1 + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 99, + "default": 1 + }, + "start_command": { + "description": "Docker CMD entry", + "type": "string", + "default": "" + }, + "environment": { + "description": "Docker environment variables", + "type": "string", + "default": "" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "http", "https", "none"], + "default": "telnet" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False, + }, + "console_http_port": { + "description": "Internal port in the container for the HTTP server", + "type": "integer", + "minimum": 1, + "maximum": 65535, + "default": 80 + }, + "console_http_path": { + "description": "Path of the web interface", + "type": "string", + "minLength": 1, + "default": "/" + }, + "console_resolution": { + "description": "Console resolution for VNC", + "type": "string", + "pattern": "^[0-9]+x[0-9]+$", + "default": "1024x768" + }, + "extra_hosts": { + "description": "Docker extra hosts (added to /etc/hosts)", + "type": "string", + "default": "", + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +DOCKER_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +DOCKER_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +DOCKER_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +DOCKER_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/docker_guest.svg" + +DOCKER_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A Docker template object", + "type": "object", + "properties": DOCKER_APPLIANCE_PROPERTIES, + "required": ["image"], + "additionalProperties": False +} diff --git a/gns3server/schemas/dynamips_appliance.py b/gns3server/schemas/dynamips_appliance.py new file mode 100644 index 00000000..5aa2a23b --- /dev/null +++ b/gns3server/schemas/dynamips_appliance.py @@ -0,0 +1,399 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .dynamips_vm import DYNAMIPS_ADAPTERS, DYNAMIPS_WICS + + +DYNAMIPS_APPLIANCE_PROPERTIES = { + "platform": { + "description": "Platform type", + "enum": ["c7200", "c3745", "c3725", "c3600", "c2691", "c2600", "c1700"] + }, + "image": { + "description": "Path to the IOS image", + "type": "string", + "minLength": 1 + }, + "mmap": { + "description": "MMAP feature", + "type": "boolean", + "default": True + }, + "exec_area": { + "description": "Exec area value", + "type": "integer", + "default": 64 + }, + "mac_addr": { + "description": "Base MAC address", + "type": "string", + "anyOf": [ + {"pattern": "^([0-9a-fA-F]{4}\\.){2}[0-9a-fA-F]{4}$"}, + {"pattern": "^$"} + ], + "default": "" + }, + "system_id": { + "description": "System ID", + "type": "string", + "minLength": 1, + "default": "FTX0945W0MY" + }, + "startup_config": { + "description": "IOS startup configuration file", + "type": "string", + "default": "ios_base_startup-config.txt" + }, + "private_config": { + "description": "IOS private configuration file", + "type": "string", + "default": "" + }, + "idlepc": { + "description": "Idle-PC value", + "type": "string", + "pattern": "^(0x[0-9a-fA-F]+)?$", + "default": "" + }, + "idlemax": { + "description": "Idlemax value", + "type": "integer", + "default": 500 + }, + "idlesleep": { + "description": "Idlesleep value", + "type": "integer", + "default": 30 + }, + "disk0": { + "description": "Disk0 size in MB", + "type": "integer", + "default": 0 + }, + "disk1": { + "description": "Disk1 size in MB", + "type": "integer", + "default": 0 + }, + "auto_delete_disks": { + "description": "Automatically delete nvram and disk files", + "type": "boolean", + "default": False + }, + "wic0": DYNAMIPS_WICS, + "wic1": DYNAMIPS_WICS, + "wic2": DYNAMIPS_WICS, + "slot0": DYNAMIPS_ADAPTERS, + "slot1": DYNAMIPS_ADAPTERS, + "slot2": DYNAMIPS_ADAPTERS, + "slot3": DYNAMIPS_ADAPTERS, + "slot4": DYNAMIPS_ADAPTERS, + "slot5": DYNAMIPS_ADAPTERS, + "slot6": DYNAMIPS_ADAPTERS, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "telnet" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + } +} + +DYNAMIPS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +DYNAMIPS_APPLIANCE_PROPERTIES["category"]["default"] = "router" +DYNAMIPS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "R{0}" +DYNAMIPS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/router.svg" + +DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A Dynamips template object", + "type": "object", + "properties": DYNAMIPS_APPLIANCE_PROPERTIES, + "required": ["platform", "image"], +} + +C7200_DYNAMIPS_APPLIANCE_PROPERTIES = { + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 512 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 512 + }, + "npe": { + "description": "NPE model", + "enum": ["npe-100", "npe-150", "npe-175", "npe-200", "npe-225", "npe-300", "npe-400", "npe-g2"], + "default": "npe-400" + }, + "midplane": { + "description": "Midplane model", + "enum": ["std", "vxr"], + "default": "vxr" + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C7200_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C7200_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c7200 Dynamips template object", + "type": "object", + "properties": C7200_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False +} + +C3745_DYNAMIPS_APPLIANCE_PROPERTIES = { + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 256 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3745_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3745_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c3745 Dynamips template object", + "type": "object", + "properties": C3745_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False +} + +C3725_DYNAMIPS_APPLIANCE_PROPERTIES = { + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 128 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3725_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3725_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c3725 Dynamips template object", + "type": "object", + "properties": C3725_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False +} + +C3600_DYNAMIPS_APPLIANCE_PROPERTIES = { + "chassis": { + "description": "Chassis type", + "enum": ["3620", "3640", "3660"], + "default": "3660" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 192 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C3600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C3600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c3600 Dynamips template object", + "type": "object", + "properties": C3600_DYNAMIPS_APPLIANCE_PROPERTIES, + "required": ["chassis"], + "additionalProperties": False +} + +C2691_DYNAMIPS_APPLIANCE_PROPERTIES = { + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 192 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 256 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 5 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C2691_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C2691_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c2691 Dynamips template object", + "type": "object", + "properties": C2691_DYNAMIPS_APPLIANCE_PROPERTIES, + "additionalProperties": False +} + +C2600_DYNAMIPS_APPLIANCE_PROPERTIES = { + "chassis": { + "description": "Chassis type", + "enum": ["2610", "2620", "2610XM", "2620XM", "2650XM", "2621", "2611XM", "2621XM", "2651XM"], + "default": "2651XM" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 160 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 15 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": True + } +} + +C2600_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C2600_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c2600 Dynamips template object", + "type": "object", + "properties": C2600_DYNAMIPS_APPLIANCE_PROPERTIES, + "required": ["chassis"], + "additionalProperties": False +} + +C1700_DYNAMIPS_APPLIANCE_PROPERTIES = { + "chassis": { + "description": "Chassis type", + "enum": ["1720", "1721", "1750", "1751", "1760"], + "default": "1760" + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 160 + }, + "nvram": { + "description": "Amount of NVRAM in KB", + "type": "integer", + "default": 128 + }, + "iomem": { + "description": "I/O memory percentage", + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": 15 + }, + "sparsemem": { + "description": "Sparse memory feature", + "type": "boolean", + "default": False + } +} + +C1700_DYNAMIPS_APPLIANCE_PROPERTIES.update(DYNAMIPS_APPLIANCE_PROPERTIES) + +C1700_DYNAMIPS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A c1700 Dynamips template object", + "type": "object", + "properties": C1700_DYNAMIPS_APPLIANCE_PROPERTIES, + "required": ["chassis"], + "additionalProperties": False +} diff --git a/gns3server/schemas/ethernet_hub_appliance.py b/gns3server/schemas/ethernet_hub_appliance.py new file mode 100644 index 00000000..9b0a11b7 --- /dev/null +++ b/gns3server/schemas/ethernet_hub_appliance.py @@ -0,0 +1,80 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES + + +ETHERNET_HUB_APPLIANCE_PROPERTIES = { + "ports_mapping": { + "type": "array", + "default": [{"port_number": 0, + "name": "Ethernet0" + }, + {"port_number": 1, + "name": "Ethernet1" + }, + {"port_number": 2, + "name": "Ethernet2" + }, + {"port_number": 3, + "name": "Ethernet3" + }, + {"port_number": 4, + "name": "Ethernet4" + }, + {"port_number": 5, + "name": "Ethernet5" + }, + {"port_number": 6, + "name": "Ethernet6" + }, + {"port_number": 7, + "name": "Ethernet7" + } + ], + "items": [ + {"type": "object", + "oneOf": [{"description": "Ethernet port", + "properties": {"name": {"description": "Port name", + "type": "string", + "minLength": 1}, + "port_number": { + "description": "Port number", + "type": "integer", + "minimum": 0} + }, + "required": ["name", "port_number"], + "additionalProperties": False} + ], + } + ] + } +} + +ETHERNET_HUB_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +ETHERNET_HUB_APPLIANCE_PROPERTIES["category"]["default"] = "switch" +ETHERNET_HUB_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Hub{0}" +ETHERNET_HUB_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/hub.svg" + +ETHERNET_HUB_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "An Ethernet hub template object", + "type": "object", + "properties": ETHERNET_HUB_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/schemas/ethernet_switch_appliance.py b/gns3server/schemas/ethernet_switch_appliance.py new file mode 100644 index 00000000..a4a8f695 --- /dev/null +++ b/gns3server/schemas/ethernet_switch_appliance.py @@ -0,0 +1,127 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES + + +ETHERNET_SWITCH_APPLIANCE_PROPERTIES = { + "ports_mapping": { + "type": "array", + "default": [{"ethertype": "", + "name": "Ethernet0", + "vlan": 1, + "type": "access", + "port_number": 0 + }, + {"ethertype": "", + "name": "Ethernet1", + "vlan": 1, + "type": "access", + "port_number": 1 + }, + {"ethertype": "", + "name": "Ethernet2", + "vlan": 1, + "type": "access", + "port_number": 2 + }, + {"ethertype": "", + "name": "Ethernet3", + "vlan": 1, + "type": "access", + "port_number": 3 + }, + {"ethertype": "", + "name": "Ethernet4", + "vlan": 1, + "type": "access", + "port_number": 4 + }, + {"ethertype": "", + "name": "Ethernet5", + "vlan": 1, + "type": "access", + "port_number": 5 + }, + {"ethertype": "", + "name": "Ethernet6", + "vlan": 1, + "type": "access", + "port_number": 6 + }, + {"ethertype": "", + "name": "Ethernet7", + "vlan": 1, + "type": "access", + "port_number": 7 + } + ], + "items": [ + {"type": "object", + "oneOf": [ + { + "description": "Ethernet port", + "properties": { + "name": { + "description": "Port name", + "type": "string", + "minLength": 1 + }, + "port_number": { + "description": "Port number", + "type": "integer", + "minimum": 0 + }, + "type": { + "description": "Port type", + "enum": ["access", "dot1q", "qinq"], + }, + "vlan": {"description": "VLAN number", + "type": "integer", + "minimum": 1 + }, + "ethertype": { + "description": "QinQ Ethertype", + "enum": ["", "0x8100", "0x88A8", "0x9100", "0x9200"], + }, + }, + "required": ["name", "port_number", "type"], + "additionalProperties": False + }, + ]}, + ] + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "telnet" + }, +} + +ETHERNET_SWITCH_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["category"]["default"] = "switch" +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "Switch{0}" +ETHERNET_SWITCH_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/ethernet_switch.svg" + +ETHERNET_SWITCH_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "An Ethernet switch template object", + "type": "object", + "properties": ETHERNET_SWITCH_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/schemas/iou_appliance.py b/gns3server/schemas/iou_appliance.py new file mode 100644 index 00000000..430fb811 --- /dev/null +++ b/gns3server/schemas/iou_appliance.py @@ -0,0 +1,87 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES + + +IOU_APPLIANCE_PROPERTIES = { + "path": { + "description": "Path of IOU executable", + "type": "string", + "minLength": 1 + }, + "ethernet_adapters": { + "description": "Number of ethernet adapters", + "type": "integer", + "default": 2 + }, + "serial_adapters": { + "description": "Number of serial adapters", + "type": "integer", + "default": 2 + }, + "ram": { + "description": "RAM in MB", + "type": "integer", + "default": 256 + }, + "nvram": { + "description": "NVRAM in KB", + "type": "integer", + "default": 128 + }, + "use_default_iou_values": { + "description": "Use default IOU values", + "type": "boolean", + "default": True + }, + "startup_config": { + "description": "Startup-config of IOU", + "type": "string", + "default": "iou_l3_base_startup-config.txt" + }, + "private_config": { + "description": "Private-config of IOU", + "type": "string", + "default": "" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "telnet" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + }, +} + +IOU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +IOU_APPLIANCE_PROPERTIES["category"]["default"] = "router" +IOU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "IOU{0}" +IOU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/multilayer_switch.svg" + +IOU_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A IOU template object", + "type": "object", + "properties": IOU_APPLIANCE_PROPERTIES, + "required": ["path"], + "additionalProperties": False +} diff --git a/gns3server/schemas/qemu_appliance.py b/gns3server/schemas/qemu_appliance.py new file mode 100644 index 00000000..dd7caace --- /dev/null +++ b/gns3server/schemas/qemu_appliance.py @@ -0,0 +1,217 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA +from .qemu import QEMU_PLATFORMS + + +QEMU_APPLIANCE_PROPERTIES = { + "usage": { + "description": "How to use the Qemu VM", + "type": "string", + "default": "" + }, + "qemu_path": { + "description": "Path to QEMU", + "type": "string", + "default": "" + }, + "platform": { + "description": "Platform to emulate", + "enum": QEMU_PLATFORMS, + "default": "i386" + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean", + "default": True + }, + "ram": { + "description": "Amount of RAM in MB", + "type": "integer", + "default": 256 + }, + "cpus": { + "description": "Number of vCPUs", + "type": "integer", + "minimum": 1, + "maximum": 255, + "default": 1 + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 275, + "default": 1 + }, + "adapter_type": { + "description": "QEMU adapter type", + "type": "string", + "enum": ["e1000", "i82550", "i82551", "i82557a", "i82557b", "i82557c", "i82558a","i82558b", "i82559a", + "i82559b", "i82559c", "i82559er", "i82562", "i82801", "ne2k_pci", "pcnet", "rtl8139", "virtio", + "virtio-net-pci", "vmxnet3"], + "default": "e1000" + }, + "mac_address": { + "description": "QEMU MAC address", + "type": "string", + "anyOf": [ + {"pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$"}, + {"pattern": "^$"} + ], + "default": "", + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "default": "" + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "default": "Ethernet{0}" + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer", + "default": 0 + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "vnc", "spice", "spice+agent", "none"], + "default": "telnet" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + }, + "boot_priority": { + "description": "QEMU boot priority", + "enum": ["c", "d", "n", "cn", "cd", "dn", "dc", "nc", "nd"], + "default": "c" + }, + "hda_disk_image": { + "description": "QEMU hda disk image path", + "type": "string", + "default": "" + }, + "hda_disk_interface": { + "description": "QEMU hda interface", + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], + "default": "ide" + }, + "hdb_disk_image": { + "description": "QEMU hdb disk image path", + "type": "string", + "default": "" + }, + "hdb_disk_interface": { + "description": "QEMU hdb interface", + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], + "default": "ide" + }, + "hdc_disk_image": { + "description": "QEMU hdc disk image path", + "type": "string", + "default": "" + }, + "hdc_disk_interface": { + "description": "QEMU hdc interface", + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], + "default": "ide" + }, + "hdd_disk_image": { + "description": "QEMU hdd disk image path", + "type": "string", + "default": "" + }, + "hdd_disk_interface": { + "description": "QEMU hdd interface", + "enum": ["ide", "sata", "scsi", "sd", "mtd", "floppy", "pflash", "virtio", "none"], + "default": "ide" + }, + "cdrom_image": { + "description": "QEMU cdrom image path", + "type": "string", + "default": "" + }, + "initrd": { + "description": "QEMU initrd path", + "type": "string", + "default": "" + }, + "kernel_image": { + "description": "QEMU kernel image path", + "type": "string", + "default": "" + }, + "bios_image": { + "description": "QEMU bios image path", + "type": "string", + "default": "" + }, + "kernel_command_line": { + "description": "QEMU kernel command line", + "type": "string", + "default": "" + }, + "legacy_networking": { + "description": "Use QEMU legagy networking commands (-net syntax)", + "type": "boolean", + "default": False + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" + }, + "cpu_throttling": { + "description": "Percentage of CPU allowed for QEMU", + "minimum": 0, + "maximum": 800, + "type": "integer", + "default": 0 + }, + "process_priority": { + "description": "Process priority for QEMU", + "enum": ["realtime", "very high", "high", "normal", "low", "very low"], + "default": "normal" + }, + "options": { + "description": "Additional QEMU options", + "type": "string", + "default": "" + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +QEMU_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +QEMU_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +QEMU_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +QEMU_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/qemu_guest.svg" + +QEMU_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A Qemu template object", + "type": "object", + "properties": QEMU_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/schemas/traceng_appliance.py b/gns3server/schemas/traceng_appliance.py new file mode 100644 index 00000000..a45abffc --- /dev/null +++ b/gns3server/schemas/traceng_appliance.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES + + +TRACENG_APPLIANCE_PROPERTIES = { + "ip_address": { + "description": "Source IP address for tracing", + "type": ["string"], + "minLength": 1 + }, + "default_destination": { + "description": "Default destination IP address or hostname for tracing", + "type": ["string"], + "minLength": 1 + }, + "console_type": { + "description": "Console type", + "enum": ["none"], + "default": "none" + }, +} + +TRACENG_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +TRACENG_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +TRACENG_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "TraceNG{0}" +TRACENG_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/traceng.svg" + +TRACENG_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A TraceNG template object", + "type": "object", + "properties": TRACENG_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/schemas/virtualbox_appliance.py b/gns3server/schemas/virtualbox_appliance.py new file mode 100644 index 00000000..6e510f09 --- /dev/null +++ b/gns3server/schemas/virtualbox_appliance.py @@ -0,0 +1,113 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA + + +VIRTUALBOX_APPLIANCE_PROPERTIES = { + "vmname": { + "description": "VirtualBox VM name (in VirtualBox itself)", + "type": "string", + "minLength": 1, + }, + "ram": { + "description": "Amount of RAM", + "minimum": 0, + "maximum": 65535, + "type": "integer", + "default": 256 + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean", + "default": False + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 36, # maximum given by the ICH9 chipset in VirtualBox + "default": 1 + }, + "use_any_adapter": { + "description": "Allow GNS3 to use any VirtualBox adapter", + "type": "boolean", + "default": False + }, + "adapter_type": { + "description": "VirtualBox adapter type", + "enum": ["PCnet-PCI II (Am79C970A)", + "PCNet-FAST III (Am79C973)", + "Intel PRO/1000 MT Desktop (82540EM)", + "Intel PRO/1000 T Server (82543GC)", + "Intel PRO/1000 MT Server (82545EM)", + "Paravirtualized Network (virtio-net)"], + "default": "Intel PRO/1000 MT Desktop (82540EM)" + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "default": "" + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "default": "Ethernet{0}" + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer", + "default": 0 + }, + "headless": { + "description": "Headless mode", + "type": "boolean", + "default": False + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "none" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +VIRTUALBOX_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VIRTUALBOX_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VIRTUALBOX_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +VIRTUALBOX_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vbox_guest.svg" + +VIRTUALBOX_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A VirtualBox template object", + "type": "object", + "properties": VIRTUALBOX_APPLIANCE_PROPERTIES, + "required": ["vmname"], + "additionalProperties": False +} diff --git a/gns3server/schemas/vmware_appliance.py b/gns3server/schemas/vmware_appliance.py new file mode 100644 index 00000000..4ad16fce --- /dev/null +++ b/gns3server/schemas/vmware_appliance.py @@ -0,0 +1,101 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA + + +VMWARE_APPLIANCE_PROPERTIES = { + "vmx_path": { + "description": "Path to the vmx file", + "type": "string", + "minLength": 1, + }, + "linked_clone": { + "description": "Whether the VM is a linked clone or not", + "type": "boolean", + "default": False + }, + "first_port_name": { + "description": "Optional name of the first networking port example: eth0", + "type": "string", + "default": "" + }, + "port_name_format": { + "description": "Optional formatting of the networking port example: eth{0}", + "type": "string", + "default": "Ethernet{0}" + }, + "port_segment_size": { + "description": "Optional port segment size. A port segment is a block of port. For example Ethernet0/0 Ethernet0/1 is the module 0 with a port segment size of 2", + "type": "integer", + "default": 0 + }, + "adapters": { + "description": "Number of adapters", + "type": "integer", + "minimum": 0, + "maximum": 10, # maximum adapters support by VMware VMs, + "default": 1 + }, + "adapter_type": { + "description": "VMware adapter type", + "enum": ["default", "e1000", "e1000e", "flexible", "vlance", "vmxnet", "vmxnet2", "vmxnet3"], + "default": "e1000" + }, + "use_any_adapter": { + "description": "Allow GNS3 to use any VMware adapter", + "type": "boolean", + "default": False + }, + "headless": { + "description": "Headless mode", + "type": "boolean", + "default": False + }, + "on_close": { + "description": "Action to execute on the VM is closed", + "enum": ["power_off", "shutdown_signal", "save_vm_state"], + "default": "power_off" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "none" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA +} + +VMWARE_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VMWARE_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VMWARE_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "{name}-{0}" +VMWARE_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vmware_guest.svg" + +VMWARE_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A VMware template object", + "type": "object", + "properties": VMWARE_APPLIANCE_PROPERTIES, + "required": ["vmx_path"], + "additionalProperties": False +} diff --git a/gns3server/schemas/vpcs_appliance.py b/gns3server/schemas/vpcs_appliance.py new file mode 100644 index 00000000..f8205316 --- /dev/null +++ b/gns3server/schemas/vpcs_appliance.py @@ -0,0 +1,52 @@ +# -*- coding: utf-8 -*- +# +# Copyright (C) 2016 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 . + +import copy +from .appliance import BASE_APPLIANCE_PROPERTIES + + +VPCS_APPLIANCE_PROPERTIES = { + "base_script_file": { + "description": "Script file", + "type": "string", + "minLength": 1, + "default": "vpcs_base_config.txt" + }, + "console_type": { + "description": "Console type", + "enum": ["telnet", "none"], + "default": "telnet" + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean", + "default": False + }, +} + +VPCS_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) +VPCS_APPLIANCE_PROPERTIES["category"]["default"] = "guest" +VPCS_APPLIANCE_PROPERTIES["default_name_format"]["default"] = "PC{0}" +VPCS_APPLIANCE_PROPERTIES["symbol"]["default"] = ":/symbols/vpcs_guest.svg" + +VPCS_APPLIANCE_OBJECT_SCHEMA = { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A VPCS template object", + "type": "object", + "properties": VPCS_APPLIANCE_PROPERTIES, + "additionalProperties": False +} diff --git a/gns3server/web/route.py b/gns3server/web/route.py index 764286c3..72943e61 100644 --- a/gns3server/web/route.py +++ b/gns3server/web/route.py @@ -36,30 +36,7 @@ from ..crash_report import CrashReport from ..config import Config -# Add default values for missing entries in a request, largely taken from jsonschema documentation example -# https://python-jsonschema.readthedocs.io/en/latest/faq/#why-doesn-t-my-schema-s-default-property-set-the-default-on-my-instance -def extend_with_default(validator_class): - - validate_properties = validator_class.VALIDATORS["properties"] - def set_defaults(validator, properties, instance, schema): - if jsonschema.Draft4Validator(schema).is_valid(instance): - # only add default for the matching sub-schema (e.g. when using 'oneOf') - for property, subschema in properties.items(): - if "default" in subschema: - instance.setdefault(property, subschema["default"]) - - for error in validate_properties(validator, properties, instance, schema,): - yield error - - return jsonschema.validators.extend( - validator_class, {"properties" : set_defaults}, - ) - - -ValidatorWithDefaults = extend_with_default(jsonschema.Draft4Validator) - - -async def parse_request(request, input_schema, raw, set_input_schema_defaults=False): +async def parse_request(request, input_schema, raw): """Parse body of request and raise HTTP errors in case of problems""" request.json = {} @@ -78,37 +55,18 @@ async def parse_request(request, input_schema, raw, set_input_schema_defaults=Fa request.json[k] = v[0] if input_schema: - - if set_input_schema_defaults: - validator = ValidatorWithDefaults(input_schema) - else: - validator = jsonschema.Draft4Validator(input_schema) try: - validator.validate(request.json) + jsonschema.validate(request.json, input_schema) except jsonschema.ValidationError as e: - message = "JSON schema error with API request '{}': {}".format(request.path_qs, e.message) - if "is not valid under any of the given schemas" not in message: - best_match = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) - message += " (best matched error: {})".format(best_match.message) + message = "JSON schema error with API request '{}' and JSON data '{}': {}".format(request.path_qs, + request.json, + e.message) log.error(message) log.debug("Input schema: {}".format(json.dumps(input_schema))) raise aiohttp.web.HTTPBadRequest(text=message) return request - # if set_input_schema_defaults: - # validator = ValidatorWithDefaults(input_schema) - # else: - # validator = jsonschema.Draft4Validator(input_schema) - # error = jsonschema.exceptions.best_match(validator.iter_errors(request.json)) - # if error: - # message = "JSON schema error with API request '{}' while validating JSON data '{}': {}".format(request.path_qs, request.json, error.message) - # log.error(message) - # log.debug("Input schema: {}".format(json.dumps(input_schema))) - # raise aiohttp.web.HTTPBadRequest(text=message) - # - # return request - class Route(object): @@ -176,7 +134,6 @@ class Route(object): input_schema = kw.get("input", {}) api_version = kw.get("api_version", 2) raw = kw.get("raw", False) - set_input_schema_defaults = kw.get("set_input_schema_defaults", False) def register(func): # Add the type of server to the route @@ -225,7 +182,7 @@ class Route(object): return response # API call - request = await parse_request(request, input_schema, raw, set_input_schema_defaults) + request = await parse_request(request, input_schema, raw) record_file = server_config.get("record") if record_file: try: diff --git a/tests/controller/test_appliance.py b/tests/controller/test_appliance.py index a30bd370..a5f458d6 100644 --- a/tests/controller/test_appliance.py +++ b/tests/controller/test_appliance.py @@ -15,6 +15,9 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import pytest +import jsonschema + from gns3server.controller.appliance import Appliance @@ -26,42 +29,25 @@ def test_appliance_json(): "category": 0, "symbol": "qemu.svg", "server": "local", - "platform": None + "platform": "i386" }) - assert a.__json__() == { - "appliance_id": a.id, - "appliance_type": "qemu", - "builtin": False, - "name": "Test", - "default_name_format": "{name}-{0}", - "category": "router", - "symbol": "qemu.svg", - "compute_id": "local", - "platform": None - } + settings = a.__json__() + assert settings["appliance_id"] == a.id + assert settings["appliance_type"] == "qemu" + assert settings["builtin"] == False def test_appliance_json_with_not_known_category(): - a = Appliance(None, { - "node_type": "qemu", - "name": "Test", - "default_name_format": "{name}-{0}", - "category": 'Not known', - "symbol": "qemu.svg", - "server": "local", - "platform": None - }) - assert a.__json__() == { - "appliance_id": a.id, - "appliance_type": "qemu", - "builtin": False, - "name": "Test", - "default_name_format": "{name}-{0}", - "category": "Not known", - "symbol": "qemu.svg", - "compute_id": "local", - "platform": None - } + with pytest.raises(jsonschema.ValidationError): + a = Appliance(None, { + "node_type": "qemu", + "name": "Test", + "default_name_format": "{name}-{0}", + "category": 'Not known', + "symbol": "qemu.svg", + "server": "local", + "platform": "i386" + }) def test_appliance_json_with_platform(): @@ -71,20 +57,15 @@ def test_appliance_json_with_platform(): "default_name_format": "{name}-{0}", "category": 0, "symbol": "dynamips.svg", + "image": "IOS_image.bin", "server": "local", "platform": "c3725" }) - assert a.__json__() == { - "appliance_id": a.id, - "appliance_type": "dynamips", - "builtin": False, - "name": "Test", - "default_name_format": "{name}-{0}", - "category": "router", - "symbol": "dynamips.svg", - "compute_id": "local", - "platform": "c3725" - } + settings = a.__json__() + assert settings["appliance_id"] == a.id + assert settings["appliance_type"] == "dynamips" + assert settings["builtin"] == False + assert settings["platform"] == "c3725" def test_appliance_fix_linked_base(): diff --git a/tests/controller/test_project.py b/tests/controller/test_project.py index 78920ce0..49678f4f 100644 --- a/tests/controller/test_project.py +++ b/tests/controller/test_project.py @@ -213,14 +213,10 @@ def test_add_node_from_appliance(async_run, controller): project = Project(controller=controller, name="Test") controller._notification = MagicMock() appliance = Appliance(str(uuid.uuid4()), { - "server": "local", + "compute_id": "local", "name": "Test", - "default_name_format": "{name}-{0}", "appliance_type": "vpcs", "builtin": False, - "properties": { - "a": 1 - } }) controller._appliances[appliance.id] = appliance controller._computes["local"] = compute @@ -230,30 +226,15 @@ def test_add_node_from_appliance(async_run, controller): compute.post = AsyncioMagicMock(return_value=response) node = async_run(project.add_node_from_appliance(appliance.id, x=23, y=12)) - compute.post.assert_any_call('/projects', data={ "name": project._name, "project_id": project._id, "path": project._path }) - compute.post.assert_any_call('/projects/{}/vpcs/nodes'.format(project.id), - data={'node_id': node.id, - 'name': 'Test-1', - 'a': 1, - }, - timeout=1200) + assert compute in project._project_created_on_compute controller.notification.project_emit.assert_any_call("node.created", node.__json__()) - # Make sure we can call twice the node creation - node = async_run(project.add_node_from_appliance(appliance.id, x=13, y=12)) - compute.post.assert_any_call('/projects/{}/vpcs/nodes'.format(project.id), - data={'node_id': node.id, - 'name': 'Test-2', - 'a': 1 - }, - timeout=1200) - def test_delete_node(async_run, controller): """ diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index 41ead4bc..d856cce6 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -400,7 +400,6 @@ def test_c3600_dynamips_appliance_create_wrong_chassis(http_controller): response = http_controller.post("/appliances", params) assert response.status == 400 - assert "is not valid under any of the given schemas" in response.json["message"] def test_c2691_dynamips_appliance_create(http_controller): @@ -504,7 +503,6 @@ def test_c2600_dynamips_appliance_create_wrong_chassis(http_controller): response = http_controller.post("/appliances", params) assert response.status == 400 - assert "is not valid under any of the given schemas" in response.json["message"] def test_c1700_dynamips_appliance_create(http_controller): @@ -564,7 +562,6 @@ def test_c1700_dynamips_appliance_create_wrong_chassis(http_controller): response = http_controller.post("/appliances", params) assert response.status == 400 - assert "is not valid under any of the given schemas" in response.json["message"] def test_dynamips_appliance_create_wrong_platform(http_controller): @@ -577,7 +574,6 @@ def test_dynamips_appliance_create_wrong_platform(http_controller): response = http_controller.post("/appliances", params) assert response.status == 400 - assert "is not valid under any of the given schemas" in response.json["message"] def test_iou_appliance_create(http_controller): From aa4593c993faacb1bd1dcedbd9e9eb1ac9317ee3 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 20:09:34 +0700 Subject: [PATCH 15/33] Handle custom adapters in schemas. --- gns3server/schemas/custom_adapters.py | 2 +- gns3server/schemas/docker_appliance.py | 4 +--- tests/handlers/api/controller/test_appliance.py | 9 ++++++--- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/gns3server/schemas/custom_adapters.py b/gns3server/schemas/custom_adapters.py index d24b9db1..f3472540 100644 --- a/gns3server/schemas/custom_adapters.py +++ b/gns3server/schemas/custom_adapters.py @@ -17,6 +17,7 @@ CUSTOM_ADAPTERS_ARRAY_SCHEMA = { "type": "array", + "default": [], "items": { "type": "object", "description": "Custom properties", @@ -46,4 +47,3 @@ CUSTOM_ADAPTERS_ARRAY_SCHEMA = { "required": ["adapter_number"] }, } - diff --git a/gns3server/schemas/docker_appliance.py b/gns3server/schemas/docker_appliance.py index b5b6e241..8fa18b49 100644 --- a/gns3server/schemas/docker_appliance.py +++ b/gns3server/schemas/docker_appliance.py @@ -17,7 +17,6 @@ import copy from .appliance import BASE_APPLIANCE_PROPERTIES -from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA DOCKER_APPLIANCE_PROPERTIES = { @@ -76,8 +75,7 @@ DOCKER_APPLIANCE_PROPERTIES = { "description": "Docker extra hosts (added to /etc/hosts)", "type": "string", "default": "", - }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA + } } DOCKER_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index d856cce6..242da49f 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -694,7 +694,8 @@ def test_qemu_appliance_create(http_controller): "qemu_path": "", "ram": 512, "symbol": ":/symbols/qemu_guest.svg", - "usage": ""} + "usage": "", + "custom_adapters": []} for item, value in expected_response.items(): assert response.json.get(item) == value @@ -729,7 +730,8 @@ def test_vmware_appliance_create(http_controller): "port_segment_size": 0, "symbol": ":/symbols/vmware_guest.svg", "use_any_adapter": False, - "vmx_path": "/path/to/vm.vmx"} + "vmx_path": "/path/to/vm.vmx", + "custom_adapters": []} for item, value in expected_response.items(): assert response.json.get(item) == value @@ -765,7 +767,8 @@ def test_virtualbox_appliance_create(http_controller): "ram": 256, "symbol": ":/symbols/vbox_guest.svg", "use_any_adapter": False, - "vmname": "My VirtualBox VM"} + "vmname": "My VirtualBox VM", + "custom_adapters": []} for item, value in expected_response.items(): assert response.json.get(item) == value From 74e146301526cf44e490b64a1bd0b09abac2f9fd Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 21:50:00 +0700 Subject: [PATCH 16/33] Fix bug with custom adapters and categories for Docker VM. Fixes https://github.com/GNS3/gns3-gui/issues/2613 --- gns3server/controller/node.py | 2 +- gns3server/schemas/docker.py | 4 ++-- gns3server/schemas/docker_appliance.py | 4 +++- tests/handlers/api/controller/test_appliance.py | 3 ++- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/gns3server/controller/node.py b/gns3server/controller/node.py index 2e9047bc..ad54931e 100644 --- a/gns3server/controller/node.py +++ b/gns3server/controller/node.py @@ -636,7 +636,7 @@ class Node: break port_name = "eth{}".format(adapter_number) port_name = custom_adapter_settings.get("port_name", port_name) - self._ports.append(PortFactory(port_name, 0, adapter_number, 0, "ethernet", short_name="eth{}".format(adapter_number))) + self._ports.append(PortFactory(port_name, 0, adapter_number, 0, "ethernet", short_name=port_name)) elif self._node_type in ("ethernet_switch", "ethernet_hub"): # Basic node we don't want to have adapter number port_number = 0 diff --git a/gns3server/schemas/docker.py b/gns3server/schemas/docker.py index 22bf0703..3b114a5c 100644 --- a/gns3server/schemas/docker.py +++ b/gns3server/schemas/docker.py @@ -102,7 +102,7 @@ DOCKER_CREATE_SCHEMA = { "maxLength": 64, "pattern": "^[a-f0-9]+$" }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA # not used at this time + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA }, "additionalProperties": False, "required": ["name", "image"] @@ -206,7 +206,7 @@ DOCKER_OBJECT_SCHEMA = { "description": "VM status Read only", "enum": ["started", "stopped", "suspended"] }, - "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA # not used at this time + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA }, "additionalProperties": False, } diff --git a/gns3server/schemas/docker_appliance.py b/gns3server/schemas/docker_appliance.py index 8fa18b49..b5b6e241 100644 --- a/gns3server/schemas/docker_appliance.py +++ b/gns3server/schemas/docker_appliance.py @@ -17,6 +17,7 @@ import copy from .appliance import BASE_APPLIANCE_PROPERTIES +from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA DOCKER_APPLIANCE_PROPERTIES = { @@ -75,7 +76,8 @@ DOCKER_APPLIANCE_PROPERTIES = { "description": "Docker extra hosts (added to /etc/hosts)", "type": "string", "default": "", - } + }, + "custom_adapters": CUSTOM_ADAPTERS_ARRAY_SCHEMA } DOCKER_APPLIANCE_PROPERTIES.update(copy.deepcopy(BASE_APPLIANCE_PROPERTIES)) diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index 242da49f..a444bd69 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -636,7 +636,8 @@ def test_docker_appliance_create(http_controller): "image": "gns3/endhost:latest", "name": "Docker appliance", "start_command": "", - "symbol": ":/symbols/docker_guest.svg"} + "symbol": ":/symbols/docker_guest.svg", + "custom_adapters": []} for item, value in expected_response.items(): assert response.json.get(item) == value From 3512fde841753acc262cd5976ee1e07234d45b38 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 22:16:18 +0700 Subject: [PATCH 17/33] Fix small bugs when using the new appliance management API. --- gns3server/schemas/qemu.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gns3server/schemas/qemu.py b/gns3server/schemas/qemu.py index 23a6bad7..64890956 100644 --- a/gns3server/schemas/qemu.py +++ b/gns3server/schemas/qemu.py @@ -17,7 +17,7 @@ from .custom_adapters import CUSTOM_ADAPTERS_ARRAY_SCHEMA -QEMU_PLATFORMS = ["aarch64", "alpha", "arm", "cris", "i386", "lm32", "m68k", "microblaze", "microblazeel", "mips", "mips64", "mips64el", "mipsel", "moxie", "or32", "ppc", "ppc64", "ppcemb", "s390x", "sh4", "sh4eb", "sparc", "sparc64", "tricore", "unicore32", "x86_64", "xtensa", "xtensaeb"] +QEMU_PLATFORMS = ["aarch64", "alpha", "arm", "cris", "i386", "lm32", "m68k", "microblaze", "microblazeel", "mips", "mips64", "mips64el", "mipsel", "moxie", "or32", "ppc", "ppc64", "ppcemb", "s390x", "sh4", "sh4eb", "sparc", "sparc64", "tricore", "unicore32", "x86_64", "xtensa", "xtensaeb", ""] QEMU_CREATE_SCHEMA = { From 53f3821d41af76bb8d28e65b9d57367fc973561b Mon Sep 17 00:00:00 2001 From: grossmj Date: Sat, 17 Nov 2018 23:23:28 +0700 Subject: [PATCH 18/33] Change test that randomly fails on Travis. --- tests/utils/test_asyncio.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tests/utils/test_asyncio.py b/tests/utils/test_asyncio.py index 36bfe548..004704f1 100644 --- a/tests/utils/test_asyncio.py +++ b/tests/utils/test_asyncio.py @@ -49,11 +49,9 @@ def test_exception_wait_run_in_executor(loop): def test_subprocess_check_output(loop, tmpdir, restore_original_path): path = str(tmpdir / "test") - with open(path, "w+") as f: - f.write("TEST") - exec = subprocess_check_output("cat", path) + exec = subprocess_check_output("echo", "-n", path) result = loop.run_until_complete(asyncio.ensure_future(exec)) - assert result == "TEST" + assert result == path def test_wait_for_process_termination(loop): From c7b8c347d7fea71108b2985a7be830a630b53525 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 18 Nov 2018 00:08:40 +0700 Subject: [PATCH 19/33] Remove problematic test when run on Travis. --- tests/utils/test_asyncio.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/tests/utils/test_asyncio.py b/tests/utils/test_asyncio.py index 004704f1..6254432f 100644 --- a/tests/utils/test_asyncio.py +++ b/tests/utils/test_asyncio.py @@ -45,15 +45,6 @@ def test_exception_wait_run_in_executor(loop): result = loop.run_until_complete(asyncio.ensure_future(exec)) -@pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows") -def test_subprocess_check_output(loop, tmpdir, restore_original_path): - - path = str(tmpdir / "test") - exec = subprocess_check_output("echo", "-n", path) - result = loop.run_until_complete(asyncio.ensure_future(exec)) - assert result == path - - def test_wait_for_process_termination(loop): if sys.version_info >= (3, 5): From a33b8eac3a9a117517635525952b37631d5a8a69 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 18 Nov 2018 16:04:08 +0700 Subject: [PATCH 20/33] Support "L1 keepalives" in IOU appliance schema. --- gns3server/schemas/iou_appliance.py | 5 +++++ tests/handlers/api/controller/test_appliance.py | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gns3server/schemas/iou_appliance.py b/gns3server/schemas/iou_appliance.py index 430fb811..5879266a 100644 --- a/gns3server/schemas/iou_appliance.py +++ b/gns3server/schemas/iou_appliance.py @@ -60,6 +60,11 @@ IOU_APPLIANCE_PROPERTIES = { "type": "string", "default": "" }, + "l1_keepalives": { + "description": "Always keep up Ethernet interface (does not always work)", + "type": "boolean", + "default": False + }, "console_type": { "description": "Console type", "enum": ["telnet", "none"], diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index a444bd69..890ad94e 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -603,7 +603,8 @@ def test_iou_appliance_create(http_controller): "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": True, + "l1_keepalives": False} for item, value in expected_response.items(): assert response.json.get(item) == value From 9b83b087cb44557fe402e45383f52835e1294985 Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 18 Nov 2018 16:20:50 +0700 Subject: [PATCH 21/33] Fix mac address schema validation for Qemu VM appliance. Fixes https://github.com/GNS3/gns3-gui/issues/2629 --- gns3server/schemas/qemu_appliance.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gns3server/schemas/qemu_appliance.py b/gns3server/schemas/qemu_appliance.py index dd7caace..a5fa7d4a 100644 --- a/gns3server/schemas/qemu_appliance.py +++ b/gns3server/schemas/qemu_appliance.py @@ -71,7 +71,7 @@ QEMU_APPLIANCE_PROPERTIES = { }, "mac_address": { "description": "QEMU MAC address", - "type": "string", + "type": ["string", "null"], "anyOf": [ {"pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$"}, {"pattern": "^$"} From bd657c01675a22be9e0cee0bfdae0026ff90f65c Mon Sep 17 00:00:00 2001 From: grossmj Date: Sun, 18 Nov 2018 17:05:16 +0700 Subject: [PATCH 22/33] Support to duplicate an appliance. --- gns3server/controller/__init__.py | 15 ++++++++++ .../api/controller/appliance_handler.py | 21 +++++++++++++- .../handlers/api/controller/test_appliance.py | 29 +++++++++++++++++++ 3 files changed, 64 insertions(+), 1 deletion(-) diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index 0d3235d9..196446ec 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -24,6 +24,7 @@ import shutil import asyncio import aiohttp import jsonschema +import copy from ..config import Config from .project import Project @@ -181,6 +182,20 @@ class Controller: self.save() self.notification.controller_emit("appliance.deleted", appliance.__json__()) + def duplicate_appliance(self, appliance_id): + """ + Duplicates an appliance. + + :param appliance_id: appliance identifier + """ + + appliance = self.get_appliance(appliance_id) + if appliance.builtin: + raise aiohttp.web.HTTPConflict(text="Appliance ID {} cannot be duplicated because it is a builtin".format(appliance_id)) + appliance_settings = copy.deepcopy(appliance.settings) + del appliance_settings["appliance_id"] + return self.add_appliance(appliance_settings) + def load_appliances(self): #self._appliances = {} diff --git a/gns3server/handlers/api/controller/appliance_handler.py b/gns3server/handlers/api/controller/appliance_handler.py index 4c3115f7..b97117eb 100644 --- a/gns3server/handlers/api/controller/appliance_handler.py +++ b/gns3server/handlers/api/controller/appliance_handler.py @@ -115,7 +115,7 @@ class ApplianceHandler: @Route.delete( r"/appliances/{appliance_id}", parameters={ - "appliance_id": "Node UUID" + "appliance_id": "appliance UUID" }, status_codes={ 204: "Appliance deleted", @@ -140,6 +140,25 @@ class ApplianceHandler: controller = Controller.instance() response.json([c for c in controller.appliances.values()]) + @Route.post( + r"/appliances/{appliance_id}/duplicate", + parameters={ + "appliance_id": "Appliance UUID" + }, + status_codes={ + 201: "Appliance duplicated", + 400: "Invalid request", + 404: "Appliance doesn't exist" + }, + description="Duplicate an appliance", + output=APPLIANCE_OBJECT_SCHEMA) + async def duplicate(request, response): + + controller = Controller.instance() + appliance = controller.duplicate_appliance(request.match_info["appliance_id"]) + response.set_status(201) + response.json(appliance) + @Route.post( r"/projects/{project_id}/appliances/{appliance_id}", description="Create a node from an appliance", diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index 890ad94e..c6cd5dfc 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -210,6 +210,35 @@ def test_appliance_delete(http_controller, controller): assert len(controller.appliances) == 0 +def test_appliance_duplicate(http_controller, controller): + + appliance_id = str(uuid.uuid4()) + params = {"appliance_id": appliance_id, + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "console_auto_start": False, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "compute_id": "local", + "symbol": ":/symbols/vpcs_guest.svg", + "appliance_type": "vpcs"} + + response = http_controller.post("/appliances", params) + assert response.status == 201 + + response = http_controller.post("/appliances/{}/duplicate".format(appliance_id), example=True) + assert response.status == 201 + assert response.json["appliance_id"] != appliance_id + params.pop("appliance_id") + for param, value in params.items(): + assert response.json[param] == value + + response = http_controller.get("/appliances") + assert len(response.json) == 2 + assert len(controller.appliances) == 2 + + def test_c7200_dynamips_appliance_create(http_controller): params = {"name": "Cisco c7200 appliance", From 3497deaa31ab4d29b579a89d0fa7186d2e529108 Mon Sep 17 00:00:00 2001 From: grossmj Date: Mon, 19 Nov 2018 15:53:43 +0700 Subject: [PATCH 23/33] Allow virtual machines to use files in project directory as disk images. --- gns3server/compute/base_manager.py | 30 ++++++++++++++------- gns3server/compute/dynamips/nodes/router.py | 5 ++-- gns3server/compute/iou/iou_vm.py | 7 +++-- gns3server/compute/qemu/qemu_vm.py | 30 ++++++++++----------- tests/handlers/api/compute/test_qemu.py | 11 ++++++++ 5 files changed, 52 insertions(+), 31 deletions(-) diff --git a/gns3server/compute/base_manager.py b/gns3server/compute/base_manager.py index 5e9a0d50..cccab216 100644 --- a/gns3server/compute/base_manager.py +++ b/gns3server/compute/base_manager.py @@ -469,12 +469,14 @@ class BaseManager: except PermissionError: raise aiohttp.web.HTTPForbidden() - def get_abs_image_path(self, path): + def get_abs_image_path(self, path, extra_dir=None): """ Get the absolute path of an image :param path: file path - :return: file path + :param extra_dir: an additional directory to be added to the search path + + :returns: file path """ if not path: @@ -483,6 +485,9 @@ class BaseManager: server_config = self.config.get_section_config("Server") img_directory = self.get_images_directory() + valid_directory_prefices = images_directories(self._NODE_TYPE) + if extra_dir: + valid_directory_prefices.append(extra_dir) # Windows path should not be send to a unix server if not sys.platform.startswith("win"): @@ -490,7 +495,7 @@ class BaseManager: raise NodeError("{} is not allowed on this remote server. Please use only a filename in {}.".format(path, img_directory)) if not os.path.isabs(path): - for directory in images_directories(self._NODE_TYPE): + for directory in valid_directory_prefices: path = self._recursive_search_file_in_directory(directory, orig_path) if path: return force_unix_path(path) @@ -502,15 +507,16 @@ class BaseManager: return path raise ImageMissingError(orig_path) - # For non local server we disallow using absolute path outside image directory + # For local server we allow using absolute path outside image directory if server_config.getboolean("local", False) is True: path = force_unix_path(path) if os.path.exists(path): return path raise ImageMissingError(orig_path) + # Check to see if path is an absolute path to a valid directory path = force_unix_path(path) - for directory in images_directories(self._NODE_TYPE): + for directory in valid_directory_prefices: if os.path.commonprefix([directory, path]) == directory: if os.path.exists(path): return path @@ -534,23 +540,29 @@ class BaseManager: return path return None - def get_relative_image_path(self, path): + def get_relative_image_path(self, path, extra_dir=None): """ Get a path relative to images directory path or an abspath if the path is not located inside image directory :param path: file path - :return: file path + :param extra_dir: an additional directory to be added to the search path + + :returns: file path """ if not path: return "" - path = force_unix_path(self.get_abs_image_path(path)) + path = force_unix_path(self.get_abs_image_path(path, extra_dir)) img_directory = self.get_images_directory() - for directory in images_directories(self._NODE_TYPE): + valid_directory_prefices = images_directories(self._NODE_TYPE) + if extra_dir: + valid_directory_prefices.append(extra_dir) + + for directory in valid_directory_prefices: if os.path.commonprefix([directory, path]) == directory: relpath = os.path.relpath(path, directory) # We don't allow to recurse search from the top image directory just for image type directory (compatibility with old releases) diff --git a/gns3server/compute/dynamips/nodes/router.py b/gns3server/compute/dynamips/nodes/router.py index 19aa36fe..eb4be4dd 100644 --- a/gns3server/compute/dynamips/nodes/router.py +++ b/gns3server/compute/dynamips/nodes/router.py @@ -169,8 +169,7 @@ class Router(BaseNode): "mac_addr": self._mac_addr, "system_id": self._system_id} - # return the relative path if the IOS image is in the images_path directory - router_info["image"] = self.manager.get_relative_image_path(self._image) + router_info["image"] = self.manager.get_relative_image_path(self._image, self.project.path) # add the slots slot_number = 0 @@ -484,7 +483,7 @@ class Router(BaseNode): :param image: path to IOS image file """ - image = self.manager.get_abs_image_path(image) + image = self.manager.get_abs_image_path(image, self.project.path) await self._hypervisor.send('vm set_ios "{name}" "{image}"'.format(name=self._name, image=image)) diff --git a/gns3server/compute/iou/iou_vm.py b/gns3server/compute/iou/iou_vm.py index 170d3560..ad5096f4 100644 --- a/gns3server/compute/iou/iou_vm.py +++ b/gns3server/compute/iou/iou_vm.py @@ -75,7 +75,7 @@ class IOUVM(BaseNode): self._iou_stdout_file = "" self._started = False self._nvram_watcher = None - self._path = self.manager.get_abs_image_path(path) + self._path = self.manager.get_abs_image_path(path, project.path) self._license_check = True # IOU settings @@ -137,7 +137,7 @@ class IOUVM(BaseNode): :param path: path to the IOU image executable """ - self._path = self.manager.get_abs_image_path(path) + self._path = self.manager.get_abs_image_path(path, self.project.path) log.info('IOU "{name}" [{id}]: IOU image updated to "{path}"'.format(name=self._name, id=self._id, path=self._path)) @property @@ -232,8 +232,7 @@ class IOUVM(BaseNode): "command_line": self.command_line, "application_id": self.application_id} - # return the relative path if the IOU image is in the images_path directory - iou_vm_info["path"] = self.manager.get_relative_image_path(self.path) + iou_vm_info["path"] = self.manager.get_relative_image_path(self.path, self.project.path) return iou_vm_info @property diff --git a/gns3server/compute/qemu/qemu_vm.py b/gns3server/compute/qemu/qemu_vm.py index 081df9e0..fe122230 100644 --- a/gns3server/compute/qemu/qemu_vm.py +++ b/gns3server/compute/qemu/qemu_vm.py @@ -212,7 +212,7 @@ class QemuVM(BaseNode): :param value: New disk value """ - value = self.manager.get_abs_image_path(value) + value = self.manager.get_abs_image_path(value, self.project.path) if not self.linked_clone: for node in self.manager.nodes: if node != self and getattr(node, variable) == value: @@ -412,7 +412,8 @@ class QemuVM(BaseNode): :param cdrom_image: QEMU cdrom image path """ - self._cdrom_image = self.manager.get_abs_image_path(cdrom_image) + + self._cdrom_image = self.manager.get_abs_image_path(cdrom_image, self.project.path) log.info('QEMU VM "{name}" [{id}] has set the QEMU cdrom image path to {cdrom_image}'.format(name=self._name, id=self._id, cdrom_image=self._cdrom_image)) @@ -434,7 +435,8 @@ class QemuVM(BaseNode): :param bios_image: QEMU bios image path """ - self._bios_image = self.manager.get_abs_image_path(bios_image) + + self._bios_image = self.manager.get_abs_image_path(bios_image, self.project.path) log.info('QEMU VM "{name}" [{id}] has set the QEMU bios image path to {bios_image}'.format(name=self._name, id=self._id, bios_image=self._bios_image)) @@ -739,7 +741,7 @@ class QemuVM(BaseNode): :param initrd: QEMU initrd path """ - initrd = self.manager.get_abs_image_path(initrd) + initrd = self.manager.get_abs_image_path(initrd, self.project.path) log.info('QEMU VM "{name}" [{id}] has set the QEMU initrd path to {initrd}'.format(name=self._name, id=self._id, @@ -766,7 +768,7 @@ class QemuVM(BaseNode): :param kernel_image: QEMU kernel image path """ - kernel_image = self.manager.get_abs_image_path(kernel_image) + kernel_image = self.manager.get_abs_image_path(kernel_image, self.project.path) log.info('QEMU VM "{name}" [{id}] has set the QEMU kernel image path to {kernel_image}'.format(name=self._name, id=self._id, kernel_image=kernel_image)) @@ -1938,22 +1940,20 @@ class QemuVM(BaseNode): answer[field] = getattr(self, field) except AttributeError: pass - answer["hda_disk_image"] = self.manager.get_relative_image_path(self._hda_disk_image) + answer["hda_disk_image"] = self.manager.get_relative_image_path(self._hda_disk_image, self.project.path) answer["hda_disk_image_md5sum"] = md5sum(self._hda_disk_image) - answer["hdb_disk_image"] = self.manager.get_relative_image_path(self._hdb_disk_image) + answer["hdb_disk_image"] = self.manager.get_relative_image_path(self._hdb_disk_image, self.project.path) answer["hdb_disk_image_md5sum"] = md5sum(self._hdb_disk_image) - answer["hdc_disk_image"] = self.manager.get_relative_image_path(self._hdc_disk_image) + answer["hdc_disk_image"] = self.manager.get_relative_image_path(self._hdc_disk_image, self.project.path) answer["hdc_disk_image_md5sum"] = md5sum(self._hdc_disk_image) - answer["hdd_disk_image"] = self.manager.get_relative_image_path(self._hdd_disk_image) + answer["hdd_disk_image"] = self.manager.get_relative_image_path(self._hdd_disk_image, self.project.path) answer["hdd_disk_image_md5sum"] = md5sum(self._hdd_disk_image) - answer["cdrom_image"] = self.manager.get_relative_image_path(self._cdrom_image) + answer["cdrom_image"] = self.manager.get_relative_image_path(self._cdrom_image, self.project.path) answer["cdrom_image_md5sum"] = md5sum(self._cdrom_image) - answer["bios_image"] = self.manager.get_relative_image_path(self._bios_image) + answer["bios_image"] = self.manager.get_relative_image_path(self._bios_image, self.project.path) answer["bios_image_md5sum"] = md5sum(self._bios_image) - answer["initrd"] = self.manager.get_relative_image_path(self._initrd) + answer["initrd"] = self.manager.get_relative_image_path(self._initrd, self.project.path) answer["initrd_md5sum"] = md5sum(self._initrd) - - answer["kernel_image"] = self.manager.get_relative_image_path(self._kernel_image) + answer["kernel_image"] = self.manager.get_relative_image_path(self._kernel_image, self.project.path) answer["kernel_image_md5sum"] = md5sum(self._kernel_image) - return answer diff --git a/tests/handlers/api/compute/test_qemu.py b/tests/handlers/api/compute/test_qemu.py index 7c63edcd..a7636ee1 100644 --- a/tests/handlers/api/compute/test_qemu.py +++ b/tests/handlers/api/compute/test_qemu.py @@ -101,6 +101,17 @@ def test_qemu_create_with_params(http_compute, project, base_params, fake_qemu_v assert response.json["hda_disk_image_md5sum"] == "c4ca4238a0b923820dcc509a6f75849b" +def test_qemu_create_with_project_file(http_compute, project, base_params, fake_qemu_vm): + response = http_compute.post("/projects/{project_id}/files/hello.img".format(project_id=project.id), body="world", raw=True) + assert response.status == 200 + params = base_params + params["hda_disk_image"] = "hello.img" + response = http_compute.post("/projects/{project_id}/qemu/nodes".format(project_id=project.id), params, example=True) + assert response.status == 201 + assert response.json["hda_disk_image"] == "hello.img" + assert response.json["hda_disk_image_md5sum"] == "7d793037a0760186574b0282f2f435e7" + + def test_qemu_get(http_compute, project, vm): response = http_compute.get("/projects/{project_id}/qemu/nodes/{node_id}".format(project_id=vm["project_id"], node_id=vm["node_id"]), example=True) assert response.status == 200 From 372748773027cfbca2e159c79a0a2f0d36a9be4e Mon Sep 17 00:00:00 2001 From: grossmj Date: Mon, 19 Nov 2018 16:09:39 +0700 Subject: [PATCH 24/33] Fix test on Windows. --- tests/handlers/api/compute/test_qemu.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/handlers/api/compute/test_qemu.py b/tests/handlers/api/compute/test_qemu.py index a7636ee1..352db57a 100644 --- a/tests/handlers/api/compute/test_qemu.py +++ b/tests/handlers/api/compute/test_qemu.py @@ -101,6 +101,7 @@ def test_qemu_create_with_params(http_compute, project, base_params, fake_qemu_v assert response.json["hda_disk_image_md5sum"] == "c4ca4238a0b923820dcc509a6f75849b" +@pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows") def test_qemu_create_with_project_file(http_compute, project, base_params, fake_qemu_vm): response = http_compute.post("/projects/{project_id}/files/hello.img".format(project_id=project.id), body="world", raw=True) assert response.status == 200 From 3fae6ada95a32bf1c070f13b99b43ff6a1552314 Mon Sep 17 00:00:00 2001 From: grossmj Date: Mon, 19 Nov 2018 17:33:17 +0700 Subject: [PATCH 25/33] Only require privileged access for uBridge when connecting a cloud to an Ethernet/TAP interface. Fixes #1461. --- gns3server/compute/base_node.py | 4 ++-- gns3server/compute/builtin/nodes/cloud.py | 4 +++- tests/compute/builtin/nodes/test_cloud.py | 18 +++++++++++------- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/gns3server/compute/base_node.py b/gns3server/compute/base_node.py index 487ac1c4..706fb645 100644 --- a/gns3server/compute/base_node.py +++ b/gns3server/compute/base_node.py @@ -554,8 +554,8 @@ class BaseNode: if self.ubridge_path is None: raise NodeError("uBridge is not available, path doesn't exist, or you just installed GNS3 and need to restart your user session to refresh user permissions.") - if not self._manager.has_privileged_access(self.ubridge_path): - raise NodeError("uBridge requires root access or the capability to interact with network adapters") + #if not self._manager.has_privileged_access(self.ubridge_path): + # raise NodeError("uBridge requires root access or the capability to interact with network adapters") server_config = self._manager.config.get_section_config("Server") server_host = server_config.get("host") diff --git a/gns3server/compute/builtin/nodes/cloud.py b/gns3server/compute/builtin/nodes/cloud.py index 071066b0..27fd9d90 100644 --- a/gns3server/compute/builtin/nodes/cloud.py +++ b/gns3server/compute/builtin/nodes/cloud.py @@ -299,11 +299,13 @@ class Cloud(BaseNode): await self._ubridge_apply_filters(bridge_name, nio.filters) if port_info["type"] in ("ethernet", "tap"): + if not self.manager.has_privileged_access(self.ubridge_path): + raise NodeError("uBridge requires root access or the capability to interact with Ethernet and TAP adapters") + if sys.platform.startswith("win"): await self._add_ubridge_ethernet_connection(bridge_name, port_info["interface"]) else: - if port_info["type"] == "ethernet": network_interfaces = [interface["name"] for interface in self._interfaces()] if not port_info["interface"] in network_interfaces: diff --git a/tests/compute/builtin/nodes/test_cloud.py b/tests/compute/builtin/nodes/test_cloud.py index 4ff27263..19547a9b 100644 --- a/tests/compute/builtin/nodes/test_cloud.py +++ b/tests/compute/builtin/nodes/test_cloud.py @@ -160,9 +160,11 @@ def test_linux_ethernet_raw_add_nio(linux_platform, project, async_run, nio): cloud = Cloud("cloud1", str(uuid.uuid4()), project, MagicMock(), ports=ports) cloud.status = "started" - with asyncio_patch("gns3server.compute.builtin.nodes.cloud.Cloud._ubridge_send") as ubridge_mock: - with patch("gns3server.compute.builtin.nodes.cloud.Cloud._interfaces", return_value=[{"name": "eth0"}]): - async_run(cloud.add_nio(nio, 0)) + with patch("shutil.which", return_value="/bin/ubridge"): + with patch("gns3server.compute.base_manager.BaseManager.has_privileged_access", return_value=True): + with asyncio_patch("gns3server.compute.builtin.nodes.cloud.Cloud._ubridge_send") as ubridge_mock: + with patch("gns3server.compute.builtin.nodes.cloud.Cloud._interfaces", return_value=[{"name": "eth0"}]): + async_run(cloud.add_nio(nio, 0)) ubridge_mock.assert_has_calls([ call("bridge create {}-0".format(cloud._id)), @@ -188,10 +190,12 @@ def test_linux_ethernet_raw_add_nio_bridge(linux_platform, project, async_run, n cloud = Cloud("cloud1", str(uuid.uuid4()), project, MagicMock(), ports=ports) cloud.status = "started" - with asyncio_patch("gns3server.compute.builtin.nodes.cloud.Cloud._ubridge_send") as ubridge_mock: - with patch("gns3server.compute.builtin.nodes.cloud.Cloud._interfaces", return_value=[{"name": "bridge0"}]): - with patch("gns3server.utils.interfaces.is_interface_bridge", return_value=True): - async_run(cloud.add_nio(nio, 0)) + with patch("shutil.which", return_value="/bin/ubridge"): + with patch("gns3server.compute.base_manager.BaseManager.has_privileged_access", return_value=True): + with asyncio_patch("gns3server.compute.builtin.nodes.cloud.Cloud._ubridge_send") as ubridge_mock: + with patch("gns3server.compute.builtin.nodes.cloud.Cloud._interfaces", return_value=[{"name": "bridge0"}]): + with patch("gns3server.utils.interfaces.is_interface_bridge", return_value=True): + async_run(cloud.add_nio(nio, 0)) tap = "gns3tap0-0" ubridge_mock.assert_has_calls([ From 5cb0957f35a2274e09f9b2a29ada5a4bc9b5737d Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 00:22:16 +0700 Subject: [PATCH 26/33] Require privileged access for uBridge when using VMware VMs and Docker containers. Fixes #1461. --- gns3server/compute/base_node.py | 11 +++++++---- gns3server/compute/docker/docker_vm.py | 2 +- gns3server/compute/vmware/vmware_vm.py | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/gns3server/compute/base_node.py b/gns3server/compute/base_node.py index 706fb645..6b0084d4 100644 --- a/gns3server/compute/base_node.py +++ b/gns3server/compute/base_node.py @@ -78,6 +78,7 @@ class BaseNode: self._wrapper_telnet_server = None self._internal_console_port = None self._custom_adapters = [] + self._ubridge_require_privileged_access = False if self._console is not None: if console_type == "vnc": @@ -533,7 +534,7 @@ class BaseNode: """ if not self._ubridge_hypervisor or not self._ubridge_hypervisor.is_running(): - await self._start_ubridge() + await self._start_ubridge(self._ubridge_require_privileged_access) if not self._ubridge_hypervisor or not self._ubridge_hypervisor.is_running(): raise NodeError("Cannot send command '{}': uBridge is not running".format(command)) try: @@ -542,7 +543,7 @@ class BaseNode: raise UbridgeError("Error while sending command '{}': {}: {}".format(command, e, self._ubridge_hypervisor.read_stdout())) @locking - async def _start_ubridge(self): + async def _start_ubridge(self, require_privileged_access=False): """ Starts uBridge (handles connections to and from this node). """ @@ -554,8 +555,8 @@ class BaseNode: if self.ubridge_path is None: raise NodeError("uBridge is not available, path doesn't exist, or you just installed GNS3 and need to restart your user session to refresh user permissions.") - #if not self._manager.has_privileged_access(self.ubridge_path): - # raise NodeError("uBridge requires root access or the capability to interact with network adapters") + if require_privileged_access and not self._manager.has_privileged_access(self.ubridge_path): + raise NodeError("uBridge requires root access or the capability to interact with network adapters") server_config = self._manager.config.get_section_config("Server") server_host = server_config.get("host") @@ -566,6 +567,8 @@ class BaseNode: if self._ubridge_hypervisor: log.info("Hypervisor {}:{} has successfully started".format(self._ubridge_hypervisor.host, self._ubridge_hypervisor.port)) await self._ubridge_hypervisor.connect() + # save if privileged are required in case uBridge needs to be restarted in self._ubridge_send() + self._ubridge_require_privileged_access = require_privileged_access async def _stop_ubridge(self): """ diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py index fe975fb2..38fdc9c0 100644 --- a/gns3server/compute/docker/docker_vm.py +++ b/gns3server/compute/docker/docker_vm.py @@ -434,7 +434,7 @@ class DockerVM(BaseNode): await self.manager.query("POST", "containers/{}/start".format(self._cid)) self._namespace = await self._get_namespace() - await self._start_ubridge() + await self._start_ubridge(require_privileged_access=True) for adapter_number in range(0, self.adapters): nio = self._ethernet_adapters[adapter_number].get_nio(0) diff --git a/gns3server/compute/vmware/vmware_vm.py b/gns3server/compute/vmware/vmware_vm.py index f1fb7e0d..c656a6b8 100644 --- a/gns3server/compute/vmware/vmware_vm.py +++ b/gns3server/compute/vmware/vmware_vm.py @@ -432,7 +432,7 @@ class VMwareVM(BaseNode): if not ubridge_path or not os.path.isfile(ubridge_path): raise VMwareError("ubridge is necessary to start a VMware VM") - await self._start_ubridge() + await self._start_ubridge(require_privileged_access=True) self._read_vmx_file() # check if there is enough RAM to run if "memsize" in self._vmx_pairs: From ff5ba3742e3f4232c8a9c6c48994c7af11033a33 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 13:04:27 +0700 Subject: [PATCH 27/33] Update API documentation for appliance endpoints. Ref https://github.com/GNS3/gns3-gui/issues/2630 --- .../compute_delete_projectsprojectid.txt | 4 +- ...lete_projectsprojectidcloudnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...delete_projectsprojectidiounodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...delete_projectsprojectidnatnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...elete_projectsprojectidqemunodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_projectsprojectidtracengnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...elete_projectsprojectidvpcsnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- .../api/examples/compute_get_capabilities.txt | 6 +- docs/api/examples/compute_get_iouimages.txt | 4 +- .../compute_get_networkinterfaces.txt | 6 +- docs/api/examples/compute_get_projects.txt | 8 +- .../compute_get_projectsprojectid.txt | 4 +- ..._get_projectsprojectidcloudnodesnodeid.txt | 12 +- ...te_get_projectsprojectidiounodesnodeid.txt | 12 +- ...te_get_projectsprojectidnatnodesnodeid.txt | 10 +- ...e_get_projectsprojectidqemunodesnodeid.txt | 16 +- ...et_projectsprojectidtracengnodesnodeid.txt | 12 +- ...projectsprojectidvirtualboxnodesnodeid.txt | 10 +- ...get_projectsprojectidvmwarenodesnodeid.txt | 14 +- ...e_get_projectsprojectidvpcsnodesnodeid.txt | 12 +- .../api/examples/compute_get_qemubinaries.txt | 4 +- .../examples/compute_get_qemucapabilities.txt | 4 +- docs/api/examples/compute_get_version.txt | 6 +- docs/api/examples/compute_post_projects.txt | 4 +- .../compute_post_projectsprojectidclose.txt | 4 +- ...mpute_post_projectsprojectidcloudnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 12 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ctsprojectiddockernodesnodeidduplicate.txt | 10 +- ...compute_post_projectsprojectidiounodes.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 12 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ojectsprojectidiounodesnodeidduplicate.txt | 10 +- ..._projectsprojectidiounodesnodeidreload.txt | 8 +- ...t_projectsprojectidiounodesnodeidstart.txt | 12 +- ...st_projectsprojectidiounodesnodeidstop.txt | 8 +- ...compute_post_projectsprojectidnatnodes.txt | 6 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...compute_post_projectsprojectidportsudp.txt | 4 +- ...ompute_post_projectsprojectidqemunodes.txt | 27 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...jectsprojectidqemunodesnodeidduplicate.txt | 10 +- ...projectsprojectidqemunodesnodeidreload.txt | 8 +- ...projectsprojectidqemunodesnodeidresume.txt | 8 +- ..._projectsprojectidqemunodesnodeidstart.txt | 16 +- ...t_projectsprojectidqemunodesnodeidstop.txt | 8 +- ...rojectsprojectidqemunodesnodeidsuspend.txt | 8 +- ...ute_post_projectsprojectidtracengnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...tsprojectidtracengnodesnodeidduplicate.txt | 10 +- ...jectsprojectidtracengnodesnodeidreload.txt | 8 +- ...ojectsprojectidtracengnodesnodeidstart.txt | 12 +- ...rojectsprojectidtracengnodesnodeidstop.txt | 8 +- ..._post_projectsprojectidvirtualboxnodes.txt | 6 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...tsprojectidvirtualboxnodesnodeidreload.txt | 8 +- ...tsprojectidvirtualboxnodesnodeidresume.txt | 8 +- ...ctsprojectidvirtualboxnodesnodeidstart.txt | 8 +- ...ectsprojectidvirtualboxnodesnodeidstop.txt | 8 +- ...sprojectidvirtualboxnodesnodeidsuspend.txt | 8 +- ...pute_post_projectsprojectidvmwarenodes.txt | 14 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ojectsprojectidvmwarenodesnodeidreload.txt | 8 +- ...ojectsprojectidvmwarenodesnodeidresume.txt | 8 +- ...rojectsprojectidvmwarenodesnodeidstart.txt | 8 +- ...projectsprojectidvmwarenodesnodeidstop.txt | 8 +- ...jectsprojectidvmwarenodesnodeidsuspend.txt | 8 +- ...ompute_post_projectsprojectidvpcsnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...jectsprojectidvpcsnodesnodeidduplicate.txt | 10 +- ...projectsprojectidvpcsnodesnodeidreload.txt | 8 +- ..._projectsprojectidvpcsnodesnodeidstart.txt | 12 +- ...t_projectsprojectidvpcsnodesnodeidstop.txt | 8 +- docs/api/examples/compute_post_qemuimg.txt | 4 +- .../compute_put_projectsprojectid.txt | 4 +- ..._put_projectsprojectidcloudnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...put_projectsprojectiddockernodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_put_projectsprojectidiounodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_put_projectsprojectidnatnodesnodeid.txt | 10 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...e_put_projectsprojectidqemunodesnodeid.txt | 16 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ut_projectsprojectidtracengnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...projectsprojectidvirtualboxnodesnodeid.txt | 10 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...put_projectsprojectidvmwarenodesnodeid.txt | 14 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...e_put_projectsprojectidvpcsnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- .../controller_delete_computescomputeid.txt | 4 +- .../controller_delete_projectsprojectid.txt | 8 +- ...ete_projectsprojectiddrawingsdrawingid.txt | 8 +- ...er_delete_projectsprojectidlinkslinkid.txt | 8 +- ...er_delete_projectsprojectidnodesnodeid.txt | 8 +- ...e_projectsprojectidsnapshotssnapshotid.txt | 8 +- .../examples/controller_get_appliances.txt | 147 +- .../controller_get_appliancestemplates.txt | 17617 ++++++++-------- docs/api/examples/controller_get_computes.txt | 7 +- .../controller_get_computescomputeid.txt | 7 +- ...er_get_computescomputeidemulatoraction.txt | 4 +- ...er_get_computescomputeidemulatorimages.txt | 4 +- docs/api/examples/controller_get_gns3vm.txt | 4 +- .../examples/controller_get_gns3vmengines.txt | 8 +- .../controller_get_gns3vmenginesenginevms.txt | 4 +- docs/api/examples/controller_get_projects.txt | 6 +- .../controller_get_projectsprojectid.txt | 12 +- ...ntroller_get_projectsprojectiddrawings.txt | 12 +- ...get_projectsprojectiddrawingsdrawingid.txt | 12 +- .../controller_get_projectsprojectidlinks.txt | 16 +- ...oller_get_projectsprojectidlinkslinkid.txt | 16 +- ...tsprojectidlinkslinkidavailablefilters.txt | 8 +- .../controller_get_projectsprojectidnodes.txt | 18 +- ...oller_get_projectsprojectidnodesnodeid.txt | 18 +- ...projectidnodesnodeiddynamipsautoidlepc.txt | 8 +- ...ctidnodesnodeiddynamipsidlepcproposals.txt | 8 +- ...troller_get_projectsprojectidsnapshots.txt | 14 +- docs/api/examples/controller_get_settings.txt | 18 - docs/api/examples/controller_get_symbols.txt | 4 +- docs/api/examples/controller_get_version.txt | 6 +- .../api/examples/controller_post_computes.txt | 7 +- ...oller_post_computescomputeidautoidlepc.txt | 4 +- ...r_post_computescomputeidemulatoraction.txt | 4 +- .../api/examples/controller_post_projects.txt | 6 +- .../examples/controller_post_projectsload.txt | 8 +- ...controller_post_projectsprojectidclose.txt | 12 +- ...troller_post_projectsprojectiddrawings.txt | 12 +- ...roller_post_projectsprojectidduplicate.txt | 12 +- ...controller_post_projectsprojectidlinks.txt | 12 +- ...ojectsprojectidlinkslinkidstartcapture.txt | 12 +- ...rojectsprojectidlinkslinkidstopcapture.txt | 12 +- ...controller_post_projectsprojectidnodes.txt | 18 +- ..._projectsprojectidnodesnodeidduplicate.txt | 18 +- ...ost_projectsprojectidnodesnodeidreload.txt | 18 +- ...post_projectsprojectidnodesnodeidstart.txt | 18 +- ..._post_projectsprojectidnodesnodeidstop.txt | 18 +- ...st_projectsprojectidnodesnodeidsuspend.txt | 18 +- ...ller_post_projectsprojectidnodesreload.txt | 8 +- ...oller_post_projectsprojectidnodesstart.txt | 8 +- ...roller_post_projectsprojectidnodesstop.txt | 8 +- ...ler_post_projectsprojectidnodessuspend.txt | 8 +- .../controller_post_projectsprojectidopen.txt | 12 +- ...roller_post_projectsprojectidsnapshots.txt | 14 +- ...ctsprojectidsnapshotssnapshotidrestore.txt | 12 +- .../api/examples/controller_post_settings.txt | 20 - .../api/examples/controller_post_shutdown.txt | 4 +- docs/api/examples/controller_post_version.txt | 10 +- .../controller_put_computescomputeid.txt | 7 +- docs/api/examples/controller_put_gns3vm.txt | 4 +- .../controller_put_projectsprojectid.txt | 6 +- ...put_projectsprojectiddrawingsdrawingid.txt | 12 +- ...oller_put_projectsprojectidlinkslinkid.txt | 20 +- ...oller_put_projectsprojectidnodesnodeid.txt | 18 +- docs/api/notifications/appliance.created.json | 44 + docs/api/notifications/appliance.deleted.json | 13 + docs/api/notifications/appliance.updated.json | 13 + docs/api/notifications/compute.created.json | 1 + docs/api/notifications/compute.deleted.json | 1 + docs/api/notifications/compute.updated.json | 1 + docs/api/notifications/drawing.created.json | 4 +- docs/api/notifications/drawing.deleted.json | 4 +- docs/api/notifications/drawing.updated.json | 4 +- docs/api/notifications/link.created.json | 8 +- docs/api/notifications/link.deleted.json | 4 +- docs/api/notifications/link.updated.json | 8 +- docs/api/notifications/node.updated.json | 2 +- docs/api/notifications/project.closed.json | 4 +- docs/api/notifications/project.updated.json | 2 +- docs/api/notifications/settings.updated.json | 4 - docs/api/notifications/snapshot.restored.json | 6 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- .../projectsprojectidatmswitchnodes.rst | 2 +- .../projectsprojectidatmswitchnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 8 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...ectsprojectidatmswitchnodesnodeidstart.rst | 2 +- ...jectsprojectidatmswitchnodesnodeidstop.rst | 2 +- ...tsprojectidatmswitchnodesnodeidsuspend.rst | 2 +- .../cloud/projectsprojectidcloudnodes.rst | 2 +- .../projectsprojectidcloudnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...projectsprojectidcloudnodesnodeidstart.rst | 2 +- .../projectsprojectidcloudnodesnodeidstop.rst | 2 +- ...ojectsprojectidcloudnodesnodeidsuspend.rst | 2 +- .../docker/projectsprojectiddockernodes.rst | 2 +- .../projectsprojectiddockernodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 18 +- ...ternumberdportsportnumberdstartcapture.rst | 4 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- ...rojectsprojectiddockernodesnodeidpause.rst | 2 +- ...ojectsprojectiddockernodesnodeidreload.rst | 2 +- ...rojectsprojectiddockernodesnodeidstart.rst | 2 +- ...projectsprojectiddockernodesnodeidstop.rst | 2 +- ...jectsprojectiddockernodesnodeidsuspend.rst | 2 +- ...jectsprojectiddockernodesnodeidunpause.rst | 2 +- .../projectsprojectiddynamipsnodes.rst | 2 +- .../projectsprojectiddynamipsnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- ...ectsprojectiddynamipsnodesnodeidreload.rst | 2 +- ...ectsprojectiddynamipsnodesnodeidresume.rst | 2 +- ...jectsprojectiddynamipsnodesnodeidstart.rst | 2 +- ...ojectsprojectiddynamipsnodesnodeidstop.rst | 2 +- ...ctsprojectiddynamipsnodesnodeidsuspend.rst | 2 +- .../projectsprojectidethernethubnodes.rst | 2 +- ...rojectsprojectidethernethubnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 8 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- ...tsprojectidethernethubnodesnodeidstart.rst | 2 +- ...ctsprojectidethernethubnodesnodeidstop.rst | 2 +- ...projectidethernethubnodesnodeidsuspend.rst | 2 +- .../projectsprojectidethernetswitchnodes.rst | 2 +- ...ectsprojectidethernetswitchnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 8 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- ...rojectidethernetswitchnodesnodeidstart.rst | 2 +- ...projectidethernetswitchnodesnodeidstop.rst | 2 +- ...jectidethernetswitchnodesnodeidsuspend.rst | 2 +- ...projectsprojectidframerelayswitchnodes.rst | 2 +- ...tsprojectidframerelayswitchnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 8 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- ...jectidframerelayswitchnodesnodeidstart.rst | 2 +- ...ojectidframerelayswitchnodesnodeidstop.rst | 2 +- ...ctidframerelayswitchnodesnodeidsuspend.rst | 2 +- .../compute/iou/projectsprojectidiounodes.rst | 2 +- .../iou/projectsprojectidiounodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 2 +- ...pternumberdportsportnumberdstopcapture.rst | 4 +- .../projectsprojectidiounodesnodeidreload.rst | 2 +- .../projectsprojectidiounodesnodeidstart.rst | 1 + .../projectsprojectidiounodesnodeidstop.rst | 2 +- ...projectsprojectidiounodesnodeidsuspend.rst | 2 +- .../compute/nat/projectsprojectidnatnodes.rst | 2 +- .../nat/projectsprojectidnatnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- .../projectsprojectidnatnodesnodeidstart.rst | 2 +- .../projectsprojectidnatnodesnodeidstop.rst | 2 +- ...projectsprojectidnatnodesnodeidsuspend.rst | 2 +- .../v2/compute/project/projectsprojectid.rst | 2 +- .../project/projectsprojectidclose.rst | 2 +- .../qemu/projectsprojectidqemunodes.rst | 10 +- .../qemu/projectsprojectidqemunodesnodeid.rst | 14 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...projectsprojectidqemunodesnodeidreload.rst | 2 +- ...projectsprojectidqemunodesnodeidresume.rst | 2 +- .../projectsprojectidqemunodesnodeidstart.rst | 4 +- .../projectsprojectidqemunodesnodeidstop.rst | 2 +- ...rojectsprojectidqemunodesnodeidsuspend.rst | 2 +- .../traceng/projectsprojectidtracengnodes.rst | 2 +- .../projectsprojectidtracengnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...jectsprojectidtracengnodesnodeidreload.rst | 2 +- ...ojectsprojectidtracengnodesnodeidstart.rst | 2 +- ...rojectsprojectidtracengnodesnodeidstop.rst | 2 +- ...ectsprojectidtracengnodesnodeidsuspend.rst | 2 +- .../projectsprojectidvirtualboxnodes.rst | 2 +- ...projectsprojectidvirtualboxnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...tsprojectidvirtualboxnodesnodeidreload.rst | 2 +- ...tsprojectidvirtualboxnodesnodeidresume.rst | 2 +- ...ctsprojectidvirtualboxnodesnodeidstart.rst | 2 +- ...ectsprojectidvirtualboxnodesnodeidstop.rst | 2 +- ...sprojectidvirtualboxnodesnodeidsuspend.rst | 2 +- .../vmware/projectsprojectidvmwarenodes.rst | 2 +- .../projectsprojectidvmwarenodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...ojectsprojectidvmwarenodesnodeidreload.rst | 2 +- ...ojectsprojectidvmwarenodesnodeidresume.rst | 2 +- ...rojectsprojectidvmwarenodesnodeidstart.rst | 2 +- ...projectsprojectidvmwarenodesnodeidstop.rst | 2 +- ...jectsprojectidvmwarenodesnodeidsuspend.rst | 2 +- .../vpcs/projectsprojectidvpcsnodes.rst | 2 +- .../vpcs/projectsprojectidvpcsnodesnodeid.rst | 2 +- ...ptersadapternumberdportsportnumberdnio.rst | 14 +- ...ternumberdportsportnumberdstartcapture.rst | 8 +- ...pternumberdportsportnumberdstopcapture.rst | 10 +- ...projectsprojectidvpcsnodesnodeidreload.rst | 2 +- .../projectsprojectidvpcsnodesnodeidstart.rst | 2 +- .../projectsprojectidvpcsnodesnodeidstop.rst | 2 +- ...rojectsprojectidvpcsnodesnodeidsuspend.rst | 2 +- .../v2/controller/appliance/appliances.rst | 48 + ...projectsprojectidappliancesapplianceid.rst | 4 +- docs/api/v2/controller/compute/s.rst | 1 + docs/api/v2/controller/compute/sid.rst | 6 +- .../drawing/projectsprojectiddrawings.rst | 2 +- .../projectsprojectiddrawingsdrawingid.rst | 4 +- .../link/projectsprojectidlinks.rst | 2 +- .../link/projectsprojectidlinkslinkid.rst | 4 +- .../link/projectsprojectidlinkslinkidpcap.rst | 2 +- ...ojectsprojectidlinkslinkidstartcapture.rst | 2 +- ...rojectsprojectidlinkslinkidstopcapture.rst | 2 +- .../node/projectsprojectidnodes.rst | 2 +- .../node/projectsprojectidnodesnodeid.rst | 4 +- .../projectsprojectidnodesnodeidduplicate.rst | 2 +- ...projectidnodesnodeiddynamipsautoidlepc.rst | 2 +- ...ctidnodesnodeiddynamipsidlepcproposals.rst | 2 +- .../projectsprojectidnodesnodeidfilespath.rst | 4 +- ...projectsprojectidnodesnodeidresizedisk.rst | 2 +- .../node/projectsprojectidnodesreload.rst | 2 +- .../node/projectsprojectidnodesstart.rst | 2 +- .../node/projectsprojectidnodesstop.rst | 2 +- .../node/projectsprojectidnodessuspend.rst | 2 +- .../controller/project/projectsprojectid.rst | 2 +- .../project/projectsprojectidclose.rst | 2 +- docs/api/v2/controller/server/debug.rst | 2 +- docs/api/v2/controller/server/settings.rst | 34 - .../projectsprojectidsnapshotssnapshotid.rst | 2 +- docs/controller_notifications.rst | 38 +- docs/gns3_file.json | 1138 +- scripts/documentation.sh | 2 +- 343 files changed, 11274 insertions(+), 10042 deletions(-) delete mode 100644 docs/api/examples/controller_get_settings.txt delete mode 100644 docs/api/examples/controller_post_settings.txt create mode 100644 docs/api/notifications/appliance.created.json create mode 100644 docs/api/notifications/appliance.deleted.json create mode 100644 docs/api/notifications/appliance.updated.json delete mode 100644 docs/api/notifications/settings.updated.json delete mode 100644 docs/api/v2/controller/server/settings.rst diff --git a/docs/api/examples/compute_delete_projectsprojectid.txt b/docs/api/examples/compute_delete_projectsprojectid.txt index 3d368159..b4edfe5d 100644 --- a/docs/api/examples/compute_delete_projectsprojectid.txt +++ b/docs/api/examples/compute_delete_projectsprojectid.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt index bc811a01..c64b5ff6 100644 --- a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d8eaa38d-0063-4477-afc4-9f0334556534' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/aefeb881-7e54-4511-92c2-3a24f74f1ce1' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d8eaa38d-0063-4477-afc4-9f0334556534 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/aefeb881-7e54-4511-92c2-3a24f74f1ce1 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:52 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 588889be..1e74d65f 100644 --- a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d2267a86-1326-4da5-b18a-811a0a6fa9ff/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/f10a3d19-4a34-4f20-8970-9be7ab98ec3c/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d2267a86-1326-4da5-b18a-811a0a6fa9ff/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/f10a3d19-4a34-4f20-8970-9be7ab98ec3c/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:51 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 24a6b3e6..523d959e 100644 --- a/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/ae79f459-9448-4fb9-9e40-9da73896c6cd/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bdee5d90-d9da-4fdc-8ae7-799669ee81f1/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/ae79f459-9448-4fb9-9e40-9da73896c6cd/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bdee5d90-d9da-4fdc-8ae7-799669ee81f1/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:43 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt index 2f704430..2c360106 100644 --- a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/7e0005a1-5dca-48d9-817c-35f21aaef1c4' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59cbc63c-b544-446f-a214-a058841f3e11' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/7e0005a1-5dca-48d9-817c-35f21aaef1c4 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59cbc63c-b544-446f-a214-a058841f3e11 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index c0f1849e..ada76c5b 100644 --- a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/4919875c-7855-4ea2-8a34-91f45bb8e1bc/adapters/1/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bf484e0c-01a1-4343-a838-7f0079c7f32b/adapters/1/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/4919875c-7855-4ea2-8a34-91f45bb8e1bc/adapters/1/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bf484e0c-01a1-4343-a838-7f0079c7f32b/adapters/1/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:46 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt index 33664adc..10a76313 100644 --- a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d79de987-ccbe-4907-a330-3f9cbcf6cba6' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/43e6486e-4503-4528-8458-78f1c7d3fcd6' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d79de987-ccbe-4907-a330-3f9cbcf6cba6 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/43e6486e-4503-4528-8458-78f1c7d3fcd6 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 7a15d33c..74f146b4 100644 --- a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2dce6643-e5d7-41ac-94f6-2098e4445d7a/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/54245544-0583-43aa-91de-4018e31a2027/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2dce6643-e5d7-41ac-94f6-2098e4445d7a/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/54245544-0583-43aa-91de-4018e31a2027/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt index 5a0fd0c1..d6c0f718 100644 --- a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/452bee0f-a2eb-4308-8a4f-19f77e18f61e' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5d8967b6-4175-4b6c-89d3-1c721a303180' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/452bee0f-a2eb-4308-8a4f-19f77e18f61e HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5d8967b6-4175-4b6c-89d3-1c721a303180 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:57 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:20 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 1e01d76a..873c850f 100644 --- a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/35f8b733-3fa0-4bfa-9ebc-fe7fdca23ad1/adapters/1/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6732d7d5-6c6a-4a26-b7f7-63294fa99fcb/adapters/1/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/35f8b733-3fa0-4bfa-9ebc-fe7fdca23ad1/adapters/1/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6732d7d5-6c6a-4a26-b7f7-63294fa99fcb/adapters/1/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:59 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:26 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt index b4955460..58e51ba5 100644 --- a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/05358081-f4c6-4848-a2c1-4b6b29bb705b' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8df2de82-8e09-4679-96ca-f61675536ec7' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/05358081-f4c6-4848-a2c1-4b6b29bb705b HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8df2de82-8e09-4679-96ca-f61675536ec7 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 5024cc22..3b205d34 100644 --- a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/3472e2d0-b2a9-4e37-9bd0-263df285b533/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/bdbe10b4-3e29-4245-85ed-5dd8951eb759/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/3472e2d0-b2a9-4e37-9bd0-263df285b533/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/bdbe10b4-3e29-4245-85ed-5dd8951eb759/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 9704335d..b184d4df 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c4a086a0-d3be-44bb-9195-1d4acc3049a6/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2a0d6b1d-3f71-4b9d-b5f5-57ffb6fa8606/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c4a086a0-d3be-44bb-9195-1d4acc3049a6/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2a0d6b1d-3f71-4b9d-b5f5-57ffb6fa8606/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index a8b377b3..09760ca9 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a99d1059-7607-4a7e-8045-42656e992aee/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/3aefba69-0aa7-47f2-b21f-5c2e5ec79dc8/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a99d1059-7607-4a7e-8045-42656e992aee/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/3aefba69-0aa7-47f2-b21f-5c2e5ec79dc8/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:16 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:52 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt index 61cf9069..4c6f26d2 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/7246e203-ee97-46af-9548-b465c0a6f113' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce6fd8d1-2290-42a3-a23d-9c7b8d771f8f' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/7246e203-ee97-46af-9548-b465c0a6f113 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce6fd8d1-2290-42a3-a23d-9c7b8d771f8f HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 5740d80a..c59378ea 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/7354ac65-220b-45de-99f3-36903af1e321/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a5ff24c0-4247-45a0-bb3a-772d55fbc007/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/7354ac65-220b-45de-99f3-36903af1e321/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a5ff24c0-4247-45a0-bb3a-772d55fbc007/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_get_capabilities.txt b/docs/api/examples/compute_get_capabilities.txt index 61a32ff3..782dbaad 100644 --- a/docs/api/examples/compute_get_capabilities.txt +++ b/docs/api/examples/compute_get_capabilities.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 366 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:50 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/capabilities { @@ -30,5 +30,5 @@ X-Route: /v2/compute/capabilities "iou" ], "platform": "linuxdebian", - "version": "2.2.0dev2" + "version": "2.2.0dev4" } diff --git a/docs/api/examples/compute_get_iouimages.txt b/docs/api/examples/compute_get_iouimages.txt index fd941e5e..c1a3058e 100644 --- a/docs/api/examples/compute_get_iouimages.txt +++ b/docs/api/examples/compute_get_iouimages.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 149 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:46 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:57 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/iou/images [ diff --git a/docs/api/examples/compute_get_networkinterfaces.txt b/docs/api/examples/compute_get_networkinterfaces.txt index 278d6ff9..c01457db 100644 --- a/docs/api/examples/compute_get_networkinterfaces.txt +++ b/docs/api/examples/compute_get_networkinterfaces.txt @@ -8,15 +8,15 @@ HTTP/1.1 200 Connection: close Content-Length: 2297 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/network/interfaces [ { "id": "docker0", "ip_address": "172.17.0.1", - "mac_address": "02:42:3d:0c:1b:8e", + "mac_address": "02:42:1b:5e:24:0d", "name": "docker0", "netmask": "255.255.0.0", "special": true, diff --git a/docs/api/examples/compute_get_projects.txt b/docs/api/examples/compute_get_projects.txt index 6c65dfe2..837b426e 100644 --- a/docs/api/examples/compute_get_projects.txt +++ b/docs/api/examples/compute_get_projects.txt @@ -8,19 +8,19 @@ HTTP/1.1 200 Connection: close Content-Length: 252 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects [ { "name": "test", - "project_id": "52010203-0405-0607-0809-0a0b0c0d0e0b", + "project_id": "51010203-0405-0607-0809-0a0b0c0d0e0f", "variables": null }, { "name": "test", - "project_id": "51010203-0405-0607-0809-0a0b0c0d0e0f", + "project_id": "52010203-0405-0607-0809-0a0b0c0d0e0b", "variables": null } ] diff --git a/docs/api/examples/compute_get_projectsprojectid.txt b/docs/api/examples/compute_get_projectsprojectid.txt index 6b418d59..e5c15f25 100644 --- a/docs/api/examples/compute_get_projectsprojectid.txt +++ b/docs/api/examples/compute_get_projectsprojectid.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 103 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id} { diff --git a/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt index ada495d9..34edee99 100644 --- a/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5d5f4a4d-ee99-4f1e-b1e6-aa7ac189d77e' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/460c2684-9681-43bd-bceb-1cad9052b80e' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5d5f4a4d-ee99-4f1e-b1e6-aa7ac189d77e HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/460c2684-9681-43bd-bceb-1cad9052b80e HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1742 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:51 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} { @@ -66,8 +66,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} } ], "name": "Cloud 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/builtin/5d5f4a4d-ee99-4f1e-b1e6-aa7ac189d77e", - "node_id": "5d5f4a4d-ee99-4f1e-b1e6-aa7ac189d77e", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/460c2684-9681-43bd-bceb-1cad9052b80e", + "node_id": "460c2684-9681-43bd-bceb-1cad9052b80e", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt index 9bb007de..522acedf 100644 --- a/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/24da23c5-ca8a-40e7-9027-073280a7c93d' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82c72035-b684-4aad-ae9f-d3acc77186d0' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/24da23c5-ca8a-40e7-9027-073280a7c93d HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82c72035-b684-4aad-ae9f-d3acc77186d0 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 614 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/iou/24da23c5-ca8a-40e7-9027-073280a7c93d", - "node_id": "24da23c5-ca8a-40e7-9027-073280a7c93d", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/82c72035-b684-4aad-ae9f-d3acc77186d0", + "node_id": "82c72035-b684-4aad-ae9f-d3acc77186d0", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt index f48c7640..00bfc6df 100644 --- a/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19e61671-f1eb-4d3c-a36a-de70fb85f0a5' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d9e63280-0f98-4299-9d23-537e6deda69f' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19e61671-f1eb-4d3c-a36a-de70fb85f0a5 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d9e63280-0f98-4299-9d23-537e6deda69f HTTP/1.1 @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 335 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} { "name": "Nat 1", - "node_id": "19e61671-f1eb-4d3c-a36a-de70fb85f0a5", + "node_id": "d9e63280-0f98-4299-9d23-537e6deda69f", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt index e94b9ed9..2425d2dc 100644 --- a/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c0797ce4-96ec-4cd2-9521-d1656750a0d5' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2dc16b38-dd03-4aa1-b869-b202553f249c' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c0797ce4-96ec-4cd2-9521-d1656750a0d5 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2dc16b38-dd03-4aa1-b869-b202553f249c HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1381 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:53 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} { @@ -43,16 +43,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:a0:d5:00", + "mac_address": "0c:dd:80:24:9c:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/c0797ce4-96ec-4cd2-9521-d1656750a0d5", - "node_id": "c0797ce4-96ec-4cd2-9521-d1656750a0d5", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/2dc16b38-dd03-4aa1-b869-b202553f249c", + "node_id": "2dc16b38-dd03-4aa1-b869-b202553f249c", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", + "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", "ram": 256, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt index 72853acd..478e1380 100644 --- a/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e8f638f9-e665-484c-92d2-dc4aa93d6cc9' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/75fb315d-2d50-4bf2-bfd2-76d36422ea69' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e8f638f9-e665-484c-92d2-dc4aa93d6cc9 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/75fb315d-2d50-4bf2-bfd2-76d36422ea69 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 443 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} { @@ -19,8 +19,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/e8f638f9-e665-484c-92d2-dc4aa93d6cc9", - "node_id": "e8f638f9-e665-484c-92d2-dc4aa93d6cc9", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/75fb315d-2d50-4bf2-bfd2-76d36422ea69", + "node_id": "75fb315d-2d50-4bf2-bfd2-76d36422ea69", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt index b4f05b65..0036785c 100644 --- a/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/966c89b1-ff22-43b8-af91-f6c1289def7b' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/760cae83-2525-4d1f-95ff-4c271471e6b2' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/966c89b1-ff22-43b8-af91-f6c1289def7b HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/760cae83-2525-4d1f-95ff-4c271471e6b2 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 466 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} { @@ -21,7 +21,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} "linked_clone": false, "name": "VMTEST", "node_directory": null, - "node_id": "966c89b1-ff22-43b8-af91-f6c1289def7b", + "node_id": "760cae83-2525-4d1f-95ff-4c271471e6b2", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt index a3cc9c6d..cb6415ea 100644 --- a/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/cefc6d01-0b0a-4d60-80f7-0b89f43a2a97' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/de1e8952-8b8e-471f-9bad-2bfed5bd1313' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/cefc6d01-0b0a-4d60-80f7-0b89f43a2a97 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/de1e8952-8b8e-471f-9bad-2bfed5bd1313 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 594 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:07 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:41 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} { @@ -20,11 +20,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} "headless": false, "linked_clone": false, "name": "VMTEST", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/cefc6d01-0b0a-4d60-80f7-0b89f43a2a97", - "node_id": "cefc6d01-0b0a-4d60-80f7-0b89f43a2a97", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/de1e8952-8b8e-471f-9bad-2bfed5bd1313", + "node_id": "de1e8952-8b8e-471f-9bad-2bfed5bd1313", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-19/test_vmware_get0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_get0/test.vmx" } diff --git a/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt index aeaea40c..d7e6daaa 100644 --- a/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/4fb4e4c1-0c99-464b-a518-8682d7ce3d41' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/17f905aa-64c7-4373-815b-bc67bd16d9dd' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/4fb4e4c1-0c99-464b-a518-8682d7ce3d41 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/17f905aa-64c7-4373-815b-bc67bd16d9dd HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 384 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} { @@ -17,8 +17,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/4fb4e4c1-0c99-464b-a518-8682d7ce3d41", - "node_id": "4fb4e4c1-0c99-464b-a518-8682d7ce3d41", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/17f905aa-64c7-4373-815b-bc67bd16d9dd", + "node_id": "17f905aa-64c7-4373-815b-bc67bd16d9dd", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_get_qemubinaries.txt b/docs/api/examples/compute_get_qemubinaries.txt index 6a8c8a1a..c4d54404 100644 --- a/docs/api/examples/compute_get_qemubinaries.txt +++ b/docs/api/examples/compute_get_qemubinaries.txt @@ -12,8 +12,8 @@ HTTP/1.1 200 Connection: close Content-Length: 212 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:00 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:29 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/qemu/binaries [ diff --git a/docs/api/examples/compute_get_qemucapabilities.txt b/docs/api/examples/compute_get_qemucapabilities.txt index 756731bf..fe2dee2c 100644 --- a/docs/api/examples/compute_get_qemucapabilities.txt +++ b/docs/api/examples/compute_get_qemucapabilities.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 39 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:04 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:34 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/qemu/capabilities { diff --git a/docs/api/examples/compute_get_version.txt b/docs/api/examples/compute_get_version.txt index 077ef2e4..f8c1940b 100644 --- a/docs/api/examples/compute_get_version.txt +++ b/docs/api/examples/compute_get_version.txt @@ -8,11 +8,11 @@ HTTP/1.1 200 Connection: close Content-Length: 49 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/version { "local": true, - "version": "2.2.0dev2" + "version": "2.2.0dev4" } diff --git a/docs/api/examples/compute_post_projects.txt b/docs/api/examples/compute_post_projects.txt index b24e1b12..1c8b267c 100644 --- a/docs/api/examples/compute_post_projects.txt +++ b/docs/api/examples/compute_post_projects.txt @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 103 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects { diff --git a/docs/api/examples/compute_post_projectsprojectidclose.txt b/docs/api/examples/compute_post_projectsprojectidclose.txt index de4aca95..c7554637 100644 --- a/docs/api/examples/compute_post_projectsprojectidclose.txt +++ b/docs/api/examples/compute_post_projectsprojectidclose.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/close diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt index f41a8ea9..655bdeb7 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1742 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:50 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes { @@ -68,8 +68,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes } ], "name": "Cloud 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/builtin/febb8530-37b2-4121-afdd-ce614170245b", - "node_id": "febb8530-37b2-4121-afdd-ce614170245b", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/524975d2-49e3-4a05-9a8f-746ba557ced6", + "node_id": "524975d2-49e3-4a05-9a8f-746ba557ced6", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 58d8f57e..ac8406de 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a64874d0-1e1f-4aa2-a48d-bb03bd7e280f/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/67f42e9b-8b98-4375-86ec-4575beabab6b/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a64874d0-1e1f-4aa2-a48d-bb03bd7e280f/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/67f42e9b-8b98-4375-86ec-4575beabab6b/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:51 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 924ae3a4..ab9258ec 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bad56b1f-39a2-4c9b-90b8-6237793dd536/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/1cbcb6f8-cc5d-468e-8437-8f03b3b7b914/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bad56b1f-39a2-4c9b-90b8-6237793dd536/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/1cbcb6f8-cc5d-468e-8437-8f03b3b7b914/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:42 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index e5771d13..85299e11 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/571caef6-e438-48d2-aaa7-88f5c0eed2c0/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b4e63539-a7f4-4cc5-a7b4-9d1a44fc9a0c/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/571caef6-e438-48d2-aaa7-88f5c0eed2c0/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b4e63539-a7f4-4cc5-a7b4-9d1a44fc9a0c/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -9,12 +9,12 @@ POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/571c HTTP/1.1 200 Connection: close -Content-Length: 94 +Content-Length: 104 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:43 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-19/test_json4/tmp/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 33df293c..1747e3d1 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/f544dbe9-a742-4beb-b6de-74e3f62c0fb0/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/3e187ec1-989a-4841-9e22-99d9045c2ffe/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/f544dbe9-a742-4beb-b6de-74e3f62c0fb0/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/3e187ec1-989a-4841-9e22-99d9045c2ffe/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:43 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt index 74148392..7ab1918d 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/a0d11f0c-cc1a-41e5-b2fe-5d2303e49b99/duplicate' -d '{"destination_node_id": "4f58938a-d98e-4933-b0b3-ceb0534e2f33"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/20929ed1-6f2f-4a85-bc5d-ddbb9ad3a47e/duplicate' -d '{"destination_node_id": "051bd795-8ef1-44e8-9a23-cc0c127227ed"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/a0d11f0c-cc1a-41e5-b2fe-5d2303e49b99/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/20929ed1-6f2f-4a85-bc5d-ddbb9ad3a47e/duplicate HTTP/1.1 { - "destination_node_id": "4f58938a-d98e-4933-b0b3-ceb0534e2f33" + "destination_node_id": "051bd795-8ef1-44e8-9a23-cc0c127227ed" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:43 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidiounodes.txt b/docs/api/examples/compute_post_projectsprojectidiounodes.txt index 36f4dc93..e24e2b61 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodes.txt @@ -1,9 +1,9 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes' -d '{"name": "PC TEST 1", "node_id": "67e11483-dd42-4a0d-bef6-d5c8af9eaaec", "path": "iou.bin", "startup_config_content": "hostname test"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes' -d '{"name": "PC TEST 1", "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", "path": "iou.bin", "startup_config_content": "hostname test"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes HTTP/1.1 { "name": "PC TEST 1", - "node_id": "67e11483-dd42-4a0d-bef6-d5c8af9eaaec", + "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", "path": "iou.bin", "startup_config_content": "hostname test" } @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 614 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes { @@ -26,8 +26,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/iou/67e11483-dd42-4a0d-bef6-d5c8af9eaaec", - "node_id": "67e11483-dd42-4a0d-bef6-d5c8af9eaaec", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/0b95e307-c0fc-4ef7-bf85-f5b24433a80a", + "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 065e5031..909e3c99 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2bf5166d-6369-4654-995a-c8dffe61c6af/adapters/1/ports/0/nio' -d '{"ethernet_device": "docker0", "type": "nio_ethernet"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/20cba7fa-176e-4ed5-8a77-44b792e7265f/adapters/1/ports/0/nio' -d '{"ethernet_device": "docker0", "type": "nio_ethernet"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2bf5166d-6369-4654-995a-c8dffe61c6af/adapters/1/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/20cba7fa-176e-4ed5-8a77-44b792e7265f/adapters/1/ports/0/nio HTTP/1.1 { "ethernet_device": "docker0", "type": "nio_ethernet" @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 64 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index 20130f51..f42f85f6 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/305c77a5-c71a-4b75-834a-ccdaeae83636/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b5148884-427c-44d9-b606-9d53e33e718a/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/305c77a5-c71a-4b75-834a-ccdaeae83636/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b5148884-427c-44d9-b606-9d53e33e718a/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -9,12 +9,12 @@ POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/305c77a HTTP/1.1 200 Connection: close -Content-Length: 94 +Content-Length: 104 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:46 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-19/test_json4/tmp/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index f71f26d0..70b59fe5 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/97585aea-38f1-48a1-8128-85d5329a173d/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bfb62268-221d-4507-89b3-4196a5ecbeb7/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/97585aea-38f1-48a1-8128-85d5329a173d/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bfb62268-221d-4507-89b3-4196a5ecbeb7/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:46 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt index 50450224..8264af9b 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/882ebd5d-2fc9-4e9d-8b8c-f345c034c7a1/duplicate' -d '{"destination_node_id": "6266c1ee-5419-4cbb-9f43-60ece8a78f42"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/8b862a2d-4c84-4332-aea9-c03a88bd4cf1/duplicate' -d '{"destination_node_id": "7a6e8a08-6178-4982-9ace-85aa5c180f6e"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/882ebd5d-2fc9-4e9d-8b8c-f345c034c7a1/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/8b862a2d-4c84-4332-aea9-c03a88bd4cf1/duplicate HTTP/1.1 { - "destination_node_id": "6266c1ee-5419-4cbb-9f43-60ece8a78f42" + "destination_node_id": "7a6e8a08-6178-4982-9ace-85aa5c180f6e" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt index f3a4c0ac..a4a3a1cc 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/54ebd9d0-3036-4366-8e4f-ca7261953adf/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a475eb09-0381-47e1-8227-34bd8603c88f/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/54ebd9d0-3036-4366-8e4f-ca7261953adf/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a475eb09-0381-47e1-8227-34bd8603c88f/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt index b2ffa691..446a5e6e 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2b4666ea-9ba2-466a-ad9e-d195c84a0d92/start' -d '{"iourc_content": "test"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/9a89a826-338b-4834-8b83-97a6a2af6e9c/start' -d '{"iourc_content": "test"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2b4666ea-9ba2-466a-ad9e-d195c84a0d92/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/9a89a826-338b-4834-8b83-97a6a2af6e9c/start HTTP/1.1 { "iourc_content": "test" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 614 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start { @@ -23,8 +23,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/iou/2b4666ea-9ba2-466a-ad9e-d195c84a0d92", - "node_id": "2b4666ea-9ba2-466a-ad9e-d195c84a0d92", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/9a89a826-338b-4834-8b83-97a6a2af6e9c", + "node_id": "9a89a826-338b-4834-8b83-97a6a2af6e9c", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt index c6dc77d2..e9b0d46b 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59c5fa96-21a0-4d57-8cd0-ebf89fbe67d1/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c993730f-6cd7-4298-90ad-f7fff52d6166/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59c5fa96-21a0-4d57-8cd0-ebf89fbe67d1/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c993730f-6cd7-4298-90ad-f7fff52d6166/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodes.txt b/docs/api/examples/compute_post_projectsprojectidnatnodes.txt index 80f60a59..c1724238 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodes.txt @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 335 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes { "name": "Nat 1", - "node_id": "0fb0a36d-497e-4a6e-a00a-40b4711eabe4", + "node_id": "6a8086f1-d205-4bff-bf57-ecf8e4e67ce4", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index e05b3aa8..20d5b90c 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/a7d7f761-e36c-47b0-b949-4361ab8419aa/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19ef641b-65e2-4b08-9e3c-63b88cae1029/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/a7d7f761-e36c-47b0-b949-4361ab8419aa/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19ef641b-65e2-4b08-9e3c-63b88cae1029/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidportsudp.txt b/docs/api/examples/compute_post_projectsprojectidportsudp.txt index 8989cf55..2f64bd09 100644 --- a/docs/api/examples/compute_post_projectsprojectidportsudp.txt +++ b/docs/api/examples/compute_post_projectsprojectidportsudp.txt @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 25 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/ports/udp { diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodes.txt b/docs/api/examples/compute_post_projectsprojectidqemunodes.txt index 45b730bd..ee21e912 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodes.txt @@ -1,20 +1,19 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes' -d '{"hda_disk_image": "linux\u8f7d.img", "name": "PC TEST 1", "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", "ram": 1024}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes' -d '{"hda_disk_image": "hello.img", "name": "PC TEST 1", "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes HTTP/1.1 { - "hda_disk_image": "linux\u8f7d.img", + "hda_disk_image": "hello.img", "name": "PC TEST 1", - "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", - "ram": 1024 + "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64" } HTTP/1.1 201 Connection: close -Content-Length: 1427 +Content-Length: 1420 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:53 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes { @@ -30,8 +29,8 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes "console_type": "telnet", "cpu_throttling": 0, "cpus": 1, - "hda_disk_image": "linux\u8f7d.img", - "hda_disk_image_md5sum": "c4ca4238a0b923820dcc509a6f75849b", + "hda_disk_image": "hello.img", + "hda_disk_image_md5sum": "7d793037a0760186574b0282f2f435e7", "hda_disk_interface": "ide", "hdb_disk_image": "", "hdb_disk_image_md5sum": null, @@ -48,17 +47,17 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:7a:3c:00", + "mac_address": "0c:dd:80:6e:4a:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/23785ce8-3c77-44cf-becf-f10b539a7a3c", - "node_id": "23785ce8-3c77-44cf-becf-f10b539a7a3c", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/b4e7b8ed-8121-4c87-8ef6-391ddea86e4a", + "node_id": "b4e7b8ed-8121-4c87-8ef6-391ddea86e4a", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", - "ram": 1024, + "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", + "ram": 256, "status": "stopped", "usage": "" } diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 0270330b..30bbf39e 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3a1bf07e-161e-4498-8460-0a7b7f213b19/adapters/1/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2f9f2613-4320-4283-8fc4-765e1fabb705/adapters/1/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3a1bf07e-161e-4498-8460-0a7b7f213b19/adapters/1/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2f9f2613-4320-4283-8fc4-765e1fabb705/adapters/1/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:58 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:22 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt index d0f725a1..50efa10c 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/80d655e8-9672-4135-84e9-e2fdeeb4860b/duplicate' -d '{"destination_node_id": "70e13ffc-681d-49ed-910b-664ed570386c"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2d0c5456-a833-453e-9fd5-f28efd9b3709/duplicate' -d '{"destination_node_id": "cdb0e425-7ba9-42ca-a258-a86ae72a72e5"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/80d655e8-9672-4135-84e9-e2fdeeb4860b/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2d0c5456-a833-453e-9fd5-f28efd9b3709/duplicate HTTP/1.1 { - "destination_node_id": "70e13ffc-681d-49ed-910b-664ed570386c" + "destination_node_id": "cdb0e425-7ba9-42ca-a258-a86ae72a72e5" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:04 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:36 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt index 07e56367..580a8ac8 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/539e7eea-8299-449e-8edc-f4dc9fc6a78e/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d1496b9b-eeb8-4d07-bc2f-794fd42dc4a9/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/539e7eea-8299-449e-8edc-f4dc9fc6a78e/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d1496b9b-eeb8-4d07-bc2f-794fd42dc4a9/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:55 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:13 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt index 6633b9a3..2ca81b53 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/26dbe6f7-487b-4343-8684-e0ba8ff44be7/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/77d09e2a-ecef-4f7b-ae1c-fa3a4c517bcb/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/26dbe6f7-487b-4343-8684-e0ba8ff44be7/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/77d09e2a-ecef-4f7b-ae1c-fa3a4c517bcb/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:56 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:19 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt index 0eb1d32f..c0ac57c2 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/23fcd2bc-9a7d-4b5f-98ac-8d89f8018e7b/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6467dbf8-1949-4a5c-9196-f091cde83c1a/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/23fcd2bc-9a7d-4b5f-98ac-8d89f8018e7b/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6467dbf8-1949-4a5c-9196-f091cde83c1a/start HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1381 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:55 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start { @@ -43,16 +43,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:8e:7b:00", + "mac_address": "0c:dd:80:3c:1a:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/23fcd2bc-9a7d-4b5f-98ac-8d89f8018e7b", - "node_id": "23fcd2bc-9a7d-4b5f-98ac-8d89f8018e7b", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/6467dbf8-1949-4a5c-9196-f091cde83c1a", + "node_id": "6467dbf8-1949-4a5c-9196-f091cde83c1a", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", + "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", "ram": 256, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt index 150a1557..b3c5d41e 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9ee0bcce-e82e-4118-85d0-7d42adc17d20/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/70867380-e9a2-41ed-8833-e3480fc59241/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9ee0bcce-e82e-4118-85d0-7d42adc17d20/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/70867380-e9a2-41ed-8833-e3480fc59241/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:55 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt index 735f5bf7..dc1f649b 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/987b2e4b-217e-4753-b68b-8d2446ea3c22/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c2fe7eb1-7787-417e-b3cb-76c984153fdc/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/987b2e4b-217e-4753-b68b-8d2446ea3c22/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c2fe7eb1-7787-417e-b3cb-76c984153fdc/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:22:55 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:18 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt index ca7d14f5..0fb5bd54 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 443 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/7ba1137d-09a7-420b-9e8e-8db58305958b", - "node_id": "7ba1137d-09a7-420b-9e8e-8db58305958b", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/d7facbd2-63f5-44a0-ad86-d5d69f4aaf6e", + "node_id": "d7facbd2-63f5-44a0-ad86-d5d69f4aaf6e", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 2c4b2e6c..2c70bd51 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80621873-7708-43c4-8ace-3f2a282262ad/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e62a021e-05dd-4873-a12e-e4a55f0ee1c4/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80621873-7708-43c4-8ace-3f2a282262ad/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e62a021e-05dd-4873-a12e-e4a55f0ee1c4/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt index 1656aab3..3ae46913 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/1eabddf4-b65e-4261-8b4e-713c8b2f7bbb/duplicate' -d '{"destination_node_id": "27018f55-c273-4f98-a354-ffb038d99390"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/479bdb08-7aaf-455b-833a-d28d9f0aa718/duplicate' -d '{"destination_node_id": "381aa95d-f54e-44e2-8742-918b9f387f1d"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/1eabddf4-b65e-4261-8b4e-713c8b2f7bbb/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/479bdb08-7aaf-455b-833a-d28d9f0aa718/duplicate HTTP/1.1 { - "destination_node_id": "27018f55-c273-4f98-a354-ffb038d99390" + "destination_node_id": "381aa95d-f54e-44e2-8742-918b9f387f1d" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt index 5887fcd5..a231b86d 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b52d517e-3865-4e8b-b927-f520106705ec/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80424f98-d63d-45d1-8017-7ddc4e54c8ad/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b52d517e-3865-4e8b-b927-f520106705ec/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80424f98-d63d-45d1-8017-7ddc4e54c8ad/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt index 545da81c..b8faee23 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c3b8f66c-6191-4826-82c2-3c183d2e159c/start' -d '{"destination": "192.168.1.2"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c44444f5-3ec9-4266-b378-00095a009b80/start' -d '{"destination": "192.168.1.2"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c3b8f66c-6191-4826-82c2-3c183d2e159c/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c44444f5-3ec9-4266-b378-00095a009b80/start HTTP/1.1 { "destination": "192.168.1.2" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 443 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/c3b8f66c-6191-4826-82c2-3c183d2e159c", - "node_id": "c3b8f66c-6191-4826-82c2-3c183d2e159c", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/c44444f5-3ec9-4266-b378-00095a009b80", + "node_id": "c44444f5-3ec9-4266-b378-00095a009b80", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt index f866eaba..f4391b88 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/438b6bdc-4f4b-4367-831d-253d4be4bbb6/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b1665638-c463-4b50-94d0-46f7fb908529/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/438b6bdc-4f4b-4367-831d-253d4be4bbb6/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b1665638-c463-4b50-94d0-46f7fb908529/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt index d1a562c4..ddb72601 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 460 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes { @@ -25,7 +25,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes "linked_clone": false, "name": "VM1", "node_directory": null, - "node_id": "57acf8e0-a72c-45a2-8fcf-a065b37e9c7a", + "node_id": "b2f5ee74-cf1b-4600-822c-38eb239306c2", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 2db47f40..30e317c6 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7a48f127-6b01-43b7-8a75-3fac422bf0d2/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7f3b2de7-1d5c-4d79-a49b-5d837a09b026/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7a48f127-6b01-43b7-8a75-3fac422bf0d2/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7f3b2de7-1d5c-4d79-a49b-5d837a09b026/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt index 3fbc2235..f1a75039 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/b3fad03f-5133-4ef1-8ff5-f1a240b72c14/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/99c08510-8a50-439e-bfb3-9f1ac1b729f1/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/b3fad03f-5133-4ef1-8ff5-f1a240b72c14/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/99c08510-8a50-439e-bfb3-9f1ac1b729f1/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt index 694f98a8..23c10fca 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8df4a431-7f2e-4a47-8f99-d9f14b19a4ef/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ee8f3742-682a-495b-9854-4c091c725c00/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8df4a431-7f2e-4a47-8f99-d9f14b19a4ef/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ee8f3742-682a-495b-9854-4c091c725c00/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt index bc1b5114..5961d668 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/cdca93c2-95aa-467b-a79b-00f93d63022e/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4cf6acf2-6933-4f46-abb0-757ca8ac358d/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/cdca93c2-95aa-467b-a79b-00f93d63022e/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4cf6acf2-6933-4f46-abb0-757ca8ac358d/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/start diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt index 98da9b86..81f36ff7 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/74be1229-8889-47a4-86cc-f9a7352d717b/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/17873c2c-ec04-4c6b-bbf7-399ddc2e4c2d/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/74be1229-8889-47a4-86cc-f9a7352d717b/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/17873c2c-ec04-4c6b-bbf7-399ddc2e4c2d/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt index 83a9072b..255d5fd1 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/0c88c5fb-baa8-4ceb-9325-6cceb4a86766/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/fd256c2f-ac6e-4f9d-975a-e6ea2347170a/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/0c88c5fb-baa8-4ceb-9325-6cceb4a86766/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/fd256c2f-ac6e-4f9d-975a-e6ea2347170a/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt index f53d13f1..ef7dd6c7 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt @@ -1,10 +1,10 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes' -d '{"linked_clone": false, "name": "VM1", "vmx_path": "/tmp/pytest-of-grossmj/pytest-19/test_vmware_create0/test.vmx"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes' -d '{"linked_clone": false, "name": "VM1", "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes HTTP/1.1 { "linked_clone": false, "name": "VM1", - "vmx_path": "/tmp/pytest-of-grossmj/pytest-19/test_vmware_create0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx" } @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 594 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes { @@ -24,11 +24,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes "headless": false, "linked_clone": false, "name": "VM1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/3f14057f-de2e-4254-b140-3ed8430c1f87", - "node_id": "3f14057f-de2e-4254-b140-3ed8430c1f87", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/b731aa49-722d-492b-b2e1-49a8fbfddd9d", + "node_id": "b731aa49-722d-492b-b2e1-49a8fbfddd9d", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-19/test_vmware_create0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx" } diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 7f09e2e0..9b7f820d 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ecd4a281-3878-47a1-a174-2ea3d9564b56/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/707b538f-74c5-42d9-8b45-3743c8a50b26/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ecd4a281-3878-47a1-a174-2ea3d9564b56/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/707b538f-74c5-42d9-8b45-3743c8a50b26/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:14 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:47 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt index 40b26877..502e965d 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/4cb704a4-44c4-4c9e-b522-4908fd91fc68/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a772e2be-8c19-4c27-8b85-8db063bf51b3/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/4cb704a4-44c4-4c9e-b522-4908fd91fc68/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a772e2be-8c19-4c27-8b85-8db063bf51b3/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:13 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:46 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt index a09e7277..6c6133da 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/81633c23-b08b-4797-9140-762cd25e1628/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/32bec5f3-c1ef-4845-abc7-976a9f743801/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/81633c23-b08b-4797-9140-762cd25e1628/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/32bec5f3-c1ef-4845-abc7-976a9f743801/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:12 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:45 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt index 4d065e17..47bd4436 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/8e20d77f-8544-4c7b-bc62-80fd8fdede7f/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d49d945a-0e5d-4ae0-a68d-58798953af7c/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/8e20d77f-8544-4c7b-bc62-80fd8fdede7f/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d49d945a-0e5d-4ae0-a68d-58798953af7c/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:09 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:42 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/start diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt index 1950f69e..80d31e64 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/fe5caf38-15d9-445e-b85d-4b6b5a2753f0/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1e2471fd-894a-4fb7-ac4a-1a748611b7b7/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/fe5caf38-15d9-445e-b85d-4b6b5a2753f0/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1e2471fd-894a-4fb7-ac4a-1a748611b7b7/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:10 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:43 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt index b8735efd..add42f20 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/f5fd2ca0-cf4c-4ee0-ad66-a944cb16b3d6/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/65c44e67-3039-4360-8c4c-5373f64ee4ff/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/f5fd2ca0-cf4c-4ee0-ad66-a944cb16b3d6/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/65c44e67-3039-4360-8c4c-5373f64ee4ff/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:11 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:44 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt index 1d8acbb4..ec2a2249 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 384 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes { @@ -19,8 +19,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/d6d1d1ea-ac1f-43e4-a87b-5f73ff354da5", - "node_id": "d6d1d1ea-ac1f-43e4-a87b-5f73ff354da5", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/6f2aceed-58ef-4d52-9c7f-a60c9c88867c", + "node_id": "6f2aceed-58ef-4d52-9c7f-a60c9c88867c", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 9c1017ad..e69889d9 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/101d93e3-a6c8-4ffa-ad71-0b8ed57b3877/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/b7f5535b-c496-463f-8a87-7828b40efe6e/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/101d93e3-a6c8-4ffa-ad71-0b8ed57b3877/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/b7f5535b-c496-463f-8a87-7828b40efe6e/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt index 28a5ed73..09b60218 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/855cd169-cd51-4cb4-8383-9d41d4389741/duplicate' -d '{"destination_node_id": "aaa4bc31-1c8f-4f70-9de4-377be2ae0f98"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/c746cf32-8dc1-4022-8788-ee6ab876facc/duplicate' -d '{"destination_node_id": "5d066b15-97d6-4957-9c97-4314ec114029"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/855cd169-cd51-4cb4-8383-9d41d4389741/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/c746cf32-8dc1-4022-8788-ee6ab876facc/duplicate HTTP/1.1 { - "destination_node_id": "aaa4bc31-1c8f-4f70-9de4-377be2ae0f98" + "destination_node_id": "5d066b15-97d6-4957-9c97-4314ec114029" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt index a0f68f9b..6d69c9f9 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/81b25be4-d371-414b-bc18-f0115b77656a/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ed57e0b3-5eb9-4311-a36a-901a8dd48eac/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/81b25be4-d371-414b-bc18-f0115b77656a/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ed57e0b3-5eb9-4311-a36a-901a8dd48eac/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt index b51197bb..92bad3b3 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/91a04c2d-0c6c-428b-81e5-bea45f50f000/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/65171aae-388a-44a8-a225-a37781daa1d2/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/91a04c2d-0c6c-428b-81e5-bea45f50f000/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/65171aae-388a-44a8-a225-a37781daa1d2/start HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 384 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/start { @@ -17,8 +17,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/start "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/91a04c2d-0c6c-428b-81e5-bea45f50f000", - "node_id": "91a04c2d-0c6c-428b-81e5-bea45f50f000", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/65171aae-388a-44a8-a225-a37781daa1d2", + "node_id": "65171aae-388a-44a8-a225-a37781daa1d2", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt index 180daa93..4ea1c86f 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/8ff2f98b-566e-46d3-8a4f-5fb3eedc2956/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c69e2fd-ed13-44fe-b908-debdbcb8b53b/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/8ff2f98b-566e-46d3-8a4f-5fb3eedc2956/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c69e2fd-ed13-44fe-b908-debdbcb8b53b/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_qemuimg.txt b/docs/api/examples/compute_post_qemuimg.txt index 94110bf4..b31c0a9b 100644 --- a/docs/api/examples/compute_post_qemuimg.txt +++ b/docs/api/examples/compute_post_qemuimg.txt @@ -17,7 +17,7 @@ HTTP/1.1 201 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:04 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:34 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/qemu/img diff --git a/docs/api/examples/compute_put_projectsprojectid.txt b/docs/api/examples/compute_put_projectsprojectid.txt index 2ed79e2e..7b489b68 100644 --- a/docs/api/examples/compute_put_projectsprojectid.txt +++ b/docs/api/examples/compute_put_projectsprojectid.txt @@ -15,8 +15,8 @@ HTTP/1.1 200 Connection: close Content-Length: 183 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id} { diff --git a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt index 06778708..975b7f75 100644 --- a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/647c0d2d-6fda-4b31-a2f2-2d64903735f0' -d '{"name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b5042f13-972d-41e1-a8bc-82e5c33f2781' -d '{"name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/647c0d2d-6fda-4b31-a2f2-2d64903735f0 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b5042f13-972d-41e1-a8bc-82e5c33f2781 HTTP/1.1 { "name": "test" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1739 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:42 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:52 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} { @@ -68,8 +68,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} } ], "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/builtin/647c0d2d-6fda-4b31-a2f2-2d64903735f0", - "node_id": "647c0d2d-6fda-4b31-a2f2-2d64903735f0", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/b5042f13-972d-41e1-a8bc-82e5c33f2781", + "node_id": "b5042f13-972d-41e1-a8bc-82e5c33f2781", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index b7ed7762..172f4448 100644 --- a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/570c1d18-c286-4db6-aa68-f0fffda8ba9e/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/00346631-6030-4a9b-bfa5-8adc512d6c5a/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/570c1d18-c286-4db6-aa68-f0fffda8ba9e/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/00346631-6030-4a9b-bfa5-8adc512d6c5a/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:41 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:51 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt index 349b3aa1..257b7961 100644 --- a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/5a62d308-eec9-4dc4-9771-eec28e4fbbf8' -d '{"console": 5006, "environment": "GNS3=1\nGNS4=0", "extra_hosts": "test:127.0.0.1", "name": "test", "start_command": "yes"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/41c09ab9-807e-47bc-b731-4f1ebd1a63ad' -d '{"console": 5006, "environment": "GNS3=1\nGNS4=0", "extra_hosts": "test:127.0.0.1", "name": "test", "start_command": "yes"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/5a62d308-eec9-4dc4-9771-eec28e4fbbf8 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/41c09ab9-807e-47bc-b731-4f1ebd1a63ad HTTP/1.1 { "console": 5006, "environment": "GNS3=1\nGNS4=0", @@ -14,8 +14,8 @@ HTTP/1.1 200 Connection: close Content-Length: 639 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:43 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id} { @@ -31,8 +31,8 @@ X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id} "extra_hosts": "test:127.0.0.1", "image": "nginx:latest", "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/docker/5a62d308-eec9-4dc4-9771-eec28e4fbbf8", - "node_id": "5a62d308-eec9-4dc4-9771-eec28e4fbbf8", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/docker/41c09ab9-807e-47bc-b731-4f1ebd1a63ad", + "node_id": "41c09ab9-807e-47bc-b731-4f1ebd1a63ad", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "start_command": "yes", "status": "stopped" diff --git a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 8e526032..383d3b01 100644 --- a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/732d14f8-b11f-4eb9-9ed9-014073548328/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/34596bf7-9398-4c08-9773-aaf9223b05c6/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/732d14f8-b11f-4eb9-9ed9-014073548328/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/34596bf7-9398-4c08-9773-aaf9223b05c6/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:42 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt index 7e487ec5..53a1f7c2 100644 --- a/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/f9115be4-ee74-44f2-9e42-adb96be3f66a' -d '{"console": 5005, "ethernet_adapters": 4, "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "use_default_iou_values": true}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c' -d '{"console": 5005, "ethernet_adapters": 4, "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "use_default_iou_values": true}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/f9115be4-ee74-44f2-9e42-adb96be3f66a HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c HTTP/1.1 { "console": 5005, "ethernet_adapters": 4, @@ -17,8 +17,8 @@ HTTP/1.1 200 Connection: close Content-Length: 609 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} { @@ -30,8 +30,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} "l1_keepalives": true, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_json4/project-files/iou/f9115be4-ee74-44f2-9e42-adb96be3f66a", - "node_id": "f9115be4-ee74-44f2-9e42-adb96be3f66a", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c", + "node_id": "d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c", "nvram": 2048, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index de84b0df..14d24c6b 100644 --- a/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2e43df37-ee45-47e8-a949-700f9643a2bd/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c950e271-72c8-4b34-bf7e-3dbccd5b62ce/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/2e43df37-ee45-47e8-a949-700f9643a2bd/adapters/1/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c950e271-72c8-4b34-bf7e-3dbccd5b62ce/adapters/1/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:45 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 05:59:56 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt index 62de0dff..7c966165 100644 --- a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f995f380-37d4-4d8d-956e-2f6dc9407ad6' -d '{"name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f' -d '{"name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f995f380-37d4-4d8d-956e-2f6dc9407ad6 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f HTTP/1.1 { "name": "test" } @@ -10,13 +10,13 @@ HTTP/1.1 200 Connection: close Content-Length: 334 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:49 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} { "name": "test", - "node_id": "f995f380-37d4-4d8d-956e-2f6dc9407ad6", + "node_id": "89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index f7747481..7e1c76bf 100644 --- a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/12472b4d-2896-4351-a8e3-d3f7d2ce066e/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bf70d6f5-75d7-4dec-9d41-3743031a4aae/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/12472b4d-2896-4351-a8e3-d3f7d2ce066e/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bf70d6f5-75d7-4dec-9d41-3743031a4aae/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:48 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt index 34b950c1..caf439a9 100644 --- a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d4daf516-44af-4e25-a632-d5015f00e6bd' -d '{"console": 5006, "hdb_disk_image": "linux\u8f7d.img", "name": "test", "ram": 1024}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9d0c9a01-be00-403d-93b8-f810893987a7' -d '{"console": 5006, "hdb_disk_image": "linux\u8f7d.img", "name": "test", "ram": 1024}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d4daf516-44af-4e25-a632-d5015f00e6bd HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9d0c9a01-be00-403d-93b8-f810893987a7 HTTP/1.1 { "console": 5006, "hdb_disk_image": "linux\u8f7d.img", @@ -13,8 +13,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1422 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:57 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:21 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} { @@ -48,16 +48,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:e6:bd:00", + "mac_address": "0c:dd:80:87:a7:00", "name": "test", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/d4daf516-44af-4e25-a632-d5015f00e6bd", - "node_id": "d4daf516-44af-4e25-a632-d5015f00e6bd", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/9d0c9a01-be00-403d-93b8-f810893987a7", + "node_id": "9d0c9a01-be00-403d-93b8-f810893987a7", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmp5fl9r7cg/qemu-system-x86_64", + "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", "ram": 1024, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 5ac3169e..fa23919a 100644 --- a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/783249bc-6147-464f-843c-92edb1c5cd0d/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/0b00891a-b665-4370-a066-0691869ffeac/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/783249bc-6147-464f-843c-92edb1c5cd0d/adapters/1/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/0b00891a-b665-4370-a066-0691869ffeac/adapters/1/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:22:58 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt index aa3d0c60..8e5b9c36 100644 --- a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/9cef1362-8676-4699-9e5a-a7f25716b6a1' -d '{"ip_address": "192.168.1.1", "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/f558ee31-d1b6-4157-bfbc-d1847f6639c0' -d '{"ip_address": "192.168.1.1", "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/9cef1362-8676-4699-9e5a-a7f25716b6a1 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/f558ee31-d1b6-4157-bfbc-d1847f6639c0 HTTP/1.1 { "ip_address": "192.168.1.1", "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 444 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} { @@ -22,8 +22,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} "default_destination": "", "ip_address": "192.168.1.1", "name": "test", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/9cef1362-8676-4699-9e5a-a7f25716b6a1", - "node_id": "9cef1362-8676-4699-9e5a-a7f25716b6a1", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/f558ee31-d1b6-4157-bfbc-d1847f6639c0", + "node_id": "f558ee31-d1b6-4157-bfbc-d1847f6639c0", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index abae34f7..41cf5b2c 100644 --- a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/43c1e85d-ab43-4267-9986-e9dc3d9bee1e/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/016d415f-895d-46ee-a3d3-cbd845d05e18/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/43c1e85d-ab43-4267-9986-e9dc3d9bee1e/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/016d415f-895d-46ee-a3d3-cbd845d05e18/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:05 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:38 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt index 5e2eb480..1d9a9135 100644 --- a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7b038f97-b154-4d70-a569-acaf770de654' -d '{"console": 5005, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c3d40d4c-151a-4027-bba6-9b14aac189d2' -d '{"console": 5005, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7b038f97-b154-4d70-a569-acaf770de654 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c3d40d4c-151a-4027-bba6-9b14aac189d2 HTTP/1.1 { "console": 5005, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 464 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} { @@ -24,7 +24,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} "linked_clone": false, "name": "test", "node_directory": null, - "node_id": "7b038f97-b154-4d70-a569-acaf770de654", + "node_id": "c3d40d4c-151a-4027-bba6-9b14aac189d2", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index ed40f053..9b4660e8 100644 --- a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/25f41f3c-d2c1-4c03-adee-e1608e82f1d7/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8509bae6-f48d-45a4-8ea6-3eb54fc4f86f/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/25f41f3c-d2c1-4c03-adee-e1608e82f1d7/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8509bae6-f48d-45a4-8ea6-3eb54fc4f86f/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:06 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt index 3928592b..3f5f234e 100644 --- a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/916b0c2c-0a27-46d5-8660-b150d928368e' -d '{"console": 5005, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1' -d '{"console": 5005, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/916b0c2c-0a27-46d5-8660-b150d928368e HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1 HTTP/1.1 { "console": 5005, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 595 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:18 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:53 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} { @@ -23,11 +23,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} "headless": false, "linked_clone": false, "name": "test", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/916b0c2c-0a27-46d5-8660-b150d928368e", - "node_id": "916b0c2c-0a27-46d5-8660-b150d928368e", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1", + "node_id": "2171d0bc-ebf5-4cd1-8792-a4516f15bbb1", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-19/test_vmware_update0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_update0/test.vmx" } diff --git a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 01c8a633..15c49162 100644 --- a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a0379c7f-2e8a-4e74-bfa7-1091ebd1dd85/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e98e2017-91f2-4737-9f45-7534be69b4b4/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a0379c7f-2e8a-4e74-bfa7-1091ebd1dd85/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e98e2017-91f2-4737-9f45-7534be69b4b4/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:15 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:49 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt index 8f752c86..8a9145c4 100644 --- a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/2c8495f9-0647-4909-8b20-e4f9eb000480' -d '{"console": 5006, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549' -d '{"console": 5006, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/2c8495f9-0647-4909-8b20-e4f9eb000480 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549 HTTP/1.1 { "console": 5006, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 379 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} { @@ -20,8 +20,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} "console": 5006, "console_type": "telnet", "name": "test", - "node_directory": "/tmp/tmp0fzqt09o/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/2c8495f9-0647-4909-8b20-e4f9eb000480", - "node_id": "2c8495f9-0647-4909-8b20-e4f9eb000480", + "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549", + "node_id": "9f4f1dd7-7ce0-42e5-a249-dcc208d8e549", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 6bb66938..875fcdbc 100644 --- a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9757b842-4964-40c2-a6df-70678fba8cf4/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/38f145ef-c50d-4a2b-b06f-d9d9bd5b992f/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9757b842-4964-40c2-a6df-70678fba8cf4/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/38f145ef-c50d-4a2b-b06f-d9d9bd5b992f/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:58 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/controller_delete_computescomputeid.txt b/docs/api/examples/controller_delete_computescomputeid.txt index accdb312..a1932153 100644 --- a/docs/api/examples/controller_delete_computescomputeid.txt +++ b/docs/api/examples/controller_delete_computescomputeid.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:03 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id} diff --git a/docs/api/examples/controller_delete_projectsprojectid.txt b/docs/api/examples/controller_delete_projectsprojectid.txt index e0887797..9db77780 100644 --- a/docs/api/examples/controller_delete_projectsprojectid.txt +++ b/docs/api/examples/controller_delete_projectsprojectid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/cd9d0386-7996-44d8-bf5c-aa3ad19c546c' +curl -i -X DELETE 'http://localhost:3080/v2/projects/02514675-0c21-450d-a46c-c3316dd6244c' -DELETE /v2/projects/cd9d0386-7996-44d8-bf5c-aa3ad19c546c HTTP/1.1 +DELETE /v2/projects/02514675-0c21-450d-a46c-c3316dd6244c HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id} diff --git a/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt index e7ac17af..0903c872 100644 --- a/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/4fcc569a-a6b1-4f27-9acd-a6082d7082e4/drawings/53cd97b3-da8e-4eae-b985-e592abcae6b7' +curl -i -X DELETE 'http://localhost:3080/v2/projects/3993dfb6-2aa7-4511-8a40-51938283126a/drawings/ed1a39d3-0452-4589-aa6e-92b38f0865c6' -DELETE /v2/projects/4fcc569a-a6b1-4f27-9acd-a6082d7082e4/drawings/53cd97b3-da8e-4eae-b985-e592abcae6b7 HTTP/1.1 +DELETE /v2/projects/3993dfb6-2aa7-4511-8a40-51938283126a/drawings/ed1a39d3-0452-4589-aa6e-92b38f0865c6 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt index 0097f56c..b28ac1a9 100644 --- a/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/52a0b14c-074d-433a-9e1d-0041a5dcca39/links/8cdcab06-40e7-41a0-b4b4-4d17b8b1ac7f' +curl -i -X DELETE 'http://localhost:3080/v2/projects/adf14fe8-9385-4261-8e66-16de2783ecc7/links/9797461f-7f75-4515-b6dd-0f139e946b10' -DELETE /v2/projects/52a0b14c-074d-433a-9e1d-0041a5dcca39/links/8cdcab06-40e7-41a0-b4b4-4d17b8b1ac7f HTTP/1.1 +DELETE /v2/projects/adf14fe8-9385-4261-8e66-16de2783ecc7/links/9797461f-7f75-4515-b6dd-0f139e946b10 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt index bcf72e4c..01cfe1a7 100644 --- a/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/2cc22ce2-a221-4b19-8042-ec40c1861edd/nodes/1b514b34-fe74-414c-b0d8-683f02478bef' +curl -i -X DELETE 'http://localhost:3080/v2/projects/065ce165-7bfe-48f4-bfb9-ddf6462e43d6/nodes/3effef6a-703f-4670-aa6a-36441ee1d85c' -DELETE /v2/projects/2cc22ce2-a221-4b19-8042-ec40c1861edd/nodes/1b514b34-fe74-414c-b0d8-683f02478bef HTTP/1.1 +DELETE /v2/projects/065ce165-7bfe-48f4-bfb9-ddf6462e43d6/nodes/3effef6a-703f-4670-aa6a-36441ee1d85c HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt b/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt index ecd4a230..dfcca199 100644 --- a/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/9d3140b3-a13a-4269-9ecc-f1a9fae202a7/snapshots/4ec97fb7-21da-4c82-b5a5-cfd385e3bf7b' +curl -i -X DELETE 'http://localhost:3080/v2/projects/94ce1318-4269-42fb-815d-dead4204dc60/snapshots/d54f80b9-cd51-4d6f-9caa-150cc6687eb1' -DELETE /v2/projects/9d3140b3-a13a-4269-9ecc-f1a9fae202a7/snapshots/4ec97fb7-21da-4c82-b5a5-cfd385e3bf7b HTTP/1.1 +DELETE /v2/projects/94ce1318-4269-42fb-815d-dead4204dc60/snapshots/d54f80b9-cd51-4d6f-9caa-150cc6687eb1 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:27 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:16 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id} diff --git a/docs/api/examples/controller_get_appliances.txt b/docs/api/examples/controller_get_appliances.txt index 2442ce3a..e8f1b8c5 100644 --- a/docs/api/examples/controller_get_appliances.txt +++ b/docs/api/examples/controller_get_appliances.txt @@ -6,99 +6,116 @@ GET /v2/appliances HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 2690 +Content-Length: 3209 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/appliances [ - { - "appliance_id": "f8e6b43c-e844-4a83-9586-ab3696ca9eca", - "builtin": false, - "category": "router", - "compute_id": "local", - "default_name_format": "{name}-{0}", - "name": "test", - "node_type": "qemu", - "platform": null, - "symbol": "guest.svg" - }, - { - "appliance_id": "dd0f6f3a-ba58-3249-81cb-a1dd88407a47", - "builtin": true, - "category": "switch", - "compute_id": null, - "default_name_format": "{name}-{0}", - "name": "Frame Relay switch", - "node_type": "frame_relay_switch", - "platform": null, - "symbol": ":/symbols/frame_relay_switch.svg" - }, { "appliance_id": "39e257dc-8412-3174-b6b3-0ee3ed6a43e9", + "appliance_type": "cloud", "builtin": true, "category": "guest", - "compute_id": null, - "default_name_format": "{name}-{0}", "name": "Cloud", - "node_type": "cloud", - "platform": null, "symbol": ":/symbols/cloud.svg" }, { - "appliance_id": "b4503ea9-d6b6-3695-9fe4-1db3b39290b0", - "builtin": true, - "category": "switch", - "compute_id": null, - "default_name_format": "{name}-{0}", - "name": "Ethernet hub", - "node_type": "ethernet_hub", - "platform": null, - "symbol": ":/symbols/hub.svg" - }, - { - "appliance_id": "aaa764e2-b383-300f-8a0e-3493bbfdb7d2", + "appliance_id": "df8f4ea9-33b7-3e96-86a2-c39bc9bb649c", + "appliance_type": "nat", "builtin": true, - "category": "switch", - "compute_id": null, - "default_name_format": "{name}-{0}", - "name": "ATM switch", - "node_type": "atm_switch", - "platform": null, - "symbol": ":/symbols/atm_switch.svg" + "category": "guest", + "name": "NAT", + "symbol": ":/symbols/cloud.svg" }, { "appliance_id": "19021f99-e36f-394d-b4a1-8aaa902ab9cc", + "appliance_type": "vpcs", "builtin": true, "category": "guest", - "compute_id": null, "default_name_format": "PC-{0}", "name": "VPCS", - "node_type": "vpcs", - "platform": null, + "properties": { + "base_script_file": "vpcs_base_config.txt" + }, "symbol": ":/symbols/vpcs_guest.svg" }, { - "appliance_id": "df8f4ea9-33b7-3e96-86a2-c39bc9bb649c", + "appliance_id": "1966b864-93e7-32d5-965f-001384eec461", + "appliance_type": "ethernet_switch", "builtin": true, - "category": "guest", - "compute_id": null, - "default_name_format": "{name}-{0}", - "name": "NAT", - "node_type": "nat", - "platform": null, - "symbol": ":/symbols/cloud.svg" + "category": "switch", + "console_type": "telnet", + "name": "Ethernet switch", + "symbol": ":/symbols/ethernet_switch.svg" }, { - "appliance_id": "1966b864-93e7-32d5-965f-001384eec461", + "appliance_id": "b4503ea9-d6b6-3695-9fe4-1db3b39290b0", + "appliance_type": "ethernet_hub", + "builtin": true, + "category": "switch", + "name": "Ethernet hub", + "symbol": ":/symbols/hub.svg" + }, + { + "appliance_id": "dd0f6f3a-ba58-3249-81cb-a1dd88407a47", + "appliance_type": "frame_relay_switch", "builtin": true, "category": "switch", - "compute_id": null, + "name": "Frame Relay switch", + "symbol": ":/symbols/frame_relay_switch.svg" + }, + { + "appliance_id": "aaa764e2-b383-300f-8a0e-3493bbfdb7d2", + "appliance_type": "atm_switch", + "builtin": true, + "category": "switch", + "name": "ATM switch", + "symbol": ":/symbols/atm_switch.svg" + }, + { + "adapter_type": "e1000", + "adapters": 1, + "appliance_id": "605ad672-73a7-4861-b082-b642d51ffe73", + "appliance_type": "qemu", + "bios_image": "", + "boot_priority": "c", + "builtin": false, + "category": "router", + "cdrom_image": "", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "cpu_throttling": 0, + "cpus": 1, + "custom_adapters": [], "default_name_format": "{name}-{0}", - "name": "Ethernet switch", - "node_type": "ethernet_switch", - "platform": null, - "symbol": ":/symbols/ethernet_switch.svg" + "first_port_name": "", + "hda_disk_image": "", + "hda_disk_interface": "ide", + "hdb_disk_image": "", + "hdb_disk_interface": "ide", + "hdc_disk_image": "", + "hdc_disk_interface": "ide", + "hdd_disk_image": "", + "hdd_disk_interface": "ide", + "initrd": "", + "kernel_command_line": "", + "kernel_image": "", + "legacy_networking": false, + "linked_clone": true, + "mac_address": "", + "name": "test", + "on_close": "power_off", + "options": "", + "platform": "i386", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "process_priority": "normal", + "qemu_path": "", + "ram": 256, + "symbol": "guest.svg", + "usage": "" } ] diff --git a/docs/api/examples/controller_get_appliancestemplates.txt b/docs/api/examples/controller_get_appliancestemplates.txt index 85f44315..ac3754b2 100644 --- a/docs/api/examples/controller_get_appliancestemplates.txt +++ b/docs/api/examples/controller_get_appliancestemplates.txt @@ -6,144 +6,161 @@ GET /v2/appliances/templates HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 540759 +Content-Length: 585790 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:19 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/appliances/templates [ { "builtin": true, - "category": "guest", - "description": "Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nIt's provide a complete Linux system in few MB.", - "documentation_url": "http://wiki.tinycorelinux.net/", + "category": "router", + "description": "The HPE VSR1000 Virtual Services Router Series is a software application, running on a server, which provides functionality similar to that of a physical router: robust routing between networked devices using a number of popular routing protocols. It also delivers the critical network services associated with today's enterprise routers such as VPN gateway, firewall and other security and traffic management functions.\n\nThe virtual services router (VSR) application runs on a hypervqcor on the server, and supports VMware vSphere and Linux KVM hypervqcors. From one to eight virtual CPUs are supported, depending on license.\n\nBecause the VSR1000 Series application runs the same HPE Comware version 7 operating system as HPE switches and routers, it enables significant operational savings. And being virtual, additional agility and ease of deployment is realized, as resources on the VSR can be dynamically allocated and upgraded upon demand as performance requirements grow.\n\nA variety of deployment models are supported including enterprise branch CPE routing, and cloud offload for small to medium workloads.", + "documentation_url": "https://support.hpe.com/hpesc/public/home/documentHome?document_type=135&sp4ts.oid=5195141", "images": [ { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-2.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-tinycore-6.4-2.img", - "filesize": 36503552, - "md5sum": "dcbb5318c3e18ab085088d4474d8de85", - "version": "6.4" + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=23726&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0519L03-X64.qco", + "filesize": 202047488, + "md5sum": "83e23d27e7c3ef7ce813e6aad31d74f7", + "version": "7.10.E0519L03" }, { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-tinycore-6.4.img", - "filesize": 22544384, - "md5sum": "e3de478780c0acb76ef92f872fe734c4", - "version": "6.4" + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=22702&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-R0327L01-X64.qco", + "filesize": 138739712, + "md5sum": "907de5140a4a029afe1c517cfc27ecde", + "version": "7.10.R0327L01" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=21985&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-R0326-X64.qco", + "filesize": 138412032, + "md5sum": "4153d638bfa72ca72a957ea8682ad0e2", + "version": "7.10.R0326" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=20278&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0325-X64.qco", + "filesize": 111738880, + "md5sum": "a6731f3af86bee9b209a8b342be6bf75", + "version": "7.10.E0325" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=21929&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0518-X64.qco", + "filesize": 201588736, + "md5sum": "4991436442ae706df8041c69778a48df", + "version": "7.10.E0518" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18977&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0324-X64.qco", + "filesize": 111411200, + "md5sum": "7a0ff32281284c042591c6181426effd", + "version": "7.10.E0324" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18976&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0322P01-X64.qco", + "filesize": 110428160, + "md5sum": "0aa2dbe5910fa64eb8c623e083b21a5e", + "version": "7.10.E0322P01" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18975&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0322-X64.qco", + "filesize": 113770496, + "md5sum": "05e0dab6b7aa489f627448b4d79b1f50", + "version": "7.10.E0322" + }, + { + "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=16838&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", + "filename": "VSR1000_HPE-CMW710-E0321P01-X64.qco", + "filesize": 113639424, + "md5sum": "26d4375fafeedc81f298f29f593de252", + "version": "7.10.E0321P01" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Tiny Core Linux", - "product_name": "Tiny Core Linux", - "product_url": "http://distro.ibiblio.org/tinycorelinux", + "name": "HPE VSR1001", + "port_name_format": "GE{port1}/0", + "product_name": "VSR1001", + "product_url": "https://www.hpe.com/us/en/product-catalog/networking/networking-routers/pip.hpe-flexnetwork-vsr1000-virtual-services-router-series.5443163.html", "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "i386", + "adapter_type": "virtio-net-pci", + "adapters": 16, + "arch": "x86_64", + "boot_priority": "c", "console_type": "vnc", - "kvm": "allow", - "options": "-vga std -usbdevice tablet", - "ram": 96 + "hda_disk_interface": "virtio", + "kvm": "require", + "options": "-machine type=pc-1.0", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "symbol": "linux_guest.svg", - "usage": "Login is gns3/gns3. sudo works without password", - "vendor_name": "Team Tiny Core", - "vendor_url": "http://distro.ibiblio.org/tinycorelinux", + "vendor_name": "HPE", + "vendor_url": "http://www.hpe.com", "versions": [ { "images": { - "hda_disk_image": "linux-tinycore-6.4-2.img" + "hda_disk_image": "VSR1000_HPE-CMW710-E0519L03-X64.qco" }, - "name": "6.4~2" + "name": "7.10.E0519L03" }, { "images": { - "hda_disk_image": "linux-tinycore-6.4.img" + "hda_disk_image": "VSR1000_HPE-CMW710-R0327L01-X64.qco" }, - "name": "6.4~1" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Monitoring a distributed network across multiple locations can be a challenge. That\u2019s where Sophos iView can help. It provides you with an intelligent, uninterrupted view of your network from a single pane of glass. If you have multiple appliances, need consolidated reporting, or could just use help with log management or compliance, Sophos iView is the ideal solution.", - "documentation_url": "https://www.sophos.com/en-us/support/documentation/sophos-iview.aspx", - "images": [ + "name": "7.10.R0327L01" + }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", - "filesize": 493289472, - "md5sum": "d78c6f0c42186a4c606d7e57f2f3a6d7", - "version": "2.0.0 MR2" + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-R0326-X64.qco" + }, + "name": "7.10.R0326" }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SIVOS_02.00.0_MR-2.KVM-776-AUXILARY.qcow2", - "filesize": 204800, - "md5sum": "a52d8cedb1ccd4b5b9f2723dfb41588b", - "version": "2.0.0 MR2" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Sophos iView", - "product_name": "Sophos iView", - "product_url": "https://www.sophos.com/en-us/products/next-gen-firewall.aspx", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, - "arch": "x86_64", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "require", - "ram": 4096 - }, - "registry_version": 3, - "status": "experimental", - "symbol": "mgmt_station.svg", - "usage": "Default CLI password: admin\nDefault WebUI address: http://172.16.16.18\nDefault WebUI credentials: admin / admin", - "vendor_name": "Sophos", - "vendor_url": "https://www.sophos.com", - "versions": [ + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0325-X64.qco" + }, + "name": "7.10.E0325" + }, { "images": { - "hda_disk_image": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", - "hdb_disk_image": "VI-SIVOS_02.00.0_MR-2.KVM-776-AUXILARY.qcow2" + "hda_disk_image": "VSR1000_HPE-CMW710-E0518-X64.qco" }, - "name": "2.0.0 MR2" + "name": "7.10.E0518" + }, + { + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0324-X64.qco" + }, + "name": "7.10.E0324" + }, + { + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0322P01-X64.qco" + }, + "name": "7.10.E0322P01" + }, + { + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0322-X64.qco" + }, + "name": "7.10.E0322" + }, + { + "images": { + "hda_disk_image": "VSR1000_HPE-CMW710-E0321P01-X64.qco" + }, + "name": "7.10.E0321P01" } ] }, - { - "builtin": true, - "category": "guest", - "description": "ntopng is the next generation version of the original ntop, a network traffic probe that shows the network usage, similar to what the popular top Unix command does. ntopng is based on libpcap and it has been written in a portable way in order to virtually run on every Unix platform, MacOSX and on Windows as well. ntopng users can use a a web browser to navigate through ntop (that acts as a web server) traffic information and get a dump of the network status. In the latter case, ntopng can be seen as a simple RMON-like agent with an embedded web interface.", - "docker": { - "adapters": 1, - "console_http_path": "/", - "console_http_port": 3000, - "console_type": "http", - "image": "lucaderi/ntopng-docker:latest" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "ntopng", - "product_name": "ntopng", - "registry_version": 3, - "status": "stable", - "usage": "In the web interface login as admin/admin", - "vendor_name": "ntop", - "vendor_url": "http://www.ntop.org/" - }, { "builtin": true, "category": "guest", @@ -166,1117 +183,1251 @@ X-Route: /v2/appliances/templates }, { "builtin": true, - "category": "multilayer_switch", - "description": "NXOSv is a reference platform for an implementation of the Cisco Nexus operating system, based on the Nexus 7000-series platforms, running as a full virtual machine on a hypervisor. This includes NXAPI and MPLS LDP support.", - "first_port_name": "mgmt0", + "category": "router", + "description": "Cisco 3725 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "nvram": 256, + "platform": "c3725", + "ram": 128, + "slot0": "GT96100-FE", + "startup_config": "ios_base_startup-config.txt" + }, "images": [ { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "titanium-final.7.3.0.D1.1.qcow2", - "filesize": 214368256, - "md5sum": "b4cd6edf15ab4c6bce53c3f6c1e3a742", - "version": "7.3.0" - }, - { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "titanium-d1.7.2.0.D1.1.vmdk", - "filesize": 361103360, - "md5sum": "0ee38c7d717840cb4ca822f4870671d0", - "version": "7.2.0" + "filename": "c3725-adventerprisek9-mz.124-15.T14.image", + "filesize": 97859480, + "md5sum": "64f8c427ed48fd21bd02cf1ff254c4eb", + "version": "124-25.T14" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco NX-OSv", - "port_name_format": "Ethernet2/{port1}", - "product_name": "NX-OSv", - "product_url": "http://virl.cisco.com/", - "qemu": { - "adapter_type": "e1000", - "adapters": 16, - "arch": "x86_64", - "console_type": "telnet", - "kvm": "require", - "ram": 3072 - }, + "name": "Cisco 3725", + "product_name": "3725", "registry_version": 3, - "status": "stable", - "usage": "The default username/password is admin/admin. A default configuration is present.", + "status": "experimental", "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "vendor_url": "http://www.cisco.com", "versions": [ { + "idlepc": "0x60c09aa0", "images": { - "hda_disk_image": "titanium-final.7.3.0.D1.1.qcow2" + "image": "c3725-adventerprisek9-mz.124-15.T14.image" }, - "name": "7.3.0" - }, - { - "images": { - "hda_disk_image": "titanium-d1.7.2.0.D1.1.vmdk" - }, - "name": "7.2.0" + "name": "124-25.T14" } ] }, { "builtin": true, - "category": "guest", - "description": "FreeBSD is an advanced computer operating system used to power modern servers, desktops, and embedded platforms. A large community has continually developed it for more than thirty years. Its advanced networking, security, and storage features have made FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage devices.", - "documentation_url": "https://www.freebsd.org/docs.html", + "category": "firewall", + "description": "To ensure efficient email communication and business continuity, IT professionals depend on reliable spam and virus blocking software. With Proxmox Mail Gateway you get the job done.\n\nProxmox Mail Gateway helps you protect your business against all email threats like spam, viruses, phishing and trojans at the moment they emerge. The flexible architecture combined with the userfriendly, web-based management make it simple for you to control all incoming and outgoing emails. You maintain a professional email workflow and gain high business reputation as well as customer satisfaction.", + "documentation_url": "http://www.proxmox.com/en/downloads/category/documentation-pmg", "images": [ { - "compression": "xz", - "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.1-RELEASE/amd64/Latest/FreeBSD-11.1-RELEASE-amd64.qcow2.xz", - "download_url": "https://www.freebsd.org/where.html", - "filename": "FreeBSD-11.1-RELEASE-amd64.qcow2", - "filesize": 1533345792, - "md5sum": "d78b2a7d05ec62f799e14ded4817ea69", - "version": "11.1" - }, - { - "compression": "xz", - "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.0-RELEASE/amd64/Latest/FreeBSD-11.0-RELEASE-amd64.qcow2.xz", - "download_url": "https://www.freebsd.org/where.html", - "filename": "FreeBSD-11.0-RELEASE-amd64.qcow2", - "filesize": 1384382464, - "md5sum": "1b04999198f492afd6dc4935b8c7cc22", - "version": "11.0" + "direct_download_url": "https://www.proxmox.com/en/downloads?task=callelement&format=raw&item_id=415&element=f85c494b-2b32-4109-b8c1-083cca2b7db6&method=download&args[0]=7348486df9daacc8bd891a1d7ef1e5cb", + "download_url": "http://www.proxmox.com/en/downloads", + "filename": "proxmox-mailgateway_5.1-1.iso", + "filesize": 724660224, + "md5sum": "e629d5ff3213ff3ffbe5a8ab8ef87489", + "version": "5.1-1" }, { - "compression": "xz", - "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/10.4-RELEASE/amd64/Latest/FreeBSD-10.4-RELEASE-amd64.qcow2.xz", - "download_url": "https://www.freebsd.org/where.html", - "filename": "FreeBSD-10.4-RELEASE-amd64.qcow2", - "filesize": 1013448704, - "md5sum": "ad498873733c57d1f6d890d587a11e3c", - "version": "10.4" + "direct_download_url": "http://www.proxmox.com/en/downloads?task=callelement&format=raw&item_id=201&element=f85c494b-2b32-4109-b8c1-083cca2b7db6&method=download&args[0]=1f39333ff32bef6001584670e439c842", + "download_url": "http://www.proxmox.com/en/downloads", + "filename": "proxmox-mailgateway_4.1-5.iso", + "filesize": 746586112, + "md5sum": "f0b90f525b6f0fd51889ee48e44980b7", + "version": "4.1-5" }, { - "compression": "xz", - "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/10.3-RELEASE/amd64/Latest/FreeBSD-10.3-RELEASE-amd64.qcow2.xz", - "download_url": "https://www.freebsd.org/where.html", - "filename": "FreeBSD-10.3-RELEASE-amd64.qcow2", - "filesize": 974651392, - "md5sum": "1a00cebef520dfac8d2bda10ea16a951", - "version": "10.3" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FreeBSD", - "port_name_format": "em{0}", - "product_name": "FreeBSD", + "name": "Proxmox MG", + "port_name_format": "eth{0}", + "product_name": "Proxmox MG", + "product_url": "http://www.proxmox.com/en/proxmox-mail-gateway", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapters": 3, "arch": "x86_64", + "boot_priority": "cd", "console_type": "vnc", "hda_disk_interface": "virtio", "kvm": "require", - "ram": 256 + "ram": 4096 }, "registry_version": 3, "status": "stable", - "usage": "User: root, not password is set.", - "vendor_name": "FreeBSD", - "vendor_url": "http://www.freebsd.org", + "usage": "User: root\nPassword: admin", + "vendor_name": "Proxmox Server Solutions GmbH", + "vendor_url": "http://www.proxmox.com/en/", "versions": [ { "images": { - "hda_disk_image": "FreeBSD-11.1-RELEASE-amd64.qcow2" - }, - "name": "11.1" - }, - { - "images": { - "hda_disk_image": "FreeBSD-11.0-RELEASE-amd64.qcow2" - }, - "name": "11.0" - }, - { - "images": { - "hda_disk_image": "FreeBSD-10.4-RELEASE-amd64.qcow2" + "cdrom_image": "proxmox-mailgateway_5.1-1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "10.4" + "name": "5.1-1" }, { "images": { - "hda_disk_image": "FreeBSD-10.3-RELEASE-amd64.qcow2" + "cdrom_image": "proxmox-mailgateway_4.1-5.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "10.3" + "name": "4.1-5" } ] }, { "builtin": true, - "category": "router", - "description": "Cisco 1700 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "chassis": "1720", - "nvram": 128, - "platform": "c1700", - "ram": 160, - "slot0": "C1700-MB-1FE", - "startup_config": "ios_base_startup-config.txt" - }, + "category": "firewall", + "description": "Trend Micro InterScan Messaging Security stops email threats in the cloud with global threat intelligence, protects your data with data loss prevention and encryption, and identifies targeted email attacks,ransomware, and APTs as part of the Trend Micro Network Defense Solution. The hybrid SaaS deployment combines the privacy and control of an on-premises virtual appliance with the proactive protection of a cloud-based pre-filter service. It\u2019s the enterprise-level protection you need with the highest spam and phishing detection rates\u2014consistently #1 in quarterly Opus One competitive tests since 2011.", + "documentation_url": "https://success.trendmicro.com/product-support/interscan-messaging-security", "images": [ { - "filename": "c1700-adventerprisek9-mz.124-25d.image", - "filesize": 57475320, - "md5sum": "7f4ae12a098391bc0edcaf4f44caaf9d", - "version": "124-25d" + "direct_download_url": "http://files.trendmicro.com/products/imsva/9.1/IMSVA-9.1-1600-x86_64-r1.iso", + "download_url": "http://downloadcenter.trendmicro.com/index.php?regs=NABU&clk=latest&clkval=4913&lang_loc=1", + "filename": "IMSVA-9.1-1600-x86-64-r1.iso", + "filesize": 797560832, + "md5sum": "581278e8ddb25486539dfe3ad0b3ac94", + "version": "9.1" + }, + { + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty200G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty200G.qcow2", + "filesize": 200192, + "md5sum": "d1686d2f25695dee32eab9a6f4652c7c", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco 1700", - "product_name": "1700", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ - { - "idlepc": "0x80358a60", - "images": { - "image": "c1700-adventerprisek9-mz.124-25d.image" - }, - "name": "124-25d" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "ipterm is a debian based networking toolbox.\nIt contains the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump and the multicast testing tools msend/mreceive.", - "docker": { - "adapters": 1, - "image": "gns3/ipterm:latest" + "name": "IMS VA", + "port_name_format": "eth{0}", + "product_name": "IMS VA", + "product_url": "http://www.trendmicro.com/enterprise/network-security/interscan-message-security/index.html", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 2, + "arch": "x86_64", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 4096 }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "ipterm", - "product_name": "ipterm", "registry_version": 3, "status": "stable", - "symbol": "linux_guest.svg", - "usage": "The /root directory is persistent.", - "vendor_name": "ipterm", - "vendor_url": "https://www.debian.org" - }, - { - "builtin": true, - "category": "router", - "description": "Cisco 3620 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "chassis": "3620", - "nvram": 256, - "platform": "c3600", - "ram": 192, - "startup_config": "ios_base_startup-config.txt" - }, - "images": [ - { - "filename": "c3620-a3jk8s-mz.122-26c.image", - "filesize": 38947996, - "md5sum": "37b444b29191630e5b688f002de2171c", - "version": "122-26c" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco 3620", - "product_name": "3620", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", + "usage": "Default credentials: admin / imsva", + "vendor_name": "Trend Micro Inc.", + "vendor_url": "http://www.trendmicro.com/", "versions": [ { - "idlepc": "0x603a8bac", "images": { - "image": "c3620-a3jk8s-mz.122-26c.image" + "cdrom_image": "IMSVA-9.1-1600-x86-64-r1.iso", + "hda_disk_image": "empty200G.qcow2" }, - "name": "122-26c" + "name": "9.1" } ] }, { "builtin": true, - "category": "router", - "description": "Cisco 2691 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "nvram": 256, - "platform": "c3600", - "ram": 192, - "slot0": "GT96100-FE", - "startup_config": "ios_base_startup-config.txt" - }, + "category": "firewall", + "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.\n\nJuniper version 12 can support only 1GB of ram.", + "documentation_url": "http://www.juniper.net/techpubs/", + "first_port_name": "fxp0", "images": [ { - "filename": "c2691-adventerprisek9-mz.124-15.T14.image", - "filesize": 95976624, - "md5sum": "e7ee5a4a57ed1433e5f73ba6e7695c90", - "version": "124-15.T14" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco 2691", - "product_name": "2691", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-media-vsrx-vmdisk-18.1R1.9.qcow2", + "filesize": 4418961408, + "md5sum": "4e9393142afc675d5d3d03c5071e70ce", + "version": "18.1R1" + }, { - "idlepc": "0x60bcf9f8", - "images": { - "image": "c2691-adventerprisek9-mz.124-15.T14.image" - }, - "name": "124-15.T14" - } - ] - }, - { - "builtin": true, - "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.", - "documentation_url": "http://wiki.openwrt.org/doc/", - "images": [ + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-17.4R1.16.qcow2", + "filesize": 3965386752, + "md5sum": "616c4742b09652318c73a7cc598468e7", + "version": "17.4R1" + }, { - "direct_download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/realview/generic/openwrt-15.05.1-realview-vmlinux-initramfs.elf", - "download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/realview/generic/", - "filename": "openwrt-15.05.1-realview-vmlinux-initramfs.elf", - "filesize": 2278696, - "md5sum": "3660b9de654cf03f2a50997ae89c2daf", - "version": "15.05.1" + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-17.3R2.10.qcow2", + "filesize": 3784572928, + "md5sum": "8f2adfb0515913e0c7db32628a5deb3e", + "version": "17.3R2" }, { - "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/", - "filename": "openwrt-realview-vmlinux-initramfs-14.07.elf", - "filesize": 2183520, - "md5sum": "2411307d0794baa618537c5dfcb19575", - "version": "14.07" + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-17.3R1.10.qcow2", + "filesize": 3782541312, + "md5sum": "49b276e9ccdd8588f9e2ff38cccc884a", + "version": "17.3R1" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D130.6.qcow2", + "filesize": 3300917248, + "md5sum": "8ad03f4067b3fe5d2ed378733a5e8541", + "version": "15.1X49-D130" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D120.3.qcow2", + "filesize": 3280273408, + "md5sum": "02cf4df3dc988a407ccd5ddc30ee5385", + "version": "15.1X49-D120" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D110.4.qcow2", + "filesize": 3280011264, + "md5sum": "8d74641594eb036b2e2c6b462d541156", + "version": "15.1X49-D110" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D100.6.qcow2", + "filesize": 3279290368, + "md5sum": "aa29686dd6f2d38f668f23cb4bc9f354", + "version": "15.1X49-D100" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D90.7.qcow2", + "filesize": 3189440512, + "md5sum": "a64f3910054d461c4bbb32620008cba3", + "version": "15.1X49-D90" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D80.4.qcow2", + "filesize": 3186884608, + "md5sum": "ceb9d06a827c8f8bfb4fd1c9065bdd20", + "version": "15.1X49-D80" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D75.5.qcow2", + "filesize": 3116236800, + "md5sum": "197f167f338420d36a6db0f4e84ad376", + "version": "15.1X49-D75" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "media-vsrx-vmdisk-15.1X49-D70.3.qcow2", + "filesize": 3115450368, + "md5sum": "7b11babaef0b775f36281ec1d16f1708", + "version": "15.1X49-D70" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-vsrx-vmdisk-15.1X49-D60.qcow2", + "filesize": 3094478848, + "md5sum": "d2ec79880f67e141c4dd662c656da278", + "version": "15.1X49-D60" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-vsrx-vmdisk-15.1X49-D50.qcow2", + "filesize": 3063021568, + "md5sum": "60e1b80603c2ecf8aa9920c384209863", + "version": "15.1X49-D50" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-vsrx-vmdisk-15.1X49-D40.qcow2", + "filesize": 3054043136, + "md5sum": "8d929c0262fd1eea3b3d02ef9e73c8c5", + "version": "15.1X49-D40" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-vsrx-vmdisk-15.1X49-D20.2.qcow2", + "filesize": 2904096768, + "md5sum": "43e8000870207db47c1382192319eb45", + "version": "15.1X49-D20.2" + }, + { + "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", + "filename": "junos-vsrx-12.1X47-D20.7-domestic-disk1.vmdk", + "filesize": 235894272, + "md5sum": "d22ed7a7eb131984e892a4430c5f4730", + "version": "12.1X47-D20.7" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "OpenWrt Realview", - "product_name": "OpenWrt", - "product_url": "http://openwrt.org", + "name": "vSRX", + "port_name_format": "ge-0/0/{0}", + "product_name": "Juniper vSRX", + "product_url": "https://www.juniper.net/us/en/products-services/security/srx-series/vsrx/", "qemu": { "adapter_type": "e1000", - "adapters": 2, - "arch": "arm", + "adapters": 6, + "arch": "x86_64", "console_type": "telnet", - "kvm": "allow", - "options": "-M realview-eb-mpcore", - "ram": 128 + "kvm": "require", + "options": "-smp 2", + "ram": 4096 }, "registry_version": 3, - "status": "stable", - "vendor_name": "OpenWrt", - "vendor_url": "http://openwrt.org", + "status": "experimental", + "usage": "Initial username is root, no password.", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", "versions": [ { "images": { - "kernel_image": "openwrt-15.05.1-realview-vmlinux-initramfs.elf" + "hda_disk_image": "junos-media-vsrx-vmdisk-18.1R1.9.qcow2" }, - "name": "Chaos Calmer 15.05.1" + "name": "18.1R1" }, { "images": { - "kernel_image": "openwrt-realview-vmlinux-initramfs-14.07.elf" + "hda_disk_image": "media-vsrx-vmdisk-17.4R1.16.qcow2" }, - "name": "Barrier Breaker 14.07" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "Fortinet ADC appliances optimize the availability, user experience, and scalability of enterprise application delivery. They deliver fast, secure, and intelligent acceleration and distribution of even the most demanding enterprise applications.", - "documentation_url": "http://docs.fortinet.com/fortiadc-d-series/admin-guides", - "images": [ + "name": "17.4R1" + }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-FORTINET.out.kvm-data.qcow2", - "filesize": 30998528, - "md5sum": "b7500835594e62d8acb1c6ec43d597c1", - "version": "ALL" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-17.3R2.10.qcow2" + }, + "name": "17.3R2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V500-build0056-FORTINET.out.kvm-boot.qcow2", - "filesize": 75038720, - "md5sum": "8b3b789fb540b2c30066f66bcbe7f307", - "version": "5.0.1" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-17.3R1.10.qcow2" + }, + "name": "17.3R1" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V500-build0045-FORTINET.out.kvm-boot.qcow2", - "filesize": 74383360, - "md5sum": "d7381b3fb7a4534370ce8983e441d888", - "version": "5.0.0" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D130.6.qcow2" + }, + "name": "15.1X49-D130" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0999-FORTINET.out.kvm-boot.qcow2", - "filesize": 73334784, - "md5sum": "d7825b8d0962800c37ffa814a6b2ad45", - "version": "4.8.5" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D120.3.qcow2" + }, + "name": "15.1X49-D120" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", - "filesize": 72810496, - "md5sum": "c1926d5979ef24d9d14d3394c0bb832b", - "version": "4.8.4" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D110.4.qcow2" + }, + "name": "15.1X49-D110" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0983-FORTINET.out.kvm-boot.qcow2", - "filesize": 72876032, - "md5sum": "d4cfc3b215780b2fb4c9d8f55208e8be", - "version": "4.8.3" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D100.6.qcow2" + }, + "name": "15.1X49-D100" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0977-FORTINET.out.kvm-boot.qcow2", - "filesize": 72876032, - "md5sum": "285ca7a601a0d06bb893ef91ad7748fd", - "version": "4.8.2" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D90.7.qcow2" + }, + "name": "15.1X49-D90" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0970-FORTINET.out.kvm-boot.qcow2", - "filesize": 72351744, - "md5sum": "8f604b2a89ac3d9cc3d2d79d85b2d7ff", - "version": "4.8.1" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D80.4.qcow2" + }, + "name": "15.1X49-D80" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0937-FORTINET.out.kvm-boot.qcow2", - "filesize": 72089600, - "md5sum": "448f5906c42dd7e535c3acb2adab253c", - "version": "4.8.0" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D75.5.qcow2" + }, + "name": "15.1X49-D75" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0858-FORTINET.out.kvm-boot.qcow2", - "filesize": 63700992, - "md5sum": "6d81b1b3df55174e4db8526d6cfd8b0e", - "version": "4.7.4" + "images": { + "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D70.3.qcow2" + }, + "name": "15.1X49-D70" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0849-FORTINET.out.kvm-boot.qcow2", - "filesize": 64028672, - "md5sum": "c85f49cd320fdca36e71c0d7cdc26f8c", - "version": "4.7.3" + "images": { + "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D60.qcow2" + }, + "name": "15.1X49-D60" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0844-FORTINET.out.kvm-boot.qcow2", - "filesize": 63963136, - "md5sum": "6f035cda6138af993153ef322231a201", - "version": "4.7.2" + "images": { + "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D50.qcow2" + }, + "name": "15.1X49-D50" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0832-FORTINET.out.kvm-boot.qcow2", - "filesize": 67960832, - "md5sum": "70577d11ae77ce765cae944f3a7c3941", - "version": "4.7.1" + "images": { + "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D40.qcow2" + }, + "name": "15.1X49-D40" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0828-FORTINET.out.kvm-boot.qcow2", - "filesize": 67960832, - "md5sum": "4a0bf9d4ad29628ca08a1638662a43a6", - "version": "4.7.0" + "images": { + "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D20.2.qcow2" + }, + "name": "15.1X49-D20" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0679-FORTINET.out.kvm-boot.qcow2", - "filesize": 82903040, - "md5sum": "31147f42b54ce8e9c953dea519a4b9a6", - "version": "4.6.2" - }, + "images": { + "hda_disk_image": "junos-vsrx-12.1X47-D20.7-domestic-disk1.vmdk" + }, + "name": "12.1X47-D20" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Cisco 3745 Multiservice Access Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/routers/3745-multiservice-access-router/model.html", + "dynamips": { + "chassis": "", + "nvram": 256, + "platform": "c3745", + "ram": 256, + "slot0": "GT96100-FE", + "slot1": "NM-1FE-TX", + "slot2": "NM-4T", + "slot3": "", + "slot4": "", + "startup_config": "ios_base_startup-config.txt", + "wic0": "WIC-1T", + "wic1": "WIC-1T", + "wic2": "WIC-1T" + }, + "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0677-FORTINET.out.kvm-boot.qcow2", - "filesize": 82837504, - "md5sum": "2a9c32c7b32807f4dc384ed6e2082802", - "version": "4.6.1" - }, + "filename": "c3745-adventerprisek9-mz.124-25d.image", + "filesize": 82053028, + "md5sum": "ddbaf74274822b50fa9670e10c75b08f", + "version": "124-25d" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco 3745", + "product_name": "3745", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0660-FORTINET.out.kvm-boot.qcow2", - "filesize": 82509824, - "md5sum": "50cc9bc44409180f7106e4201b2dae2a", - "version": "4.6.0" - }, + "idlepc": "0x60aa1da0", + "images": { + "image": "c3745-adventerprisek9-mz.124-25d.image" + }, + "name": "124-25d" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "A light Linux based on TinyCore Linux with Firefox preinstalled", + "documentation_url": "https://support.mozilla.org", + "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-V400-build0605-FORTINET.out.kvm-boot.qcow2", - "filesize": 48168960, - "md5sum": "d415bc621bf0abc2b5aa32c03390e11f", - "version": "4.5.3" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-firefox-33.1.1-2.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-tinycore-linux-6.4-firefox-33.1.1-2.img", + "filesize": 93257728, + "md5sum": "8db0d8dc890797cc335ceb8aaf2255f0", + "version": "31.1.1~2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-v400-build0597-FORTINET.out.kvm-boot.qcow2", - "filesize": 66584576, - "md5sum": "47a905193e8f9ddc25be71aeccccc7b9", - "version": "4.5.2" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-firefox-33.1.1.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-tinycore-linux-6.4-firefox-33.1.1.img", + "filesize": 82313216, + "md5sum": "9e51ad24dc25c4a26f7a8fb99bc77830", + "version": "31.1.1~1" + } + ], + "maintainer": "GNS3 team", + "maintainer_email": "developers@gns3.net", + "name": "Firefox", + "product_name": "Firefox", + "product_url": "https://www.mozilla.org/firefox", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "arch": "i386", + "console_type": "vnc", + "kvm": "allow", + "options": "-vga std -usbdevice tablet", + "ram": 256 + }, + "registry_version": 3, + "status": "stable", + "symbol": "firefox.svg", + "vendor_name": "Mozilla Foundation", + "vendor_url": "http://www.mozilla.org", + "versions": [ + { + "images": { + "hda_disk_image": "linux-tinycore-linux-6.4-firefox-33.1.1-2.img" + }, + "name": "31.1.1~2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-v400-build0581-FORTINET.out.kvm-boot.qcow2", - "filesize": 67305472, - "md5sum": "bfc93d5881dda3f0a3123f54665bdcf0", - "version": "4.5.1" + "images": { + "hda_disk_image": "linux-tinycore-linux-6.4-firefox-33.1.1.img" + }, + "name": "31.1.1~1" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Don't you hate it when companies artificially cripple performance? We just give you two simple choices - Now isn't that a refreshing change?", + "documentation_url": "https://loadbalancer.org/support/support-resources", + "images": [ + { + "download_url": "https://loadbalancer.org/resources/free-trial", + "filename": "Loadbalancer.org_Enterprise_VA-8.3-disk1.qcow2", + "filesize": 368332288, + "md5sum": "f0e41f39a5cab47990edc0509c579bac", + "version": "8.3" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAD_KVM-v400-build0560-FORTINET.out.kvm-boot.qcow2", - "filesize": 68026368, - "md5sum": "7a71f52bde93c0000b047626731b7aef", - "version": "4.5.0" + "download_url": "https://loadbalancer.org/resources/free-trial", + "filename": "Loadbalancer.org_Enterprise_VA-8.2-disk1.qcow2", + "filesize": 8430419968, + "md5sum": "8b74b330a6f629a081f3b36a5d64605b", + "version": "8.2" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiADC", - "port_name_format": "Port{port1}", - "product_name": "FortiADC", - "product_url": "https://www.fortinet.com/products-services/products/application-delivery-controllers/fortiadc.html", + "name": "Loadbalancer.org Enterprise VA", + "product_name": "Loadbalancer.org Enterprise VA", + "product_url": "https://loadbalancer.org/products/virtual", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 10, + "adapters": 2, "arch": "x86_64", - "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", + "kvm": "require", "ram": 2048 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set. Silent boot, it might take a while.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "symbol": "loadbalancer.svg", + "usage": "Default credentials:\n Network config CLI: setup / setup\n CLI: root / loadbalancer\n WebUI: loadbalancer / loadbalancer", + "vendor_name": "Loadbalancer.org", + "vendor_url": "https://loadbalancer.org/", "versions": [ { "images": { - "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "Loadbalancer.org_Enterprise_VA-8.3-disk1.qcow2" }, - "name": "5.0.1" + "name": "8.3" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "Loadbalancer.org_Enterprise_VA-8.2-disk1.qcow2" }, - "name": "5.0.0" - }, + "name": "8.2" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Cisco 3640 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "chassis": "3640", + "nvram": 256, + "platform": "c3600", + "ram": 192, + "startup_config": "ios_base_startup-config.txt" + }, + "images": [ + { + "filename": "c3640-a3js-mz.124-25d.image", + "filesize": 65688632, + "md5sum": "493c4ef6578801d74d715e7d11596964", + "version": "124-25d" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco 3640", + "product_name": "3640", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { + "idlepc": "0x6050b114", "images": { - "hda_disk_image": "FAD_KVM-V400-build0999-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "image": "c3640-a3js-mz.124-25d.image" }, - "name": "4.8.5" + "name": "124-25d" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "FortiCache VM high performance Web Caching virtual appliances address bandwidth saturation, high latency, and poor performance caused by caching popular internet content locally for carriers, service providers, enterprises and educational networks. FortiCache VM appliances reduce the cost and impact of cached content on the network, while increasing performance and end- user satisfaction by improving the speed of delivery of popular repeated content.", + "documentation_url": "http://docs.fortinet.com/forticache/admin-guides", + "images": [ + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0226-FORTINET.out.kvm.qcow2", + "filesize": 27676672, + "md5sum": "17efdc8f037c8ec1d1fc67ae262f619e", + "version": "4.2.8" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.8.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0222-FORTINET.out.kvm.qcow2", + "filesize": 27631616, + "md5sum": "d77790e414f4e2b31c756906a720e681", + "version": "4.2.7" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0983-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.8.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0216-FORTINET.out.kvm.qcow2", + "filesize": 27553792, + "md5sum": "867e0569b8466db744547422a1d6f17a", + "version": "4.2.6" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0977-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.8.2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0213-FORTINET.out.kvm.qcow2", + "filesize": 27508736, + "md5sum": "78db88447f29f363b4ba8e4833474637", + "version": "4.2.5" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0970-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.8.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0204-FORTINET.out.kvm.qcow2", + "filesize": 27623424, + "md5sum": "8f0aad31131add43ac6bf709dd708970", + "version": "4.2.4" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0937-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.8.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0200-FORTINET.out.kvm.qcow2", + "filesize": 27467776, + "md5sum": "7ec6c4c4e4ba7976793769422550fc30", + "version": "4.2.3" }, { - "images": { - "hda_disk_image": "FAD_KVM-V400-build0858-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" - }, - "name": "4.7.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0127-FORTINET.out.kvm.qcow2", + "filesize": 26087424, + "md5sum": "c607391c3aaaa014e9cec8c61354485b", + "version": "4.1.6" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0123-FORTINET.out.kvm.qcow2", + "filesize": 25845760, + "md5sum": "f6d161636528ecee87243174c51e56e7", + "version": "4.1.5" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0119-FORTINET.out.kvm.qcow2", + "filesize": 25825280, + "md5sum": "d2c8236768e795eb80114e5c5f4dfac9", + "version": "4.1.4" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0112-FORTINET.out.kvm.qcow2", + "filesize": 25812992, + "md5sum": "554ebdf8874753b275c2f1ed9104e081", + "version": "4.1.3" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FCHKVM-v400-build0109-FORTINET.out.kvm.qcow2", + "filesize": 25829376, + "md5sum": "c54246365b3d3f03c9ff2184127695ea", + "version": "4.1.2" }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "FortiCache", + "port_name_format": "Port{port1}", + "product_name": "FortiCache", + "product_url": "https://www.fortinet.com/products-services/products/wan-appliances/forticache.html", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 3, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "ide", + "hdb_disk_interface": "ide", + "kvm": "require", + "ram": 1024 + }, + "registry_version": 3, + "status": "stable", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", + "versions": [ { "images": { - "hda_disk_image": "FAD_KVM-V400-build0849-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0226-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.7.3" + "name": "4.2.8" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0844-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0222-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.7.2" + "name": "4.2.7" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0832-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0216-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.7.1" + "name": "4.2.6" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0828-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0213-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.7.0" + "name": "4.2.5" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0679-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0204-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.6.2" + "name": "4.2.4" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0677-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0200-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.6.1" + "name": "4.2.3" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0660-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0127-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.6.0" + "name": "4.1.6" }, { "images": { - "hda_disk_image": "FAD_KVM-V400-build0605-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0123-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.5.3" + "name": "4.1.5" }, { "images": { - "hda_disk_image": "FAD_KVM-v400-build0597-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0119-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.5.2" + "name": "4.1.4" }, { "images": { - "hda_disk_image": "FAD_KVM-v400-build0581-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0112-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.5.1" + "name": "4.1.3" }, { "images": { - "hda_disk_image": "FAD_KVM-v400-build0560-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + "hda_disk_image": "FCHKVM-v400-build0109-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.5.0" + "name": "4.1.2" } ] }, + { + "builtin": true, + "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.", + "docker": { + "adapters": 16, + "image": "gns3/openvswitch:latest" + }, + "documentation_url": "http://openvswitch.org/support/", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Open vSwitch", + "product_name": "Open vSwitch", + "product_url": "http://openvswitch.org/", + "registry_version": 3, + "status": "stable", + "usage": "By default all interfaces are connected to the br0", + "vendor_name": "Open vSwitch", + "vendor_url": "http://openvswitch.org/" + }, { "builtin": true, "category": "guest", - "description": "Ubuntu is a full-featured Linux operating system which is based on Debian distribution and freely available with both community and professional support, it comes with Unity as its default desktop environment. There are other flavors of Ubuntu available with other desktops as default like Ubuntu Gnome, Lubuntu, Xubuntu, and so on. A tightly-integrated selection of excellent applications is included, and an incredible variety of add-on software is just a few clicks away. A default installation of Ubuntu contains a wide range of software that includes LibreOffice, Firefox, Empathy, Transmission, etc.", - "documentation_url": "https://help.ubuntu.com", + "description": "Ostinato is an open-source, cross-platform network packet crafter/traffic generator and analyzer with a friendly GUI. Craft and send packets of several streams with different protocols at different rates.", + "documentation_url": "http://ostinato.org/docs.html", "images": [ { - "download_url": "http://www.osboxes.org/ubuntu/", - "filename": "Ubuntu_17.04-VM-64bit.vmdk", - "filesize": 4792123392, - "md5sum": "5c82d69c49ba08179e9a94901f67da1f", - "version": "17.04" - }, - { - "download_url": "http://www.osboxes.org/ubuntu/", - "filename": "Ubuntu_16.10_Yakkety-VM-64bit.vmdk", - "filesize": 9133293568, - "md5sum": "c835f24dbb86f5f61c78d992ed38b6b1", - "version": "16.10" + "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.9-1.qcow2", + "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", + "filename": "ostinato-0.9-1.qcow2", + "filesize": 101646336, + "md5sum": "00b4856ec9fffbcbcab7a8f757355d69", + "version": "0.9" }, { - "download_url": "http://www.osboxes.org/ubuntu/", - "filename": "Ubuntu_16.04.3-VM-64bit.vmdk", - "filesize": 4302110720, - "md5sum": "45bccf63f2777e492f022dbf025f67d0", - "version": "16.04" + "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.8-1.qcow2", + "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", + "filename": "ostinato-0.8-1.qcow2", + "filesize": 57344000, + "md5sum": "12e990ba695103cfac82f8771b8015d4", + "version": "0.8" } ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Ubuntu Desktop Guest", + "maintainer": "Bernhard Ehlers", + "maintainer_email": "be@bernhard-ehlers.de", + "name": "Ostinato", "port_name_format": "eth{0}", - "product_name": "Ubuntu", - "product_url": "https://www.ubuntu.com/desktop", + "product_name": "Ostinato", + "product_url": "http://ostinato.org/", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", + "adapter_type": "e1000", + "adapters": 4, + "arch": "i386", "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "options": "-vga virtio", - "ram": 1024 + "kvm": "allow", + "options": "-vga std -usbdevice tablet", + "ram": 256 }, "registry_version": 3, - "status": "stable", - "usage": "Username: osboxes\nPassword: osboxes.org", - "vendor_name": "Canonical Inc.", - "vendor_url": "https://www.ubuntu.com", + "status": "experimental", + "symbol": "ostinato-3d-icon.svg", + "usage": "Use interfaces starting with eth1 as traffic interfaces, eth0 is only for the (optional) management of the server/drone.", + "vendor_name": "Ostinato", + "vendor_url": "http://ostinato.org/", "versions": [ { "images": { - "hda_disk_image": "Ubuntu_17.04-VM-64bit.vmdk" - }, - "name": "17.04" - }, - { - "images": { - "hda_disk_image": "Ubuntu_16.10_Yakkety-VM-64bit.vmdk" + "hda_disk_image": "ostinato-0.9-1.qcow2" }, - "name": "16.10" + "name": "0.9" }, { "images": { - "hda_disk_image": "Ubuntu_16.04.3-VM-64bit.vmdk" - }, - "name": "16.04" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Junos Space Network Management Platform works with Juniper's management applications to simplify and automate management of Juniper's switching, routing, and security devices. As part of a complete solution, the platform provides broad fault, configuration, accounting, performance, and security management (FCAPS) capability, same day support for new devices and Junos OS releases, a task-specific user interface, and northbound APIs for integration with existing network management systems (NMS) or operations/business support systems (OSS/BSS).\n\nThe platform helps network operators at enterprises and service providers scale operations, reduce complexity, and enable new applications and services to be brought to market quickly, through multilayered network abstractions, operator-centric automation schemes, and a simple point-and-click UI.", - "documentation_url": "http://www.juniper.net/techpubs/", - "images": [ - { - "download_url": "https://www.juniper.net/support/downloads/?p=space#sw", - "filename": "space-17.2R1.4.qcow2", - "filesize": 5150474240, - "md5sum": "4124fa756c3a78be0619e876b8ee687e", - "version": "17.2R1.4" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Junos Space", - "port_name_format": "em{0}", - "product_name": "Junos Space", - "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "qemu": { - "adapter_type": "e1000", - "adapters": 4, - "arch": "x86_64", - "console_type": "telnet", - "kvm": "require", - "options": "-smp 4 -nographic", - "ram": 16384 - }, - "registry_version": 3, - "status": "stable", - "symbol": "juniper-vqfx.svg", - "usage": "16 GB RAM is the bare minimum; you should use 32/64 GB in production deplyments.\nDefault credentials:\n- CLI: admin / abc123\n- WebUI: super / juniper123", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", - "versions": [ - { - "images": { - "hda_disk_image": "space-17.2R1.4.qcow2" + "hda_disk_image": "ostinato-0.8-1.qcow2" }, - "name": "17.2R1.4" + "name": "0.8" } ] }, { - "availability": "service-contract", "builtin": true, "category": "firewall", - "description": "This is your administrative nerve center for managing critical Cisco network security solutions. It provides complete and unified management over firewalls, application control, intrusion prevention, URL filtering, and advanced malware protection. Easily go from managing a firewall to controlling applications to investigating and remediating malware outbreaks.", - "documentation_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/fmcv-kvm-qsg.html", - "first_port_name": "eth0", + "description": "IPFire was designed with both modularity and a high-level of flexibility in mind. You can easily deploy many variations of it, such as a firewall, a proxy server or a VPN gateway. The modular design ensures that it runs exactly what you've configured it for and nothing more. Everything is simple to manage and update through the package manager, making maintenance a breeze.", + "documentation_url": "http://wiki.ipfire.org/en/start", "images": [ { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual-6.0.0-1005-disk1.vmdk", - "filesize": 1681540608, - "md5sum": "3fed60f1e7d6910c22d13e966acebd7f", - "version": "6.0.0 (1005) vmdk" + "compression": "xz", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.21-core124/ipfire-2.21.2gb-ext4.x86_64-full-core124.img.xz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.21.2gb-ext4.x86_64-full-core124.img", + "filesize": 1541160960, + "md5sum": "970a5cafaa0cb4cfbf42772f41d24932", + "version": "2.21.124" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual-6.1.0-330.qcow2", - "filesize": 1909391360, - "md5sum": "e3c64179ec46671caeb7ac3e4e58064f", - "version": "6.1.0 (330)" + "compression": "gzip", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core119/ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img", + "filesize": 1063256064, + "md5sum": "b57be976ff54569b71eae4ee66634b0d", + "version": "2.19.119" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.1.0-330-disk1.vmdk", - "filesize": 1938142720, - "md5sum": "8bc77b317cf0007dcbb0f187c1a0c01f", - "version": "6.1.0 (330) vmdk" + "compression": "gzip", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core118/ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img", + "filesize": 1063256064, + "md5sum": "4dbeb474848d87c16c20ff4e31feb204", + "version": "2.19.118" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual-6.2.0-362.qcow2", - "filesize": 1949302784, - "md5sum": "26e66882bf5f68adc0eca2f6bef7b613", - "version": "6.2.0 (362)" + "compression": "gzip", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core117/ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img", + "filesize": 1063256064, + "md5sum": "657673d88b94ed7d22332aebe817bc86", + "version": "2.19.117" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.0-362-disk1.vmdk", - "filesize": 1983376384, - "md5sum": "772165cbda3c183bb0e77a1923dd4d09", - "version": "6.2.0 (362) vmdk" + "compression": "gzip", + "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core116/ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img", + "filesize": 1063256064, + "md5sum": "2a8df99d117a0dbfb67870494c0c67cd", + "version": "2.19.116" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual-6.2.1-342.qcow2", - "filesize": 2113732608, - "md5sum": "29ebbbe71a6b766f6dea81e5ca32c275", - "version": "6.2.1 (342)" + "compression": "gzip", + "direct_download_url": "http://downloads.ipfire.org/releases/ipfire-2.x/2.19-core110/ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core111.img", + "filesize": 1063256064, + "md5sum": "741ab771cadd2f6a1fc4a85b3478ae5f", + "version": "2.19.111" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.1-342-disk1.vmdk", - "filesize": 2150017536, - "md5sum": "4cf5b7fd68075b6f7ee0dd41a4029ca0", - "version": "6.2.1 (342) vmdk" + "compression": "gzip", + "direct_download_url": "http://downloads.ipfire.org/releases/ipfire-2.x/2.19-core110/ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img.gz", + "download_url": "http://www.ipfire.org/download", + "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img", + "filesize": 958398464, + "md5sum": "d91bdabee5db83d0f93573f88ea542b1", + "version": "2.19.110" } ], - "maintainer": "Community", - "maintainer_email": "", - "name": "Cisco FMCv", - "port_name_format": "eth{port1}", - "product_name": "Cisco Firepower Management Center Virtual", - "product_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/fmcv-kvm-qsg.html", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "IPFire", + "port_name_format": "eth{0}", + "product_name": "IPFire", + "product_url": "http://www.ipfire.org/features", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 1, + "adapters": 4, "arch": "x86_64", + "boot_priority": "c", "console_type": "telnet", - "cpus": 4, - "hda_disk_interface": "scsi", - "kvm": "require", - "options": "", - "ram": 8192 + "hda_disk_interface": "virtio", + "kvm": "allow", + "ram": 1024 }, - "registry_version": 4, - "status": "experimental", - "symbol": "cisco-fmcv.svg", - "usage": "BE PATIENT\nOn first boot FMCv generates about 6GB of data. This can take 30 minutes or more. Plan on a long wait after the following line in the boot up:\n\n usbcore: registered new interface driver usb-storage\n\nInitial IP address: 192.168.45.45.\n\nDefault username/password: admin/Admin123.", - "vendor_name": "Cisco Systems", - "vendor_url": "http://www.cisco.com/", + "registry_version": 3, + "status": "stable", + "usage": "A config wizard will be started at first boot.", + "vendor_name": "IPFire Project", + "vendor_url": "http://www.ipfire.org/", "versions": [ { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.0.0-1005-disk1.vmdk" + "hda_disk_image": "ipfire-2.21.2gb-ext4.x86_64-full-core124.img" }, - "name": "6.0.0 (1005) vmdk" + "name": "2.21.124" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.1.0-330.qcow2" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img" }, - "name": "6.1.0 (330)" + "name": "2.19.119" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.1.0-330-disk1.vmdk" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img" }, - "name": "6.1.0 (330) vmdk" + "name": "2.19.118" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.2.0-362.qcow2" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img" }, - "name": "6.2.0 (362)" + "name": "2.19.117" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.0-362-disk1.vmdk" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img" }, - "name": "6.2.0 (362) vmdk" + "name": "2.19.116" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.2.1-342.qcow2" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core111.img" }, - "name": "6.2.1 (342)" + "name": "2.19.111" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.1-342-disk1.vmdk" + "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img" }, - "name": "6.2.1 (342) vmdk" + "name": "2.19.110" } ] }, { "builtin": true, - "category": "router", - "description": "Cisco 3640 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "chassis": "3640", - "nvram": 256, - "platform": "c3600", - "ram": 192, - "startup_config": "ios_base_startup-config.txt" - }, + "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.", + "documentation_url": "https://www.kali.org/kali-linux-documentation/", "images": [ { - "filename": "c3640-a3js-mz.124-25d.image", - "filesize": 65688632, - "md5sum": "493c4ef6578801d74d715e7d11596964", - "version": "124-25d" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco 3640", - "product_name": "3640", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ + "direct_download_url": "http://cdimage.kali.org/kali-2018.3/kali-linux-2018.3-amd64.iso", + "download_url": "https://www.kali.org/downloads/", + "filename": "kali-linux-2018.3-amd64.iso", + "filesize": 3188391936, + "md5sum": "6dc3e57177249f73492b9edb95d082d1", + "version": "2018.3" + }, { - "idlepc": "0x6050b114", - "images": { - "image": "c3640-a3js-mz.124-25d.image" - }, - "name": "124-25d" - } - ] - }, - { - "builtin": true, - "category": "firewall", - "description": "The pfSense project is a free network firewall distribution, based on the FreeBSD operating system with a custom kernel and including third party free software packages for additional functionality. pfSense software, with the help of the package system, is able to provide the same functionality or more of common commercial firewalls, without any of the artificial limitations. It has successfully replaced every big name commercial firewall you can imagine in numerous installations around the world, including Check Point, Cisco PIX, Cisco ASA, Juniper, Sonicwall, Netgear, Watchguard, Astaro, and more.", - "documentation_url": "https://doc.pfsense.org/index.php/Main_Page", - "images": [ + "direct_download_url": "http://cdimage.kali.org/kali-2018.1/kali-linux-2018.1-amd64.iso", + "download_url": "https://www.kali.org/downloads/", + "filename": "kali-linux-2018.1-amd64.iso", + "filesize": 3028500480, + "md5sum": "a3feb90df5b71b3c7f4a02bdddf221d7", + "version": "2018.1" + }, { - "download_url": "https://www.pfsense.org/download/mirror.php?section=downloads", - "filename": "pfSense-CE-memstick-2.4.3-RELEASE-amd64.img", - "filesize": 650392576, - "md5sum": "b754d7e75dece5e756b6539c95714a74", - "version": "2.4.3" + "direct_download_url": "http://cdimage.kali.org/kali-2017.3/kali-linux-2017.3-amd64.iso", + "download_url": "http://cdimage.kali.org/kali-2017.3/", + "filename": "kali-linux-2017.3-amd64.iso", + "filesize": 2886402048, + "md5sum": "b465580c897e94675ac1daf031fa66b9", + "version": "2017.3" }, { - "download_url": "https://www.pfsense.org/download/mirror.php?section=downloads", - "filename": "pfSense-CE-2.3.5-RELEASE-2g-amd64-nanobsd.img", - "filesize": 1989969408, - "md5sum": "b6cb76adba3e1113892f84ea01894228", - "version": "2.3.5" + "direct_download_url": "http://cdimage.kali.org/kali-2017.2/kali-linux-2017.2-amd64.iso", + "download_url": "http://cdimage.kali.org/kali-2017.2/", + "filename": "kali-linux-2017.2-amd64.iso", + "filesize": 3020619776, + "md5sum": "541654f8f818450dc0db866a0a0f6eec", + "version": "2017.2" + }, + { + "direct_download_url": "http://cdimage.kali.org/kali-2017.1/kali-linux-2017.1-amd64.iso", + "download_url": "http://cdimage.kali.org/kali-2017.1/", + "filename": "kali-linux-2017.1-amd64.iso", + "filesize": 2794307584, + "md5sum": "c8e742283929d7a12dbe7c58e398ff08", + "version": "2017.1" + }, + { + "direct_download_url": "http://cdimage.kali.org/kali-2016.2/kali-linux-2016.2-amd64.iso", + "download_url": "http://cdimage.kali.org/kali-2016.2/", + "filename": "kali-linux-2016.2-amd64.iso", + "filesize": 3076767744, + "md5sum": "3d163746bc5148e61ad689d94bc263f9", + "version": "2016.2" + }, + { + "direct_download_url": "http://cdimage.kali.org/kali-2016.1/kali-linux-2016.1-amd64.iso", + "download_url": "http://cdimage.kali.org/kali-2016.1/", + "filename": "kali-linux-2016.1-amd64.iso", + "filesize": 2945482752, + "md5sum": "2e1230dc14036935b3279dfe3e49ad39", + "version": "2016.1" + }, + { + "direct_download_url": "http://images.kali.org/Kali-Linux-2.0.0-vm-amd64.7z", + "download_url": "https://www.offensive-security.com/kali-linux-vmware-arm-image-download/", + "filename": "kali-linux-2.0-amd64.iso", + "filesize": 3320512512, + "md5sum": "ef192433017c5d99a156eaef51fd389d", + "version": "2.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "pfSense", - "port_name_format": "em{0}", - "product_name": "pfSense", + "name": "Kali Linux", + "product_name": "Kali Linux", "qemu": { "adapter_type": "e1000", - "adapters": 6, + "adapters": 8, "arch": "x86_64", - "boot_priority": "dc", - "console_type": "telnet", - "kvm": "allow", - "process_priority": "normal", - "ram": 2048 + "console_type": "vnc", + "kvm": "require", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "vendor_name": "Electric Sheep Fencing LLC", - "vendor_url": "https://www.pfsense.org", + "usage": "Default password is toor", + "vendor_name": "Kali Linux", + "vendor_url": "https://www.kali.org/", "versions": [ { "images": { - "hda_disk_image": "pfSense-CE-memstick-2.4.3-RELEASE-amd64.img" + "cdrom_image": "kali-linux-2018.3-amd64.iso" }, - "name": "2.4.3" + "name": "2018.3" }, { "images": { - "hda_disk_image": "pfSense-CE-2.3.5-RELEASE-2g-amd64-nanobsd.img" + "cdrom_image": "kali-linux-2018.1-amd64.iso" }, - "name": "2.3.5" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Ostinato is an open-source, cross-platform network packet crafter/traffic generator and analyzer with a friendly GUI. Craft and send packets of several streams with different protocols at different rates.", - "documentation_url": "http://ostinato.org/docs.html", - "images": [ + "name": "2018.1" + }, { - "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.9-1.qcow2", - "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", - "filename": "ostinato-0.9-1.qcow2", - "filesize": 101646336, - "md5sum": "00b4856ec9fffbcbcab7a8f757355d69", - "version": "0.9" + "images": { + "cdrom_image": "kali-linux-2017.3-amd64.iso" + }, + "name": "2017.3" }, { - "direct_download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/ostinato-0.8-1.qcow2", - "download_url": "http://www.bernhard-ehlers.de/projects/ostinato4gns3/index.html", - "filename": "ostinato-0.8-1.qcow2", - "filesize": 57344000, - "md5sum": "12e990ba695103cfac82f8771b8015d4", - "version": "0.8" - } - ], - "maintainer": "Bernhard Ehlers", - "maintainer_email": "be@bernhard-ehlers.de", - "name": "Ostinato", - "port_name_format": "eth{0}", - "product_name": "Ostinato", - "product_url": "http://ostinato.org/", - "qemu": { - "adapter_type": "e1000", - "adapters": 4, - "arch": "i386", - "console_type": "vnc", - "kvm": "allow", - "options": "-vga std -usbdevice tablet", - "ram": 256 - }, - "registry_version": 3, - "status": "experimental", - "symbol": "ostinato-3d-icon.svg", - "usage": "Use interfaces starting with eth1 as traffic interfaces, eth0 is only for the (optional) management of the server/drone.", - "vendor_name": "Ostinato", - "vendor_url": "http://ostinato.org/", - "versions": [ + "images": { + "cdrom_image": "kali-linux-2017.2-amd64.iso" + }, + "name": "2017.2" + }, { "images": { - "hda_disk_image": "ostinato-0.9-1.qcow2" + "cdrom_image": "kali-linux-2017.1-amd64.iso" }, - "name": "0.9" + "name": "2017.1" }, { "images": { - "hda_disk_image": "ostinato-0.8-1.qcow2" + "cdrom_image": "kali-linux-2016.2-amd64.iso" }, - "name": "0.8" + "name": "2016.2" + }, + { + "images": { + "cdrom_image": "kali-linux-2016.1-amd64.iso" + }, + "name": "2016.1" + }, + { + "images": { + "cdrom_image": "kali-linux-2.0-amd64.iso" + }, + "name": "2.0" } ] }, { "builtin": true, - "category": "guest", - "description": "WordPress is a state-of-the-art publishing platform with a focus on aesthetics, web standards, and usability. It is one of the worlds most popular blog publishing applications, includes tons of powerful core functionality, extendable via literally thousands of plugins, and supports full theming. This appliance includes all the standard features in TurnKey Core too.", + "category": "multilayer_switch", + "description": "The Open Network Operating System (ONOS) is a software defined networking (SDN) OS for service providers that has scalability, high availability, high performance and abstractions to make it easy to create apps and services. The platform is based on a solid architecture and has quickly matured to be feature rich and production ready. The community has grown to include over 50 partners and collaborators that contribute to all aspects of the project including interesting use cases such as CORD", "docker": { "adapters": 1, - "console_type": "telnet", - "image": "turnkeylinux/wordpress-14.2:latest" + "image": "onosproject/onos:latest" }, + "documentation_url": "https://wiki.onosproject.org", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "WordPress", - "product_name": "TurnKey Linux WordPress", - "product_url": "https://www.turnkeylinux.org/wordpress", + "name": "Onos", + "product_name": "Onos", + "product_url": "http://onosproject.org/", "registry_version": 3, "status": "stable", - "usage": "For security reasons there are no default passwords. All passwords are set at system initialization time.", - "vendor_name": "Turnkey Linux", - "vendor_url": "https://www.turnkeylinux.org/" + "vendor_name": "Onos", + "vendor_url": "http://onosproject.org/" }, { "builtin": true, - "category": "guest", - "description": "FreeNAS is a Free and Open Source Network Attached Storage (NAS) software appliance. This means that you can use FreeNAS to share data over file-based sharing protocols, including CIFS for Windows users, NFS for Unix-like operating systems, and AFP for Mac OS X users. FreeNAS uses the ZFS file system to store, manage, and protect data. ZFS provides advanced features like snapshots to keep old versions of files, incremental remote backups to keep your data safe on another device without huge file transfers, and intelligent compression, which reduces the size of files so quickly and efficiently that it actually helps transfers happen faster.", - "documentation_url": "https://doc.freenas.org/9.10/freenas.html", + "category": "firewall", + "description": "FortiWeb Web Application Firewalls provide specialized, layered web application threat protection for medium/large enterprises, application service providers, and SaaS providers.", + "documentation_url": "http://docs.fortinet.com/fortiweb", "images": [ { - "direct_download_url": "https://download.freenas.org/11/11.1-U4/x64/FreeNAS-11.1-U4.iso", - "download_url": "http://www.freenas.org/download/", - "filename": "FreeNAS-11.1-U4.iso", - "filesize": 633833472, - "md5sum": "d75623e5671dbc82f32f4b4f8d46092f", - "version": "11.1 U1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v600-build0036-FORTINET.out.kvm.qcow2", + "filesize": 138412544, + "md5sum": "220170383b66a6f8091729d67a8fef3e", + "version": "6.0.1" }, { - "direct_download_url": "http://download.freenas.org/11/11.1-RELEASE/x64/FreeNAS-11.1-RELEASE.iso", - "download_url": "http://www.freenas.org/download/", - "filename": "FreeNAS-11.1-U1.iso", - "filesize": 626601984, - "md5sum": "ccbd9990a5878d35c6bc0cc6eea34b16", - "version": "11.1 U1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build1618-FORTINET.out.kvm.qcow2", + "filesize": 132579840, + "md5sum": "12bafff7bbfbf9a49554c6378f0e1a46", + "version": "5.9.1" }, { - "direct_download_url": "http://download.freenas.org/11/11.1-RELEASE/x64/FreeNAS-11.1-RELEASE.iso", - "download_url": "http://www.freenas.org/download/", - "filename": "FreeNAS-11.1-RELEASE.iso", - "filesize": 626761728, - "md5sum": "67bea5816bc889169e5e3054362b2053", - "version": "11.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build1609-FORTINET.out.kvm.qcow2", + "filesize": 140837376, + "md5sum": "a957ae3d60eabc685fcda015c31a5d01", + "version": "5.9.0" }, { - "direct_download_url": "http://download.freenas.org/11/11.0-U4/x64/FreeNAS-11.0-U4.iso", - "download_url": "http://www.freenas.org/download/", - "filename": "FreeNAS-11.0-U4.iso", - "filesize": 567312384, - "md5sum": "4c210f1a6510d1fa95257d81ef569ff8", - "version": "11.0 U4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build1413-FORTINET.out.kvm.qcow2", + "filesize": 105775616, + "md5sum": "910fefe796daa5c963b0bde121996306", + "version": "5.8.6" }, { - "direct_download_url": "https://download.freenas.org/9.10/STABLE/latest/x64/FreeNAS-9.10.1-U4.iso", - "download_url": "http://www.freenas.org/download/", - "filename": "FreeNAS-9.10.1-U4.iso", - "filesize": 533098496, - "md5sum": "b4fb14513dcbb4eb4c5596c5911ca9cc", - "version": "9.10 U4" - }, + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build0739-FORTINET.out.kvm-log.qcow2", + "filesize": 7602176, + "md5sum": "d42225723d2e2ee0160f101c5b9663d5", + "version": "5.5.4" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2", + "filesize": 7602176, + "md5sum": "b90cd0a382cb09db31cef1d0cdf7d6e9", + "version": "5.5.2 - 5.5.3" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build0739-FORTINET.out.kvm-boot.qcow2", + "filesize": 87228416, + "md5sum": "a11b91efacce70212b6b9e1f9916cc3e", + "version": "5.5.4" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build0730-FORTINET.out.kvm-boot.qcow2", + "filesize": 87228416, + "md5sum": "12ebec432a54900e6c63540af8ebfbb4", + "version": "5.5.3" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FWB_KVM-v500-build0723-FORTINET.out.kvm-boot.qcow2", + "filesize": 87162880, + "md5sum": "0a613191948d3618ae16cd9f11988448", + "version": "5.5.2" + }, { "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", @@ -1288,840 +1439,648 @@ X-Route: /v2/appliances/templates ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FreeNAS", - "port_name_format": "eth{0}", - "product_name": "FreeNAS", - "product_url": "http://www.openfiler.com/products", + "name": "FortiWeb", + "port_name_format": "Port{port1}", + "product_name": "FortiWeb", + "product_url": "http://www.fortinet.com/products/fortiweb/index.html", "qemu": { - "adapter_type": "e1000", - "adapters": 1, + "adapter_type": "virtio-net-pci", + "adapters": 4, "arch": "x86_64", - "boot_priority": "cd", + "boot_priority": "c", "console_type": "vnc", - "hda_disk_interface": "ide", - "hdb_disk_interface": "ide", - "kvm": "require", - "ram": 8192 + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "kvm": "allow", + "ram": 2048 }, "registry_version": 3, "status": "stable", - "vendor_name": "iXsystems", - "vendor_url": "http://www.freenas.org", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set. Console keeps sending 'access uuid file failed, error number 2' messages; ignore it.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "cdrom_image": "FreeNAS-11.1-U4.iso", - "hda_disk_image": "empty30G.qcow2", + "hda_disk_image": "FWB_KVM-v600-build0036-FORTINET.out.kvm.qcow2", "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.1 U4" + "name": "6.0.1" }, { "images": { - "cdrom_image": "FreeNAS-11.1-U1.iso", - "hda_disk_image": "empty30G.qcow2", + "hda_disk_image": "FWB_KVM-v500-build1618-FORTINET.out.kvm.qcow2", "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.1 U1" + "name": "5.9.1" }, { "images": { - "cdrom_image": "FreeNAS-11.1-RELEASE.iso", - "hda_disk_image": "empty30G.qcow2", + "hda_disk_image": "FWB_KVM-v500-build1609-FORTINET.out.kvm.qcow2", "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.1" + "name": "5.9.0" }, { "images": { - "cdrom_image": "FreeNAS-11.0-U4.iso", - "hda_disk_image": "empty30G.qcow2", + "hda_disk_image": "FWB_KVM-v500-build1413-FORTINET.out.kvm.qcow2", "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.0 U4" + "name": "5.8.6" }, { "images": { - "cdrom_image": "FreeNAS-9.10.1-U4.iso", - "hda_disk_image": "empty30G.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FWB_KVM-v500-build0739-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FWB_KVM-v500-build0739-FORTINET.out.kvm-log.qcow2" }, - "name": "9.10 U4" + "name": "5.5.4" + }, + { + "images": { + "hda_disk_image": "FWB_KVM-v500-build0730-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2" + }, + "name": "5.5.3" + }, + { + "images": { + "hda_disk_image": "FWB_KVM-v500-build0723-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2" + }, + "name": "5.5.2" } ] }, { "builtin": true, - "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. This version has no GUI.Include packages:\n* nmap\n* metasploit\n* sqlmap\n* hydra\n* telnet client\n* dnsutils (dig)", - "docker": { - "adapters": 2, - "image": "gns3/kalilinux:v2" - }, - "documentation_url": "https://www.kali.org/kali-linux-documentation/", + "category": "router", + "description": "IOS XRv supports the control plane features introduced in Cisco IOS XR.", + "documentation_url": "http://www.cisco.com/c/en/us/td/docs/ios_xr_sw/ios_xrv/release/notes/xrv-rn.html", + "first_port_name": "MgmtEth0/0/CPU0/0", + "images": [ + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "iosxrv-k9-demo-6.1.3.qcow2", + "filesize": 428588544, + "md5sum": "1693b5d22a398587dd0fed2877d8dfac", + "version": "6.1.3" + }, + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "iosxrv-k9-demo-6.0.1.qcow2", + "filesize": 908132352, + "md5sum": "0831ecf43628eccb752ebb275de9a62a", + "version": "6.0.1" + } + ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Kali Linux CLI", - "product_name": "Kali Linux", + "name": "Cisco IOS XRv", + "port_name_format": "Gi0/0/0/{0}", + "product_name": "IOS XRv", + "product_url": "http://virl.cisco.com/", + "qemu": { + "adapter_type": "e1000", + "adapters": 9, + "arch": "i386", + "console_type": "telnet", + "kvm": "require", + "ram": 3072 + }, "registry_version": 3, "status": "stable", - "vendor_name": "Kali Linux", - "vendor_url": "https://www.kali.org/" + "usage": "You can set admin username and password on first boot. Don't forget about the two-staged configuration, you have to commit your changes.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", + "versions": [ + { + "images": { + "hda_disk_image": "iosxrv-k9-demo-6.1.3.qcow2" + }, + "name": "6.1.3" + }, + { + "images": { + "hda_disk_image": "iosxrv-k9-demo-6.0.1.qcow2" + }, + "name": "6.0.1" + } + ] }, { - "availability": "service-contract", "builtin": true, - "category": "firewall", - "description": "Cisco Firepower Threat Defense Virtual NGFW appliances combine Cisco's proven network firewall with the industry\u2019s most effective next-gen IPS and advanced malware protection. All so you can get more visibility, be more flexible, save more, and protect better.", - "documentation_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/ftdv-kvm-qsg.html", - "first_port_name": "Gigabit0/0 (Mgmt)", + "category": "router", + "description": "BSD Router Project (BSDRP) is an embedded free and open source router distribution based on FreeBSD with Quagga and Bird.", "images": [ { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.qcow2", - "filesize": 1022885888, - "md5sum": "fafdae94ead07b23d6c8dc5f7a731e74", - "version": "6.2.0 (363)" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.vmdk", - "filesize": 1042470912, - "md5sum": "10297ab20526a8b1586c6ce1cd3d9cbd", - "version": "6.2.0 (363) vmdk" + "compression": "xz", + "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.91/amd64/BSDRP-1.91-full-amd64-serial.img.xz/download", + "download_url": "https://bsdrp.net/downloads", + "filename": "BSDRP-1.91-full-amd64-serial.img", + "filesize": 1000000000, + "md5sum": "cea67b29ce94e66b617e7dc90956af45", + "version": "1.91" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.qcow2", - "filesize": 1004601344, - "md5sum": "386ab2b3d6d1d28fd2cd03a83df5e00f", - "version": "6.1.0 (330)" + "compression": "xz", + "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.90/amd64/BSDRP-1.90-full-amd64-serial.img.xz/download", + "download_url": "https://bsdrp.net/downloads", + "filename": "BSDRP-1.90-full-amd64-serial.img", + "filesize": 1000000000, + "md5sum": "78b7182bed93888d17d18a67d5fec3a7", + "version": "1.90" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.vmdk", - "filesize": 1024162816, - "md5sum": "c1fa58448841b33d5eed6854dc608816", - "version": "6.1.0 (330) vmdk" + "compression": "xz", + "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.80/amd64/BSDRP-1.80-full-amd64-serial.img.xz/download", + "download_url": "https://bsdrp.net/downloads", + "filename": "BSDRP-1.80-full-amd64-serial.img", + "filesize": 1000000000, + "md5sum": "a4285be15ac85f67b3c7f044872a54b6", + "version": "1.80" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.0.1&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.0.1-1213.vmdk", - "filesize": 714577408, - "md5sum": "bc53461e2ec344814e41a6a8d3a5f774", - "version": "6.0.1 (1213) vmdk" + "compression": "xz", + "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.70/amd64/BSDRP-1.70-full-amd64-serial.img.xz/download", + "download_url": "https://bsdrp.net/downloads", + "filename": "BSDRP-1.70-full-amd64-serial.img", + "filesize": 1000000000, + "md5sum": "9c11f61ddf03ee9a9ae4149676175821", + "version": "1.70" } ], - "maintainer": "Community", - "maintainer_email": "", - "name": "Cisco FTDv", - "port_name_format": "Gigabit0/{port1}", - "product_name": "Cisco FTDv", - "product_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/ftdv-kvm-qsg.html", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "BSDRP", + "product_name": "BSDRP", "qemu": { "adapter_type": "e1000", - "adapters": 10, + "adapters": 4, "arch": "x86_64", "console_type": "telnet", - "cpus": 4, - "hda_disk_interface": "ide", - "kvm": "require", - "ram": 8192 + "kvm": "allow", + "ram": 256 }, - "registry_version": 4, - "status": "experimental", - "symbol": ":/symbols/asa.svg", - "usage": "Default username/password: admin/Admin123.", - "vendor_name": "Cisco Systems", - "vendor_url": "http://www.cisco.com/", + "registry_version": 3, + "status": "stable", + "usage": "Default user: root (no password set)", + "vendor_name": "Olivier Cochard-Labbe", + "vendor_url": "https://bsdrp.net/", "versions": [ { "images": { - "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.qcow2" + "hda_disk_image": "BSDRP-1.91-full-amd64-serial.img" }, - "name": "6.2.0 (363)" + "name": "1.91" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.vmdk" + "hda_disk_image": "BSDRP-1.90-full-amd64-serial.img" }, - "name": "6.2.0 (363) vmdk" + "name": "1.90" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.qcow2" + "hda_disk_image": "BSDRP-1.80-full-amd64-serial.img" }, - "name": "6.1.0 (330)" + "name": "1.80" }, { "images": { - "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.vmdk" + "hda_disk_image": "BSDRP-1.70-full-amd64-serial.img" }, - "name": "6.1.0 (330) vmdk" - }, - { - "images": { - "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.0.1-1213.vmdk" - }, - "name": "6.0.1 (1213) vmdk" + "name": "1.70" } ] }, { "builtin": true, - "category": "multilayer_switch", - "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", - "documentation_url": "http://www.juniper.net/techpubs/", + "category": "guest", + "description": "AsteriskNOW makes it easy to create custom telephony solutions by automatically installing the 'plumbing'. It's a complete Linux distribution with Asterisk, the DAHDI driver framework, and, the FreePBX administrative GUI. Much of the complexity of Asterisk and Linux is handled by the installer, the yum package management utility and the administrative GUI. With AsteriskNOW, application developers and integrators can concentrate on building solutions, not maintaining the plumbing.", + "documentation_url": "https://wiki.asterisk.org/wiki/display/AST/Installing+AsteriskNOW", "images": [ { - "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "filename": "jinstall-vqfx-10-f-17.4R1.16.img", - "filesize": 553910272, - "md5sum": "dd83313b0f5beaf68488ed3d5e1e5240", - "version": "17.4R1" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "filename": "vqfx10k-re-15.1X53-D60.vmdk", - "filesize": 355542528, - "md5sum": "758669e88213fbd7943f5da7f6d7bd59", - "version": "15.1X53-D60" - } - ], - "maintainer": "none", - "maintainer_email": "developers@gns3.net", - "name": "Juniper vQFX RE", - "port_name_format": "em{0}", - "product_name": "Juniper vQFX RE", - "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "qemu": { - "adapter_type": "e1000", - "adapters": 12, - "arch": "x86_64", - "console_type": "telnet", - "kvm": "require", - "options": "-nographic -smp 2", - "ram": 1024 - }, - "registry_version": 3, - "status": "experimental", - "symbol": "juniper-vqfx.svg", - "usage": "Initial username is root, password is Juniper (capitol J).\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (em0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (em1) of the PFE. The switch ports connect here on the RE", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", - "versions": [ - { - "images": { - "hda_disk_image": "jinstall-vqfx-10-f-17.4R1.16.img" - }, - "name": "17.4R1" + "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNow-1013-current-64.iso", + "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", + "filename": "AsteriskNow-1013-current-64.iso", + "filesize": 1343909888, + "md5sum": "1badc6d68b59b57406e1b9ae69acf2e2", + "version": "10.13" }, { - "images": { - "hda_disk_image": "vqfx10k-re-15.1X53-D60.vmdk" - }, - "name": "15.1X53-D60" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "IOS XRv 9000 (aka Sunstone) is the 1st VM released running the 64-bit IOS XR operating system as used on the NCS-6xxx platform. This appliance requires 4 vCPUs and 16GB of memory to run!", - "documentation_url": "http://www.cisco.com/c/en/us/td/docs/ios_xr_sw/ios_xrv/release/notes/xrv-rn.html", - "first_port_name": "MgmtEth0/0/CPU0/0", - "images": [ - { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "xrv9k-fullk9-x-6.2.25.qcow2", - "filesize": 1190723584, - "md5sum": "3f54e62b6f7cedfb2607233e5e465766", - "version": "6.2.25" + "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNOW-612-current-64.iso", + "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", + "filename": "AsteriskNOW-612-current-64.iso", + "filesize": 1135714304, + "md5sum": "cc31e6d9b88d49e8eb182f1e2fb85479", + "version": "6.12" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "xrv9k-fullk9-x.qcow2-6.0.1", - "filesize": 2109210624, - "md5sum": "e20d046807075046c35b6ce7d6766a7f", - "version": "6.0.1" + "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNOW-5211-current-64.iso", + "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", + "filename": "AsteriskNOW-5211-current-64.iso", + "filesize": 1124741120, + "md5sum": "aef2b0fffd637b9c666e8ce904bbd714", + "version": "5.211" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "xrv9k-fullk9-x.qcow2-6.0.0", - "filesize": 2572943360, - "md5sum": "64c538c34252aaeb4ed1ddb93d6803fd", - "version": "6.0.0" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco IOS XRv 9000", - "port_name_format": "GigabitEthernet0/0/0/{0}", - "product_name": "IOS XRv 9000", - "product_url": "http://virl.cisco.com/", + "name": "AsteriskNOW", + "port_name_format": "eth{0}", + "product_name": "AsteriskNOW", + "product_url": "http://www.asterisk.org/downloads/asterisknow", "qemu": { - "adapter_type": "e1000", - "adapters": 4, + "adapter_type": "virtio-net-pci", + "adapters": 1, "arch": "x86_64", - "console_type": "telnet", - "kvm": "require", - "options": "-smp 4", - "ram": 16384 + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "virtio", + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, - "status": "experimental", - "usage": "Default username/password: admin/admin, cisco/cisco and lab/lab. There is no default configuration present.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "status": "stable", + "usage": "Select 'No RAID' option when installing the appliance using the VNC console. Installing the freepbx package takes a lot of time (15+ minutes).", + "vendor_name": "Digium", + "vendor_url": "http://www.asterisk.org/", "versions": [ { "images": { - "hda_disk_image": "xrv9k-fullk9-x-6.2.25.qcow2" + "cdrom_image": "AsteriskNow-1013-current-64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "6.2.25" + "name": "10.13" }, { "images": { - "hda_disk_image": "xrv9k-fullk9-x.qcow2-6.0.1" + "cdrom_image": "AsteriskNOW-612-current-64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "6.0.1" + "name": "6.12" }, { "images": { - "hda_disk_image": "xrv9k-fullk9-x.qcow2-6.0.0" + "cdrom_image": "AsteriskNOW-5211-current-64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "6.0.0" + "name": "5.211" } ] }, { "builtin": true, - "category": "router", - "description": "Cisco 3660 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "chassis": "3660", - "nvram": 256, - "platform": "c3600", - "ram": 192, - "startup_config": "ios_base_startup-config.txt" - }, + "category": "guest", + "description": "CentOS official image for self-hosted cloud", + "documentation_url": "https://wiki.centos.org/Documentation", "images": [ { - "filename": "c3660-a3jk9s-mz.124-15.T14.image", - "filesize": 90181268, - "md5sum": "daed99f508fd42dbaacf711e560643ed", - "version": "124-15.T14" + "download_url": "https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1809.qcow2", + "filename": "CentOS-7-x86_64-GenericCloud-1809.qcow2", + "filesize": 914948096, + "md5sum": "da79108d1324b27bd1759362b82fbe40", + "version": "7-1809" + }, + { + "download_url": "https://github.com/asenci/gns3-centos-cloud-init-data/raw/master/centos-cloud-init-data.iso", + "filename": "centos-cloud-init-data.iso", + "filesize": 378880, + "md5sum": "15ca60c12db6d13b8eeae1a19613fd6e", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco 3660", - "product_name": "3660", + "name": "CentOS Cloud Guest", + "port_name_format": "Ethernet{0}", + "product_name": "Centos Cloud", + "product_url": "https://wiki.centos.org/Cloud", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "kvm": "require", + "options": "-nographic", + "ram": 1024 + }, "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", + "status": "stable", + "usage": "Username: centos\nPassword: centos", + "vendor_name": "The CentOS Project", + "vendor_url": "https://www.centos.org/", "versions": [ { - "idlepc": "0x6076e0b4", "images": { - "image": "c3660-a3jk9s-mz.124-15.T14.image" + "cdrom_image": "centos-cloud-init-data.iso", + "hda_disk_image": "CentOS-7-x86_64-GenericCloud-1809.qcow2" }, - "name": "124-15.T14" + "name": "7 (1809)" } ] }, { "builtin": true, - "category": "router", - "description": "The BIG-IP family of products offers the application intelligence that network managers need to ensure applications are fast, secure, and available. All BIG-IP products share a common underlying architecture, F5's Traffic Management Operating System (TMOS), which provides unified intelligence, flexibility, and programmability. Together, BIG-IP's powerful platforms, advanced modules, and centralized management system make up the most comprehensive set of application delivery tools in the industry. BIG-IP Virtual Edition (VE) is a version of the BIG-IP system that runs as a virtual machine in specifically-supported hypervisors. BIG-IP VE emulates a hardware-based BIG-IP system running a VE-compatible version of BIG-IP software.", - "documentation_url": "https://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/bigip-ve-kvm-setup-11-3-0.html", + "category": "guest", + "description": "FortiMail is a complete Secure Email Gateway offering suitable for any size organization. It provides a single solution to protect against inbound attacks - including advanced malware -, as well as outbound threats and data loss with a wide range of top-rated security capabilities.", + "documentation_url": "http://docs.fortinet.com/fortimail/admin-guides", "images": [ { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.5_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.5_Virtual-Edition&file=BIGIP-13.1.0.5-0.0.5.ALL.qcow2.zip", - "filename": "BIGIP-13.1.0.5-0.0.5.qcow2", - "filesize": 4402446336, - "md5sum": "567b70fe36af0f5364883e97e2c08807", - "version": "13.1.0 HF5" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v60-build0126-FORTINET.out.kvm.qcow2", + "filesize": 96731136, + "md5sum": "b062636f029ff0f3d4b74451cc70b755", + "version": "6.0.3" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.2_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.2_Virtual-Edition&file=BIGIP-13.1.0.2.0.0.6.ALL.qcow2.zip", - "filename": "BIGIP-13.1.0.2.0.0.6.qcow2", - "filesize": 4363649024, - "md5sum": "d29eb861d8906fc36f88d9861a0055f4", - "version": "13.1.0 HF2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0719-FORTINET.out.kvm.qcow2", + "filesize": 97255424, + "md5sum": "e2f202efd28039a6f1f4ebb7ee69e214", + "version": "5.4.5" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.1_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.1_Virtual-Edition&file=BIGIP-13.1.0.1.0.0.8.ALL.qcow2.zip", - "filename": "BIGIP-13.1.0.1.0.0.8.qcow2", - "filesize": 4352966656, - "md5sum": "70f92192e66a82cb8f47bdae0cb267d8", - "version": "13.1.0 HF1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0714-FORTINET.out.kvm.qcow2", + "filesize": 93519872, + "md5sum": "6a3155d9cee6af3ecb016e59c0a0765f", + "version": "5.4.4" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.0.0/english/virtual-edition_base-plus-hf2/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.0.0&container=Virtual-Edition_Base-Plus-HF2&file=BIGIP-13.0.0.2.0.1671.LTM.qcow2.zip", - "filename": "BIGIP-13.0.0.2.0.1671.qcow2", - "filesize": 4435476480, - "md5sum": "62d27f37c66118710c69c07a2ee78d67", - "version": "13.0.0 HF2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0712-FORTINET.out.kvm.qcow2", + "filesize": 93454336, + "md5sum": "977effe7b885ca5cedec7740a2a637aa", + "version": "5.4.3" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.0.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.0.0&container=Virtual-Edition&file=BIGIP-13.0.0.0.0.1645.ALL.qcow2.zip", - "filename": "BIGIP-13.0.0.0.0.1645.qcow2", - "filesize": 3833135104, - "md5sum": "4ec417477c44cdf84edc825a631990e3", - "version": "13.0.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0707-FORTINET.out.kvm.qcow2", + "filesize": 92864512, + "md5sum": "b51260cc3e408bf1352a204b8370254b", + "version": "5.4.2" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.3/english/12.1.3.4_virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.3&container=12.1.3.4_Virtual-Edition&file=BIGIP-12.1.3.4-0.0.2.ALL.qcow2.zip", - "filename": "BIGIP-12.1.3.4-0.0.2.qcow2", - "filesize": 3383164928, - "md5sum": "b2ec82816480c18af1d45ee833744ee8", - "version": "12.1.3 HF4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0704-FORTINET.out.kvm.qcow2", + "filesize": 94568448, + "md5sum": "1f6553e182512cc87e20f47cc2b65abf", + "version": "5.4.1" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.2/english/virtual-edition_base-plus-hf1/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.2&container=Virtual-Edition_Base-Plus-HF1&file=BIGIP-12.1.2.1.0.271.LTM.qcow2.zip", - "filename": "BIGIP-12.1.2.1.0.271.LTM.qcow2", - "filesize": 3764846592, - "md5sum": "b34301c3945b7ddb88f41195efef1104", - "version": "12.1.2 HF1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v54-build0692-FORTINET.out.kvm.qcow2", + "filesize": 101253120, + "md5sum": "c9e0885cab65e52ab01d8143ed466b01", + "version": "5.4.0" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.2/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.2&container=Virtual-Edition&file=BIGIP-12.1.2.0.0.249.LTM.qcow2.zip", - "filename": "BIGIP-12.1.2.0.0.249.qcow2", - "filesize": 3196649472, - "md5sum": "f3aa2d51d82fa3f5a4fa10005a378e16", - "version": "12.1.2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0653-FORTINET.out.kvm.qcow2", + "filesize": 89980928, + "md5sum": "aed4dcb17de047860736d8742362a754", + "version": "5.3.12" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.1/english/virtual-edition_base-plus-hf2/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.1&container=Virtual-Edition_Base-Plus-HF2&file=BIGIP-12.1.1.2.0.204.LTM.qcow2.zip", - "filename": "BIGIP-12.1.1.2.0.204.qcow2", - "filesize": 3563716608, - "md5sum": "74d4d21db3579efb9011a1829a2124b7", - "version": "12.1.1 HF2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0648-FORTINET.out.kvm.qcow2", + "filesize": 88670208, + "md5sum": "bd34a81c1bb6772c7e4919620027a5d4", + "version": "5.3.11" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.0/english/virtual-edition_base-plus-hf1/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.0&container=Virtual-Edition_Base-Plus-HF1&file=BIGIP-12.1.0.1.0.1447.ALL.qcow2.zip", - "filename": "BIGIP-12.1.0.1.0.1447.qcow2", - "filesize": 3503226880, - "md5sum": "15725ba2c72a0fe932985e695f0f3f1f", - "version": "12.1.0 HF1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0643-FORTINET.out.kvm.qcow2", + "filesize": 88801280, + "md5sum": "08f3258533ac2b4f15e86ca3973be17e", + "version": "5.3.10" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.0.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.0.0&container=Virtual-Edition&file=BIGIP-12.0.0.0.0.606.ALL.qcow2.zip", - "filename": "BIGIP-12.0.0.0.0.606.qcow2", - "filesize": 3152609280, - "md5sum": "8f578d697554841f003afd1e2965df7e", - "version": "12.0.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0634-FORTINET.out.kvm.qcow2", + "filesize": 86376448, + "md5sum": "a66b82f0713ba4ea418bd959d0cb5732", + "version": "5.3.9" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.6.1/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.6.1&container=Virtual-Edition&file=BIGIP-11.6.1.0.0.317.ALL.qcow2.zip", - "filename": "BIGIP-11.6.1.0.0.317.qcow2", - "filesize": 2824273920, - "md5sum": "01a2939840d81458bfef0a5c53fb74be", - "version": "11.6.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0627-FORTINET.out.kvm.qcow2", + "filesize": 86769664, + "md5sum": "83108e5cb68bad681b68ec1ef7e29f25", + "version": "5.3.8" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.6.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.6.0&container=Virtual-Edition&file=BIGIP-11.6.0.0.0.401.ALL.qcow2.zip", - "filename": "BIGIP-11.6.0.0.0.401.qcow2", - "filesize": 2851733504, - "md5sum": "87723dc8c9713a36bde9a650b94205e3", - "version": "11.6.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0623-FORTINET.out.kvm.qcow2", + "filesize": 86573056, + "md5sum": "7e208d04c3f9bc4dedcf6d45e8d99a76", + "version": "5.3.7" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.3.0/english/virtual-edition-trial/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.3.0&container=Virtual-Edition-Trial&file=BIGIP-11.3.0.39.0.qcow2.zip", - "filename": "BIGIP-11.3.0.39.0.qcow2", - "filesize": 1842020352, - "md5sum": "f3dec4565484fe81233077ab2ce426ae", - "version": "11.3.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0621-FORTINET.out.kvm.qcow2", + "filesize": 86638592, + "md5sum": "3fe1521b73af886359d78eb4c1509466", + "version": "5.3.6" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0618-FORTINET.out.kvm.qcow2", + "filesize": 86376448, + "md5sum": "5f4159956b87538c008654c030e00e37", + "version": "5.3.5" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0608-FORTINET.out.kvm.qcow2", + "filesize": 86048768, + "md5sum": "b78f647148923e1bddfa2dcfbcc0c85c", + "version": "5.3.4" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0599-FORTINET.out.kvm.qcow2", + "filesize": 84606976, + "md5sum": "f1f3ae5593029d4fc0a5024bcf786cc7", + "version": "5.3.3" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FML_VMKV-64-v53-build0593-FORTINET.out.kvm.qcow2", + "filesize": 84541440, + "md5sum": "0447819ed4aa382ea6871c0cb913b592", + "version": "5.3.2" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "F5 BIG-IP LTM VE", - "port_name_format": "1.{port1}", - "product_name": "F5 BIG-IP LTM VE", - "product_url": "https://f5.com/products/modules/local-traffic-manager", + "name": "FortiMail", + "port_name_format": "Port{port1}", + "product_name": "FortiMail", + "product_url": "http://www.fortinet.com/products/fortimail/index.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 8, + "adapters": 4, "arch": "x86_64", "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", "hdb_disk_interface": "virtio", - "kvm": "require", - "options": "-smp 2 -cpu host", - "ram": 4096 + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "Console credentials: root/default. WebUI credentials: admin/admin. The boot process might take a few minutes without providing any output to the console. Please be patient (or set console to vnc to see tty outputs).\n\nIn case the 'localhost emerg logger: Re-starting chmand' log appears on the console, you can find the solution here: https://devcentral.f5.com/questions/big-ip-ltm-ve-on-kvm", - "vendor_name": "F5", - "vendor_url": "http://www.f5.com/", + "symbol": "fortinet.svg", + "usage": "First boot takes a few minutes. Admin URL is https://x.x.x.x/admin, default username is admin, no password is set.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "hda_disk_image": "BIGIP-13.1.0.5-0.0.5.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v60-build0126-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "13.1.0 HF5" + "name": "6.0.3" }, { "images": { - "hda_disk_image": "BIGIP-13.1.0.2.0.0.6.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0719-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "13.1.0 HF2" + "name": "5.4.5" }, { "images": { - "hda_disk_image": "BIGIP-13.1.0.1.0.0.8.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0714-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "13.1.0 HF1" + "name": "5.4.4" }, { "images": { - "hda_disk_image": "BIGIP-13.0.0.2.0.1671.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0712-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "13.0.0 HF2" + "name": "5.4.3" }, { "images": { - "hda_disk_image": "BIGIP-13.0.0.0.0.1645.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0707-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "13.0.0" + "name": "5.4.2" }, { "images": { - "hda_disk_image": "BIGIP-12.1.3.4-0.0.2.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0704-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1.3 HF4" + "name": "5.4.1" }, { "images": { - "hda_disk_image": "BIGIP-12.1.2.1.0.271.LTM.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v54-build0692-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1.2 HF1" + "name": "5.4.0" }, { "images": { - "hda_disk_image": "BIGIP-12.1.2.0.0.249.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0653-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1.2" + "name": "5.3.12" }, { "images": { - "hda_disk_image": "BIGIP-12.1.1.2.0.204.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0648-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1.1 HF2" + "name": "5.3.11" }, { "images": { - "hda_disk_image": "BIGIP-12.1.0.1.0.1447.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0643-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1.0 HF1" + "name": "5.3.10" }, { "images": { - "hda_disk_image": "BIGIP-12.0.0.0.0.606.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0634-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.0.0" + "name": "5.3.9" }, { "images": { - "hda_disk_image": "BIGIP-11.6.1.0.0.317.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0627-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.6.1" + "name": "5.3.8" }, { "images": { - "hda_disk_image": "BIGIP-11.6.0.0.0.401.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0623-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.6.0" + "name": "5.3.7" }, { "images": { - "hda_disk_image": "BIGIP-11.3.0.39.0.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FML_VMKV-64-v53-build0621-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "11.3.0" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more. This appliance provide python 2.7.", - "docker": { - "adapters": 1, - "console_http_path": "/", - "console_http_port": 8888, - "console_type": "http", - "image": "gns3/jupyter27:v2" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Jupyter 2.7", - "product_name": "Jupyter", - "registry_version": 3, - "status": "stable", - "vendor_name": "Project Jupyter", - "vendor_url": "http://jupyter.org/" - }, - { - "builtin": true, - "category": "firewall", - "description": "IPFire was designed with both modularity and a high-level of flexibility in mind. You can easily deploy many variations of it, such as a firewall, a proxy server or a VPN gateway. The modular design ensures that it runs exactly what you've configured it for and nothing more. Everything is simple to manage and update through the package manager, making maintenance a breeze.", - "documentation_url": "http://wiki.ipfire.org/en/start", - "images": [ - { - "compression": "gzip", - "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core119/ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img", - "filesize": 1063256064, - "md5sum": "b57be976ff54569b71eae4ee66634b0d", - "version": "2.19.119" - }, - { - "compression": "gzip", - "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core118/ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img", - "filesize": 1063256064, - "md5sum": "4dbeb474848d87c16c20ff4e31feb204", - "version": "2.19.118" - }, - { - "compression": "gzip", - "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core117/ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img", - "filesize": 1063256064, - "md5sum": "657673d88b94ed7d22332aebe817bc86", - "version": "2.19.117" - }, - { - "compression": "gzip", - "direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.19-core116/ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img", - "filesize": 1063256064, - "md5sum": "2a8df99d117a0dbfb67870494c0c67cd", - "version": "2.19.116" - }, - { - "compression": "gzip", - "direct_download_url": "http://downloads.ipfire.org/releases/ipfire-2.x/2.19-core110/ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core111.img", - "filesize": 1063256064, - "md5sum": "741ab771cadd2f6a1fc4a85b3478ae5f", - "version": "2.19.111" - }, - { - "compression": "gzip", - "direct_download_url": "http://downloads.ipfire.org/releases/ipfire-2.x/2.19-core110/ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img.gz", - "download_url": "http://www.ipfire.org/download", - "filename": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img", - "filesize": 958398464, - "md5sum": "d91bdabee5db83d0f93573f88ea542b1", - "version": "2.19.110" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "IPFire", - "port_name_format": "eth{0}", - "product_name": "IPFire", - "product_url": "http://www.ipfire.org/features", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 - }, - "registry_version": 3, - "status": "stable", - "usage": "A config wizard will be started at first boot.", - "vendor_name": "IPFire Project", - "vendor_url": "http://www.ipfire.org/", - "versions": [ - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core119.img" - }, - "name": "2.19.119" - }, - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core118.img" - }, - "name": "2.19.118" - }, - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core117.img" - }, - "name": "2.19.117" - }, - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core116.img" - }, - "name": "2.19.116" - }, - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core111.img" - }, - "name": "2.19.111" - }, - { - "images": { - "hda_disk_image": "ipfire-2.19.1gb-ext4-scon.x86_64-full-core110.img" - }, - "name": "2.19.110" - } - ] - }, - { - "builtin": true, - "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.", - "documentation_url": "http://wiki.openwrt.org/doc/", - "images": [ - { - "compression": "gzip", - "direct_download_url": "https://downloads.openwrt.org/chaos_calmer/15.05.1/x86/kvm_guest/openwrt-15.05.1-x86-kvm_guest-combined-ext4.img.gz", - "download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/x86/kvm_guest/", - "filename": "openwrt-15.05.1-x86-kvm_guest-combined-ext4.img", - "filesize": 55050240, - "md5sum": "d02f5224b7fbe929efa4d3f10f4dc996", - "version": "15.05.1" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "OpenWrt", - "product_name": "OpenWrt", - "product_url": "http://openwrt.org", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 2, - "arch": "i386", - "console_type": "telnet", - "kvm": "allow", - "ram": 64 - }, - "registry_version": 3, - "status": "stable", - "usage": "Ethernet0 is the LAN link, Ethernet1 the WAN link.", - "vendor_name": "OpenWrt", - "vendor_url": "http://openwrt.org", - "versions": [ - { - "images": { - "hda_disk_image": "openwrt-15.05.1-x86-kvm_guest-combined-ext4.img" - }, - "name": "Chaos Calmer 15.05.1" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Micro Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nThis is complete Linux system needing few resources to run.", - "documentation_url": "http://wiki.tinycorelinux.net/", - "images": [ - { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-6.4.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-microcore-6.4.img", - "filesize": 16580608, - "md5sum": "877419f975c4891c019947ceead5c696", - "version": "6.4" - }, - { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-4.0.2-clean.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-microcore-4.0.2-clean.img", - "filesize": 26411008, - "md5sum": "e13d0d1c0b3999ae2386bba70417930c", - "version": "4.0.2" - }, - { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-3.4.1.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-microcore-3.4.1.img", - "filesize": 24969216, - "md5sum": "fa2ec4b1fffad67d8103c3391bbf9df2", - "version": "3.4.1" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Micro Core Linux", - "product_name": "Micro Core Linux", - "product_url": "http://distro.ibiblio.org/tinycorelinux", - "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "i386", - "console_type": "telnet", - "kvm": "allow", - "ram": 64 - }, - "registry_version": 3, - "status": "stable", - "symbol": "linux_guest.svg", - "usage": "For version >= 6.4, login/password is gns3. For older version it is tc. Note that sudo works without any password", - "vendor_name": "Team Tiny Core", - "vendor_url": "http://distro.ibiblio.org/tinycorelinux", - "versions": [ - { - "images": { - "hda_disk_image": "linux-microcore-6.4.img" - }, - "name": "6.4" - }, - { - "images": { - "hda_disk_image": "linux-microcore-4.0.2-clean.img" - }, - "name": "4.0.2" - }, - { - "images": { - "hda_disk_image": "linux-microcore-3.4.1.img" - }, - "name": "3.4.1" + "name": "5.3.6" + }, + { + "images": { + "hda_disk_image": "FML_VMKV-64-v53-build0618-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.3.5" + }, + { + "images": { + "hda_disk_image": "FML_VMKV-64-v53-build0608-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.3.4" + }, + { + "images": { + "hda_disk_image": "FML_VMKV-64-v53-build0599-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.3.3" + }, + { + "images": { + "hda_disk_image": "FML_VMKV-64-v53-build0593-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.3.2" } ] }, @@ -2207,7592 +2166,8998 @@ X-Route: /v2/appliances/templates }, { "builtin": true, - "category": "router", - "description": "BSD Router Project (BSDRP) is an embedded free and open source router distribution based on FreeBSD with Quagga and Bird.", + "category": "guest", + "description": "The on-premise Mail and Directory server. Native compatibility with Microsoft Active Directory. You can control your IT infrastructure from a single point of user management, regardless of the different offices and locations your business has. True Microsoft Outlook compatibility. Your users can continue using their favorite email clients, without any service interruptions and without having to install any plug-in or connector.", + "documentation_url": "https://wiki.zentyal.org/wiki/Zentyal_Wiki", "images": [ { - "compression": "xz", - "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.80/amd64/BSDRP-1.80-full-amd64-serial.img.xz/download", - "download_url": "https://bsdrp.net/downloads", - "filename": "BSDRP-1.80-full-amd64-serial.img", - "filesize": 1000000000, - "md5sum": "a4285be15ac85f67b3c7f044872a54b6", - "version": "1.80" + "direct_download_url": "http://download.zentyal.com/zentyal-5.1-development-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-5.1-development-amd64.iso", + "filesize": 947912704, + "md5sum": "dac5623b92c1b361d7805ab8c95c0d99", + "version": "5.1" }, { - "compression": "xz", - "direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.70/amd64/BSDRP-1.70-full-amd64-serial.img.xz/download", - "download_url": "https://bsdrp.net/downloads", - "filename": "BSDRP-1.70-full-amd64-serial.img", - "filesize": 1000000000, - "md5sum": "9c11f61ddf03ee9a9ae4149676175821", - "version": "1.70" + "direct_download_url": "http://download.zentyal.com/zentyal-5.0.1-development-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-5.0.1-development-amd64.iso", + "filesize": 953155584, + "md5sum": "1ac74be6563f0b21b337c274e62cdd32", + "version": "5.0.1" + }, + { + "direct_download_url": "http://download.zentyal.com/zentyal-5.0-development-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-5.0-development-amd64.iso", + "filesize": 914565120, + "md5sum": "ddaa3b2bf2cd6cae8bcfbcb88ca636a8", + "version": "5.0" + }, + { + "direct_download_url": "http://download.zentyal.com/zentyal-4.2-development-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-4.2-development-amd64.iso", + "filesize": 629284864, + "md5sum": "22b165a49adbc4eff033ced01e71fe3a", + "version": "4.2" + }, + { + "direct_download_url": "http://download.zentyal.com/zentyal-4.1-development-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-4.1-development-amd64.iso", + "filesize": 612206592, + "md5sum": "40a8ff15a60ff862a110a17f941edf2a", + "version": "4.1" + }, + { + "direct_download_url": "http://download.zentyal.com/zentyal-4.0-amd64.iso", + "download_url": "http://download.zentyal.com/", + "filename": "zentyal-4.0-amd64.iso", + "filesize": 666370048, + "md5sum": "d63b15f1edcd2c3c03ab3a36e833e211", + "version": "4.0" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "BSDRP", - "product_name": "BSDRP", + "name": "Zentyal Server", + "port_name_format": "eth{0}", + "product_name": "Zentyal Server", + "product_url": "http://www.zentyal.com/zentyal-server/", "qemu": { - "adapter_type": "e1000", - "adapters": 4, + "adapter_type": "virtio-net-pci", + "adapters": 3, "arch": "x86_64", - "console_type": "telnet", - "kvm": "allow", - "ram": 256 + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 2048 }, "registry_version": 3, "status": "stable", - "usage": "Default user: root (no password set)", - "vendor_name": "Olivier Cochard-Labbe", - "vendor_url": "https://bsdrp.net/", + "usage": "Follow installation instructions. Once the installation process is done, you can access the web interface using a web browser: https://:8443/", + "vendor_name": "Zentyal S.L.", + "vendor_url": "http://www.zentyal.com/", "versions": [ { "images": { - "hda_disk_image": "BSDRP-1.80-full-amd64-serial.img" + "cdrom_image": "zentyal-5.1-development-amd64.iso", + "hda_disk_image": "empty100G.qcow2" }, - "name": "1.80" + "name": "5.1" }, { "images": { - "hda_disk_image": "BSDRP-1.70-full-amd64-serial.img" + "cdrom_image": "zentyal-5.0.1-development-amd64.iso", + "hda_disk_image": "empty100G.qcow2" }, - "name": "1.70" + "name": "5.0.1" + }, + { + "images": { + "cdrom_image": "zentyal-5.0-development-amd64.iso", + "hda_disk_image": "empty100G.qcow2" + }, + "name": "5.0" + }, + { + "images": { + "cdrom_image": "zentyal-4.2-development-amd64.iso", + "hda_disk_image": "empty100G.qcow2" + }, + "name": "4.2" + }, + { + "images": { + "cdrom_image": "zentyal-4.1-development-amd64.iso", + "hda_disk_image": "empty100G.qcow2" + }, + "name": "4.1" + }, + { + "images": { + "cdrom_image": "zentyal-4.0-amd64.iso", + "hda_disk_image": "empty100G.qcow2" + }, + "name": "4.0" } ] }, { "builtin": true, - "category": "router", - "description": "IOS XRv supports the control plane features introduced in Cisco IOS XR.", - "documentation_url": "http://www.cisco.com/c/en/us/td/docs/ios_xr_sw/ios_xrv/release/notes/xrv-rn.html", - "first_port_name": "MgmtEth0/0/CPU0/0", + "category": "guest", + "description": "Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nIt's provide a complete Linux system in few MB.", + "documentation_url": "http://wiki.tinycorelinux.net/", "images": [ { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "iosxrv-k9-demo-6.1.3.qcow2", - "filesize": 428588544, - "md5sum": "1693b5d22a398587dd0fed2877d8dfac", - "version": "6.1.3" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-2.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-tinycore-6.4-2.img", + "filesize": 36503552, + "md5sum": "dcbb5318c3e18ab085088d4474d8de85", + "version": "6.4" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "iosxrv-k9-demo-6.0.1.qcow2", - "filesize": 908132352, - "md5sum": "0831ecf43628eccb752ebb275de9a62a", - "version": "6.0.1" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-tinycore-6.4.img", + "filesize": 22544384, + "md5sum": "e3de478780c0acb76ef92f872fe734c4", + "version": "6.4" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco IOS XRv", - "port_name_format": "Gi0/0/0/{0}", - "product_name": "IOS XRv", - "product_url": "http://virl.cisco.com/", + "name": "Tiny Core Linux", + "product_name": "Tiny Core Linux", + "product_url": "http://distro.ibiblio.org/tinycorelinux", "qemu": { "adapter_type": "e1000", - "adapters": 9, + "adapters": 1, "arch": "i386", - "console_type": "telnet", - "kvm": "require", - "ram": 3072 + "console_type": "vnc", + "kvm": "allow", + "options": "-vga std -usbdevice tablet", + "ram": 96 }, "registry_version": 3, "status": "stable", - "usage": "You can set admin username and password on first boot. Don't forget about the two-staged configuration, you have to commit your changes.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "symbol": "linux_guest.svg", + "usage": "Login is gns3/gns3. sudo works without password", + "vendor_name": "Team Tiny Core", + "vendor_url": "http://distro.ibiblio.org/tinycorelinux", "versions": [ { "images": { - "hda_disk_image": "iosxrv-k9-demo-6.1.3.qcow2" + "hda_disk_image": "linux-tinycore-6.4-2.img" }, - "name": "6.1.3" + "name": "6.4~2" }, { "images": { - "hda_disk_image": "iosxrv-k9-demo-6.0.1.qcow2" + "hda_disk_image": "linux-tinycore-6.4.img" }, - "name": "6.0.1" + "name": "6.4~1" } ] }, { "builtin": true, - "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.", + "category": "guest", + "description": "Container with integrated Python 2 & 3, Perl, PHP, and PHP7.0 interpreters, and a Go compiler.", "docker": { - "adapters": 16, - "image": "gns3/openvswitch:latest" + "adapters": 1, + "image": "adosztal/python-go-perl-php:latest" }, - "documentation_url": "http://openvswitch.org/support/", "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Open vSwitch", - "product_name": "Open vSwitch", - "product_url": "http://openvswitch.org/", + "name": "Python, Go, Perl, PHP", + "product_name": "Python, Go, Perl, PHP", "registry_version": 3, "status": "stable", - "usage": "By default all interfaces are connected to the br0", - "vendor_name": "Open vSwitch", - "vendor_url": "http://openvswitch.org/" + "vendor_name": "GNS3 Team", + "vendor_url": "https://www.gns3.com" }, { "builtin": true, - "category": "multilayer_switch", - "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", - "documentation_url": "http://www.juniper.net/techpubs/", + "category": "guest", + "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more.", + "docker": { + "adapters": 1, + "console_http_path": "/", + "console_http_port": 8888, + "console_type": "http", + "image": "gns3/jupyter:v2" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Jupyter", + "product_name": "Jupyter", + "registry_version": 3, + "status": "stable", + "vendor_name": "Project Jupyter", + "vendor_url": "http://jupyter.org/" + }, + { + "builtin": true, + "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.", + "documentation_url": "http://wiki.openwrt.org/doc/", "images": [ { - "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "filename": "cosim_20180212.qcow2", - "filesize": 1911291904, - "md5sum": "0372e9c1b7df3608099186ab8cbbf2ad", - "version": "17.4R1" + "direct_download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/realview/generic/openwrt-15.05.1-realview-vmlinux-initramfs.elf", + "download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/realview/generic/", + "filename": "openwrt-15.05.1-realview-vmlinux-initramfs.elf", + "filesize": 2278696, + "md5sum": "3660b9de654cf03f2a50997ae89c2daf", + "version": "15.05.1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "filename": "vqfx10k-pfe-20160609-2.vmdk", - "filesize": 584086528, - "md5sum": "faa6905fd8e935c6e97859191143e8c3", - "version": "15.1X53-D60" + "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/", + "filename": "openwrt-realview-vmlinux-initramfs-14.07.elf", + "filesize": 2183520, + "md5sum": "2411307d0794baa618537c5dfcb19575", + "version": "14.07" } ], - "maintainer": "none", + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Juniper vQFX PFE", - "port_name_format": "em{0}", - "product_name": "Juniper vQFX PFE", - "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", - "qemu": { + "name": "OpenWrt Realview", + "product_name": "OpenWrt", + "product_url": "http://openwrt.org", + "qemu": { "adapter_type": "e1000", "adapters": 2, - "arch": "x86_64", - "console_type": "vnc", - "kvm": "require", - "options": "-nographic", - "ram": 2048 + "arch": "arm", + "console_type": "telnet", + "kvm": "allow", + "options": "-M realview-eb-mpcore", + "ram": 128 }, "registry_version": 3, - "status": "experimental", - "symbol": "juniper-vqfx.svg", - "usage": "\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (em0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (em1) of the RE. The switch ports do not connect here, but on the RE", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", + "status": "stable", + "vendor_name": "OpenWrt", + "vendor_url": "http://openwrt.org", "versions": [ { "images": { - "hda_disk_image": "cosim_20180212.qcow2" + "kernel_image": "openwrt-15.05.1-realview-vmlinux-initramfs.elf" }, - "name": "17.4R1" + "name": "Chaos Calmer 15.05.1" }, { "images": { - "hda_disk_image": "vqfx10k-pfe-20160609-2.vmdk" + "kernel_image": "openwrt-realview-vmlinux-initramfs-14.07.elf" }, - "name": "15.1X53-D60" + "name": "Barrier Breaker 14.07" } ] }, { "builtin": true, "category": "guest", - "description": "This appliance contains server side software for secondary management of network devices:\n- www (nginx) \n- ftp (vsftpd)\n- tftp (tftpd)\n- syslog (rsyslog)\n- dhcp (isc-dhcpd)\n- snmp server (snmpd + snmptrapd)", + "description": "webterm is a debian based networking toolbox.\nIt contains the firefox web browser plus the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump, ab(apache benchmark) and the multicast testing tools msend/mreceive.", "docker": { "adapters": 1, - "console_type": "telnet", - "image": "adosztal/net_toolbox:latest" + "console_type": "vnc", + "image": "gns3/webterm:latest" }, - "maintainer": "Andras Dosztal", + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Toolbox", - "product_name": "Networkers' toolbox", + "name": "webterm", + "product_name": "webterm", "registry_version": 3, "status": "stable", - "symbol": "linux_guest.svg", - "usage": "Root password: gns3", - "vendor_name": "Ubuntu", - "vendor_url": "https://www.ubuntu.com/" + "symbol": "firefox.svg", + "usage": "The /root directory is persistent.", + "vendor_name": "webterm", + "vendor_url": "https://www.debian.org" }, { "builtin": true, - "category": "router", - "description": "Cisco IOS on UNIX Layer 3 image.", + "category": "guest", + "description": "FortiAnalyzer Network Security Logging, Analysis, and Reporting Appliances securely aggregate log data from Fortinet Security Appliances. A comprehensive suite of easily customable reports allows you to quickly analyze and visualize network threats, inefficiencies and usage.", + "documentation_url": "http://docs.fortinet.com/fortianalyzer/", "images": [ { - "filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin", - "filesize": 172982492, - "md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5", - "version": "155-2T" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "filesize": 115777536, + "md5sum": "1c9c6a99244aaf8b215c52194e1f82ed", + "version": "6.0.2" }, { - "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin", - "filesize": 152677848, - "md5sum": "2eabae17778316c49cbc80e8e81262f9", - "version": "15.4.1T" - } - ], - "iou": { - "ethernet_adapters": 2, - "nvram": 128, - "ram": 256, - "serial_adapters": 2, - "startup_config": "iou_l3_base_startup-config.txt" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco IOU L3", - "product_name": "Cisco IOU L3", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", + "filesize": 117940224, + "md5sum": "e870087db55a095c75ddcafe73e1ea27", + "version": "6.0.0" + }, { - "images": { - "image": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" - }, - "name": "155-2T" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", + "filesize": 105816064, + "md5sum": "c7f1cf26051b50b86e7e59b99e36756f", + "version": "5.6.2" }, { - "images": { - "image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" - }, - "name": "15.4.1T" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Ubuntu is a Debian-based Linux operating system, with Unity as its default desktop environment. It is based on free software and named after the Southern African philosophy of ubuntu (literally, \"human-ness\"), which often is translated as \"humanity towards others\" or \"the belief in a universal bond of sharing that connects all humanity\".", - "docker": { - "adapters": 1, - "console_type": "telnet", - "image": "gns3/ubuntu:xenial" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Ubuntu Docker Guest", - "product_name": "Ubuntu", - "registry_version": 3, - "status": "stable", - "symbol": "linux_guest.svg", - "vendor_name": "Canonical", - "vendor_url": "http://www.ubuntu.com" - }, - { - "builtin": true, - "category": "guest", - "description": "When you go from managing a few boxes to managing a few dozen, your processes, logistics, and needs all change. BIG-IQ Centralized Management brings all of your devices together, so you can discover, track, upgrade, and deploy more efficiently. You can also monitor key metrics from one location, saving yourself both time and effort.\n\nCentrally manage up to 200 physical, virtual, or virtual clustered multiprocessing (vCMP) based BIG-IP devices. BIG-IQ Centralized Management also handles licensing for up to 5,000 unmanaged devices, so you can spin BIG-IP virtual editions (VEs) up or down as needed.", - "documentation_url": "https://support.f5.com/csp/#/knowledge-center/software/BIG-IQ?module=BIG-IQ%20Centralized%20Management", - "first_port_name": "mgmt", - "images": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", + "filesize": 105705472, + "md5sum": "1bd94c920f8747de671832ef92e8dfbc", + "version": "5.6.1" + }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.4.0/english/v5.4.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.4.0&container=v5.4.0&file=BIG-IQ-5.4.0.0.0.7437.qcow2.zip", - "filename": "BIG-IQ-5.4.0.0.0.7437.qcow2", - "filesize": 3300917248, - "md5sum": "068b1f4d21048b9b2a082c0c27ef4d53", - "version": "5.4.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", + "filesize": 106905600, + "md5sum": "6aa0a185723efcab464aa298b364d12b", + "version": "5.6.0" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.3.0/english/v5.3.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.3.0&container=v5.3.0&file=BIG-IQ-5.3.0.0.0.1119.qcow2.zip", - "filename": "BIG-IQ-5.3.0.0.0.1119.qcow2", - "filesize": 3269263360, - "md5sum": "75f06ba59f858c3828d47dcf8caf3775", - "version": "5.3.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", + "filesize": 88715264, + "md5sum": "69cddb5c3e49bab3dc287353d8600b45", + "version": "5.4.4" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.2.0/english/v5.2.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.2.0&container=v5.2.0&file=BIG-IQ-5.2.0.0.0.5741.qcow2.zip", - "filename": "BIG-IQ-5.2.0.0.0.5741.qcow2", - "filesize": 3256352768, - "md5sum": "c40d9724fb6c15ef0ee949437a9558db", - "version": "5.2.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", + "filesize": 86036480, + "md5sum": "4f9fa1e7dbfa9187a4cb479458144596", + "version": "5.4.3" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.1.0/english/v5.1.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.1.0&container=v5.1.0&file=BIG-IQ-5.1.0.0.0.631.qcow2.zip", - "filename": "BIG-IQ-5.1.0.0.0.631.qcow2", - "filesize": 2335440896, - "md5sum": "f8f52d9ef56c6bdd0a0604f1b50b81c6", - "version": "5.1.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", + "filesize": 85651456, + "md5sum": "c4f7bf355c7483f23edd4f6bf34bc602", + "version": "5.4.2" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.0.0/english/v5.0.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.0.0&container=v5.0.0&file=BIG-IQ-5.0.0.0.0.3026.qcow2.zip", - "filename": "BIG-IQ-5.0.0.0.0.3026.qcow2", - "filesize": 2301820928, - "md5sum": "072194d6eb052ee083cf8cef9e7a87d6", - "version": "5.0.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", + "filesize": 81580032, + "md5sum": "e9bae3fc7195200f659178060968c7c4", + "version": "5.4.1" }, { - "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.0.0/english/v5.0.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.0.0&container=v5.0.0&file=BIG-IQ-5.0.0.0.0.3026.qcow2.zip", - "filename": "BIG-IQ-5.x.DATASTOR.LTM.qcow2", - "filesize": 393216, - "md5sum": "c7f82b8834436eb67b7d619767ac7476", - "version": "5.x" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", + "filesize": 66256896, + "md5sum": "72530309422616a1a1478fa0c78fbb08", + "version": "5.4.0" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", + "filesize": 55238656, + "md5sum": "b9553e0f1cfc875d2121c840a1fafebc", + "version": "5.2.10" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", + "filesize": 55042048, + "md5sum": "e79581adb9ac36913823f0119a1c8da8", + "version": "5.2.9" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", + "filesize": 55361536, + "md5sum": "9a061657c3fdac9e9b631621a100cdc8", + "version": "5.2.8" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAZ_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", + "filesize": 55070720, + "md5sum": "a349f4d9f4f12e8963e3b471357dcbb6", + "version": "5.2.7" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "F5 BIG-IQ CM", - "port_name_format": "1.{port1}", - "product_name": "F5 BIG-IQ CM", - "product_url": "https://f5.com/products/big-iq-centralized-management", + "name": "FortiAnalyzer", + "port_name_format": "Port{port1}", + "product_name": "FortiAnalyzer", + "product_url": "https://www.fortinet.com/products-services/products/management-reporting/fortianalyzer.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 2, + "adapters": 4, "arch": "x86_64", "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", "hdb_disk_interface": "virtio", - "hdd_disk_interface": "virtio", - "kvm": "require", - "options": "-smp 2 -cpu host", - "ram": 4096 + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "symbol": "mgmt_station.svg", - "usage": "Console credentials: root/default\nWebUI credentials: admin/admin\nThe boot process might take a few minutes without providing any output to the console. Please be patient (or set console to vnc to see tty outputs).", - "vendor_name": "F5", - "vendor_url": "http://www.f5.com/", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "hda_disk_image": "BIG-IQ-5.4.0.0.0.7437.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FAZ_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.2" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.0" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.2" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.1" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.0" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.4" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.3" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.2" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.1" + }, + { + "images": { + "hda_disk_image": "FAZ_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, "name": "5.4.0" }, { "images": { - "hda_disk_image": "BIG-IQ-5.3.0.0.0.1119.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FAZ_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "5.3.0" + "name": "5.2.10" }, { "images": { - "hda_disk_image": "BIG-IQ-5.2.0.0.0.5741.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "FAZ_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "5.2.0" + "name": "5.2.9" }, { "images": { - "hda_disk_image": "BIG-IQ-5.1.0.0.0.631.qcow2", - "hdb_disk_image": "empty100G.qcow2", - "hdd_disk_image": "BIG-IQ-5.x.DATASTOR.LTM.qcow2" + "hda_disk_image": "FAZ_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "5.1.0" + "name": "5.2.8" }, { "images": { - "hda_disk_image": "BIG-IQ-5.0.0.0.0.3026.qcow2", - "hdb_disk_image": "empty100G.qcow2", - "hdd_disk_image": "BIG-IQ-5.x.DATASTOR.LTM.qcow2" + "hda_disk_image": "FAZ_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "5.0.0" + "name": "5.2.7" } ] }, { "builtin": true, - "category": "firewall", - "description": "Trend Micro InterScan Messaging Security stops email threats in the cloud with global threat intelligence, protects your data with data loss prevention and encryption, and identifies targeted email attacks,ransomware, and APTs as part of the Trend Micro Network Defense Solution. The hybrid SaaS deployment combines the privacy and control of an on-premises virtual appliance with the proactive protection of a cloud-based pre-filter service. It\u2019s the enterprise-level protection you need with the highest spam and phishing detection rates\u2014consistently #1 in quarterly Opus One competitive tests since 2011.", - "documentation_url": "https://success.trendmicro.com/product-support/interscan-messaging-security", + "category": "router", + "description": "Today\u2019s enterprises face more demands than ever, from cloud computing to 24/7 availability to increasing security threats. NetScaler ADC, an advanced software-defined application delivery controller, is your networking power player. It provides outstanding delivery of business applications\u2014to any device and any location\u2014with unmatched security, superior L4-7 load balancing, reliable GSLB, and 100 percent uptime. In fact, NetScaler ADC offers up to five times the performance of our closest competitor. Plus our TriScale technology saves you money by allowing your network to scale up or down without additional hardware costs.", + "documentation_url": "https://www.citrix.com/products/netscaler-adc/support.html", "images": [ { - "direct_download_url": "http://files.trendmicro.com/products/imsva/9.1/IMSVA-9.1-1600-x86_64-r1.iso", - "download_url": "http://downloadcenter.trendmicro.com/index.php?regs=NABU&clk=latest&clkval=4913&lang_loc=1", - "filename": "IMSVA-9.1-1600-x86-64-r1.iso", - "filesize": 797560832, - "md5sum": "581278e8ddb25486539dfe3ad0b3ac94", - "version": "9.1" + "download_url": "https://www.citrix.com/lp/try/netscaler-vpx-express.html", + "filename": "NSVPX-KVM-12.0-56.20_nc_32.qcow2", + "filesize": 739704832, + "md5sum": "0ea1c23e3b8eb8451037d46ee472cfa6", + "version": "12.0-56.20" }, { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty200G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty200G.qcow2", - "filesize": 200192, - "md5sum": "d1686d2f25695dee32eab9a6f4652c7c", - "version": "1.0" + "download_url": "https://www.citrix.com/downloads/netscaler-adc/virtual-appliances/netscaler-vpx-express.html", + "filename": "NSVPX-KVM-11.1-47.14_nc.raw", + "filesize": 21474836480, + "md5sum": "f7100f8b6588e152ce6f64e45b1e99fc", + "version": "11.1-47.14 F" + }, + { + "download_url": "https://www.citrix.com/downloads/netscaler-adc/virtual-appliances/netscaler-vpx-express.html", + "filename": "NSVPX-KVM-10.5-56.22_nc.raw", + "filesize": 21474836480, + "md5sum": "b7569f09d4c348c5cf825627169131e7", + "version": "10.5-56.22" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "IMS VA", - "port_name_format": "eth{0}", - "product_name": "IMS VA", - "product_url": "http://www.trendmicro.com/enterprise/network-security/interscan-message-security/index.html", + "name": "NetScaler VPX", + "port_name_format": "1/{0}", + "product_name": "NetScaler VPX", + "product_url": "https://www.citrix.com/products/netscaler-adc/", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 2, + "adapters": 4, "arch": "x86_64", "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "virtio", + "console_type": "telnet", + "hda_disk_interface": "ide", "kvm": "require", - "ram": 4096 + "options": "-smp 2 -cpu host", + "ram": 2048 }, "registry_version": 3, "status": "stable", - "usage": "Default credentials: admin / imsva", - "vendor_name": "Trend Micro Inc.", - "vendor_url": "http://www.trendmicro.com/", + "symbol": "loadbalancer.svg", + "usage": "The image file is large (21.5 GB), make sure you have enough space. Default credentials: nsroot / nsroot", + "vendor_name": "Citrix", + "vendor_url": "http://www.citrix.com/", "versions": [ { "images": { - "cdrom_image": "IMSVA-9.1-1600-x86-64-r1.iso", - "hda_disk_image": "empty200G.qcow2" + "hda_disk_image": "NSVPX-KVM-12.0-56.20_nc_32.qcow2" }, - "name": "9.1" + "name": "12.0-56.20" + }, + { + "images": { + "hda_disk_image": "NSVPX-KVM-11.1-47.14_nc.raw" + }, + "name": "11.1-47.14 F" + }, + { + "images": { + "hda_disk_image": "NSVPX-KVM-10.5-56.22_nc.raw" + }, + "name": "10.5-56.22" } ] }, { "builtin": true, - "category": "firewall", - "description": "The Brocade Virtual ADX (vADX\u2122) is a full-fledged Application Delivery Controller (ADC) platform with a virtual footprint that leverages Intel advanced technology to deliver remarkable performance. The software is designed to run on standardsbased hypervisors, hosted on Intel x86 COTS hardware. It offers a complete suite of Layer 4 and Layer 7 server load balancing capabilities and application security services with extensible management via rich SOAP/XML APIs.", - "first_port_name": "mgmt1", + "category": "router", + "description": "The BIRD project aims to develop a fully functional dynamic IP routing daemon primarily targeted on (but not limited to) Linux, FreeBSD and other UNIX-like systems and distributed under the GNU General Public License.", + "documentation_url": "http://bird.network.cz/?get_doc&f=bird.html", "images": [ { - "download_url": "http://www1.brocade.com/forms/jsp/virtual-adx-download/index.jsp", - "filename": "SSR03100KVM.qcow2", - "filesize": 3327066112, - "md5sum": "40e5717463fb2f5d1bb7c4de7df15c5c", - "version": "03100" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/bird-tinycore64-1.5.0.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "bird-tinycore64-1.5.0.img", + "filesize": 22413312, + "md5sum": "08d50ba2b1b262e2e03e4babf90abf69", + "version": "1.5.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Brocade Virtual ADX", - "port_name_format": "Port {port1}", - "product_name": "Virtual ADX", + "name": "BIRD", + "product_name": "BIRD internet routing daemon", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 8, + "adapter_type": "e1000", + "adapters": 4, "arch": "x86_64", - "console_type": "vnc", - "kvm": "require", - "options": "-smp 2", - "ram": 2048 + "console_type": "telnet", + "kvm": "allow", + "ram": 128 }, "registry_version": 3, - "status": "experimental", - "usage": "Login is root, type vadx-console to access to the console", - "vendor_name": "Brocade", - "vendor_url": "https://www.brocade.com", + "status": "stable", + "usage": "Configure interfaces in /opt/bootlocal.sh, BIRD configuration is done in /usr/local/etc/bird", + "vendor_name": "CZ.NIC Labs", + "vendor_url": "http://bird.network.cz/", "versions": [ { "images": { - "hda_disk_image": "SSR03100KVM.qcow2" + "hda_disk_image": "bird-tinycore64-1.5.0.img" }, - "name": "03100" + "name": "1.5.0" } ] }, { "builtin": true, - "category": "router", - "description": "Cisco 2600 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "chassis": "2610", - "nvram": 128, - "platform": "c2600", - "ram": 160, - "startup_config": "ios_base_startup-config.txt" - }, + "category": "guest", + "description": "Over 200,000 IT staff across medium to large enterprises worldwide are currently using OP5 Monitor as their preferred network monitoring software.\nOP5 Monitor allows you to take control of your IT, enabling your network to be more responsive, more reliable and even faster than ever before. With unparalleled scalability, OP5 Monitor grows as your company grows, so you\u2019ll understand why we say this is the last network monitor you\u2019ll ever need to purchase.", + "documentation_url": "https://kb.op5.com/display/MAN/Documentation+Home#sthash.pohb5bis.dpbs", "images": [ { - "filename": "c2600-adventerprisek9-mz.124-15.T14.image", - "filesize": 87256400, - "md5sum": "483e3a579a5144ec23f2f160d4b0c0e2", - "version": "124-15.T14" + "download_url": "https://www.op5.com/download/", + "filename": "op5-Monitor-Virtual-Appliance-7.3.15.x86_64.vmdk", + "filesize": 779687424, + "md5sum": "634acc6266237d99bf1bfbcf9284beca", + "version": "7.3.15" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco 2600", - "product_name": "2600", + "name": "OP5 Monitor", + "port_name_format": "eth{0}", + "product_name": "OP5 Monitor", + "product_url": "https://www.op5.com/op5-monitor/", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 2, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "vnc", + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 1024 + }, "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ - { - "idlepc": "0x8027ec88", + "status": "stable", + "symbol": "mgmt_station.svg", + "usage": "Interface eth0 is set to DHCP. Default credentials:\n- CLI: root / monitor\n- Web access: admin / monitor\n- Logserver Extension: admin / admin", + "vendor_name": "OP5", + "vendor_url": "https://www.op5.com/", + "versions": [ + { "images": { - "image": "c2600-adventerprisek9-mz.124-15.T14.image" + "hda_disk_image": "op5-Monitor-Virtual-Appliance-7.3.15.x86_64.vmdk" }, - "name": "124-15.T14" + "name": "7.3.15" } ] }, { "builtin": true, - "category": "multilayer_switch", - "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.", - "documentation_url": "https://www.arista.com/assets/data/docs/Manuals/EOS-4.17.2F-Manual.pdf", - "first_port_name": "Management1", + "category": "guest", + "description": "DEFT (acronym for Digital Evidence & Forensics Toolkit) is a distribution made for Computer Forensics, with the purpose of running live on systems without tampering or corrupting devices (hard disks, pendrives, etc\u2026) connected to the PC where the boot process takes place.\nThe DEFT system is based on GNU Linux, it can run live (via DVDROM or USB pendrive), installed or run as a Virtual Appliance on VMware or Virtualbox. DEFT employs LXDE as desktop environment and WINE for executing Windows tools under Linux. It features a comfortable mount manager for device management.\nDEFT is paired with DART (acronym for Digital Advanced Response Toolkit), a Forensics System which can be run on Windows and contains the best tools for Forensics and Incident Response. DART features a GUI with logging and integrity check for the instruments here contained.\nBesides all this, the DEFT staff is devoted to implementing and developing applications which are released to Law Enforcement Officers, such as Autopsy 3 for Linux.", + "documentation_url": "http://www.deftlinux.net/deft-manual/", "images": [ { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.20.1F.vmdk", - "filesize": 662044672, - "md5sum": "aadb6f3dbff28317f68cb4c4502d0db8", - "version": "4.20.1F" - }, - { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.18.5M.vmdk", - "filesize": 623116288, - "md5sum": "b1ee6268dbaf2b2276fd7a5286c7ce2b", - "version": "4.18.5M" - }, - { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.18.1F.vmdk", - "filesize": 620625920, - "md5sum": "9648c63185f3b793b47528a858ca4364", - "version": "4.18.1F" - }, - { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.17.2F.vmdk", - "filesize": 609615872, - "md5sum": "3b4845edfa77cf9aaeb9c0a005d3e277", - "version": "4.17.2F" - }, - { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.16.6M.vmdk", - "filesize": 519962624, - "md5sum": "b3f7b7cee17f2e66bb38b453a4939fef", - "version": "4.16.6M" - }, - { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.15.5M.vmdk", - "filesize": 516030464, - "md5sum": "cd74bb69c7ee905ac3d33c4d109f3ab7", - "version": "4.15.5M" + "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.2.iso", + "download_url": "http://www.deftlinux.net/download/", + "filename": "deft-8.2.iso", + "filesize": 3317876736, + "md5sum": "8a70f61507251355153cbe94809323dd", + "version": "8.2" }, { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.14.14M.vmdk", - "filesize": 422641664, - "md5sum": "d81ba0522f4d7838d96f7985e41cdc47", - "version": "4.14.14M" + "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.1.iso", + "download_url": "http://www.deftlinux.net/download/", + "filename": "deft-8.1.iso", + "filesize": 3267639296, + "md5sum": "76bad80c7ea1552c9bd97bcca5de8d50", + "version": "8.1" }, { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.13.16M.vmdk", - "filesize": 404684800, - "md5sum": "5763b2c043830c341c8b1009f4ea9a49", - "version": "4.13.16M" + "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.0.iso", + "download_url": "http://www.deftlinux.net/download/", + "filename": "deft-8.0.iso", + "filesize": 2898477056, + "md5sum": "fcedb54176de7a3018adfa7571a3a626", + "version": "8.0" }, { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "vEOS-lab-4.13.8M.vmdk", - "filesize": 409010176, - "md5sum": "a47145b9e6e7a24171c0850f8755535e", - "version": "4.13.8M" + "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-7.2.iso", + "download_url": "http://www.deftlinux.net/download/", + "filename": "deft-7.2.iso", + "filesize": 2695090176, + "md5sum": "1ea8ec6a2d333d0f0a64656bdf595a28", + "version": "7.2" }, { - "download_url": "https://www.arista.com/en/support/software-download", - "filename": "Aboot-veos-serial-8.0.0.iso", - "filesize": 5242880, - "md5sum": "488ad1c435d18c69bb8d69c7806457c9", - "version": "8.0.0" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Arista vEOS", - "port_name_format": "Ethernet{port1}", - "product_name": "vEOS", - "product_url": "https://eos.arista.com/", + "name": "DEFT Linux", + "product_name": "DEFT Linux", "qemu": { "adapter_type": "e1000", - "adapters": 13, + "adapters": 1, "arch": "x86_64", - "console_type": "telnet", + "console_type": "vnc", + "hda_disk_interface": "virtio", "kvm": "require", "ram": 2048 }, "registry_version": 3, - "status": "experimental", - "symbol": ":/symbols/multilayer_switch.svg", - "usage": "The login is admin, with no password by default", - "vendor_name": "Arista", - "vendor_url": "http://www.arista.com/", + "status": "stable", + "usage": "You can run the LiveCD or install to the local disk. Default root password: deft", + "vendor_name": "DEFT Association", + "vendor_url": "http://www.deftlinux.net/", "versions": [ { "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.20.1F.vmdk" - }, - "name": "4.20.1F" - }, - { - "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.18.5M.vmdk" - }, - "name": "4.18.5M" - }, - { - "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.18.1F.vmdk" - }, - "name": "4.18.1F" - }, - { - "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.17.2F.vmdk" + "cdrom_image": "deft-8.2.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "4.17.2F" + "name": "8.2" }, { "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.16.6M.vmdk" + "cdrom_image": "deft-8.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "4.16.6M" + "name": "8.1" }, { "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.15.5M.vmdk" + "cdrom_image": "deft-8.0.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "4.15.5M" + "name": "8.0" }, { "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.14.14M.vmdk" + "cdrom_image": "deft-7.2.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "4.14.14M" - }, + "name": "7.2" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "NETem emulates a network link, typically a WAN link. It supports bandwidth limitation, delay, jitter and packet loss. All this functionality is already build in the linux kernel, NETem is just a menu system to make the configuration user-friendly.", + "documentation_url": "http://www.cs.unm.edu/~crandall/netsfall13/TCtutorial.pdf", + "images": [ { - "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.13.16M.vmdk" - }, - "name": "4.13.16M" - }, + "direct_download_url": "http://bernhard-ehlers.de/projects/netem/NETem-v4.qcow2", + "download_url": "http://bernhard-ehlers.de/projects/netem/index.html", + "filename": "NETem-v4.qcow2", + "filesize": 26476544, + "md5sum": "e678698c97804901c7a53f6b68c8b861", + "version": "0.4" + } + ], + "maintainer": "Bernhard Ehlers", + "maintainer_email": "be@bernhard-ehlers.de", + "name": "NETem", + "port_name_format": "eth{0}", + "product_name": "netem", + "qemu": { + "adapter_type": "e1000", + "adapters": 2, + "arch": "i386", + "console_type": "telnet", + "kvm": "allow", + "options": "-nographic", + "ram": 96 + }, + "registry_version": 3, + "status": "experimental", + "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.", + "vendor_name": "Linux", + "vendor_url": "http://www.linuxfoundation.org/", + "versions": [ { "images": { - "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", - "hdb_disk_image": "vEOS-lab-4.13.8M.vmdk" + "hda_disk_image": "NETem-v4.qcow2" }, - "name": "4.13.8M" + "name": "0.4" } ] }, { "builtin": true, - "category": "firewall", - "description": "The Adaptive Security Virtual Appliance is a virtualized network security solution based on the market-leading Cisco ASA 5500-X Series firewalls. It supports both traditional and next-generation software-defined network (SDN) and Cisco Application Centric Infrastructure (ACI) environments to provide policy enforcement and threat inspection across heterogeneous multisite environments.", - "documentation_url": "http://www.cisco.com/c/en/us/support/security/virtual-adaptive-security-appliance-firewall/products-installation-guides-list.html", - "first_port_name": "Management0/0", + "category": "guest", + "description": "The term 'Ubuntu Cloud Guest' refers to the Official Ubuntu images that are available at http://cloud-images.ubuntu.com . These images are built by Canonical. They are then registered on EC2, and compressed tarfiles are made also available for download. For using those images on a public cloud such as Amazon EC2, you simply choose an image and launch it. To use those images on a private cloud, or to run the image on a local hypervisor (such as KVM) you would need to download those images and either publish them to your private cloud, or launch them directly on a hypervisor. The following sections explain in more details how to perform each of those actions", + "documentation_url": "https://help.ubuntu.com/community/UEC/Images", "images": [ { - "download_url": "https://software.cisco.com/download/home/286119613/type/280775065/release/9.8.3", - "filename": "asav983.qcow2", - "filesize": 199491584, - "md5sum": "f9cf40b2d555a1bea6d36bc83f06ea33", - "version": "9.8.3" - }, - { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav981-5.qcow2", - "filesize": 193069056, - "md5sum": "77b3ca856dd2df476bcda34e218425ca", - "version": "9.8.1-5" + "download_url": "https://cloud-images.ubuntu.com/releases/18.04/release-20180426.2/ubuntu-18.04-server-cloudimg-amd64.img", + "filename": "ubuntu-18.04-server-cloudimg-amd64.img", + "filesize": 336134144, + "md5sum": "f4134e7fa16d7fa766c7467cbe25c949", + "version": "18.04" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&flowid=50242&softwareid=280775065&release=9.8.1&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "asav981.qcow2", - "filesize": 193069056, - "md5sum": "8d3612fe22b1a7dec118010e17e29411", - "version": "9.8.1" + "download_url": "https://cloud-images.ubuntu.com/releases/17.10/release-20180404/ubuntu-17.10-server-cloudimg-amd64.img", + "filename": "ubuntu-17.10-server-cloudimg-amd64.img", + "filesize": 320405504, + "md5sum": "331b44f2b05858c251b3ea92c8b65152", + "version": "17.10" }, { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav971-8.qcow2", - "filesize": 197066752, - "md5sum": "b2486c8d0f6fda149ce877208b816818", - "version": "9.7.1-8" - }, - { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav971-4.qcow2", - "filesize": 197066752, - "md5sum": "f9a671d1ceaf983f7241f19df15e787f", - "version": "9.7.1-4" - }, - { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav971-2.qcow2", - "filesize": 199753728, - "md5sum": "ff036b23f5dbb2bcf1e6530476cc1989", - "version": "9.7.1-2" - }, - { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "asav971.qcow2", - "filesize": 198443008, - "md5sum": "07eef9b8ca489a8ad37448fadf45a673", - "version": "9.7.1" - }, - { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav963-8.qcow2", - "filesize": 168427520, - "md5sum": "8b8a45b94a302dae8076e7ec90c7d4c2", - "version": "9.6.3-8" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&flowid=50242&softwareid=280775065&release=9.6.3&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "asav963-1.qcow2", - "filesize": 172294144, - "md5sum": "d6a5c8d7bff5e69c5987ca664a52dbd8", - "version": "9.6.3-1" + "download_url": "https://cloud-images.ubuntu.com/releases/16.04/release-20180405/ubuntu-16.04-server-cloudimg-amd64-disk1.img", + "filename": "ubuntu-16.04-server-cloudimg-amd64-disk1.img", + "filesize": 290193408, + "md5sum": "22c124ba65ea096cdef8b0a197dd613a", + "version": "16.04" }, { - "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", - "filename": "asav962-13.qcow2", - "filesize": 177668096, - "md5sum": "2a6bec030fcaef31b611051180cc142c", - "version": "9.6.2-13" + "download_url": "https://cloud-images.ubuntu.com/releases/14.04/release-20180404/ubuntu-14.04-server-cloudimg-amd64-disk1.img", + "filename": "ubuntu-14.04-server-cloudimg-amd64-disk1.img", + "filesize": 262668800, + "md5sum": "d11b89321d41d0eeddcacf73bf0d2262", + "version": "14.04" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "asav962.qcow2", - "filesize": 177274880, - "md5sum": "dfb8110ce38da4588e994865d5a9656a", - "version": "9.6.2" + "download_url": "https://github.com/asenci/gns3-ubuntu-cloud-init-data/raw/master/ubuntu-cloud-init-data.iso", + "filename": "ubuntu-cloud-init-data.iso", + "filesize": 131072, + "md5sum": "328469100156ae8dbf262daa319c27ff", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco ASAv", - "port_name_format": "Gi0/{0}", - "product_name": "ASAv", - "product_url": "http://www.cisco.com/c/en/us/products/security/virtual-adaptive-security-appliance-firewall/index.html", + "name": "Ubuntu Cloud Guest", + "port_name_format": "Ethernet{0}", + "product_name": "Ubuntu Cloud Guest", + "product_url": "https://www.ubuntu.com/cloud", "qemu": { - "adapter_type": "e1000", - "adapters": 8, + "adapter_type": "virtio-net-pci", + "adapters": 1, "arch": "x86_64", - "console_type": "vnc", + "boot_priority": "c", + "console_type": "telnet", "hda_disk_interface": "virtio", "kvm": "require", - "ram": 2048 + "options": "-nographic", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "symbol": ":/symbols/asa.svg", - "usage": "There is no default password and enable password. A default configuration is present. ASAv goes through a double-boot before becoming active. This is normal and expected.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "usage": "Username: ubuntu\nPassword: ubuntu", + "vendor_name": "Canonical Inc.", + "vendor_url": "https://www.ubuntu.com", "versions": [ { "images": { - "hda_disk_image": "asav983.qcow2" - }, - "name": "9.8.3" - }, - { - "images": { - "hda_disk_image": "asav981-5.qcow2" - }, - "name": "9.8.1-5" - }, - { - "images": { - "hda_disk_image": "asav981.qcow2" - }, - "name": "9.8.1" - }, - { - "images": { - "hda_disk_image": "asav971-8.qcow2" - }, - "name": "9.7.1-8" - }, - { - "images": { - "hda_disk_image": "asav971-4.qcow2" - }, - "name": "9.7.1-4" - }, - { - "images": { - "hda_disk_image": "asav971-2.qcow2" - }, - "name": "9.7.1-2" - }, - { - "images": { - "hda_disk_image": "asav971.qcow2" - }, - "name": "9.7.1" - }, - { - "images": { - "hda_disk_image": "asav963-8.qcow2" + "cdrom_image": "ubuntu-cloud-init-data.iso", + "hda_disk_image": "ubuntu-18.04-server-cloudimg-amd64.img" }, - "name": "9.6.3-8" + "name": "18.04 (LTS)" }, { "images": { - "hda_disk_image": "asav963-1.qcow2" + "cdrom_image": "ubuntu-cloud-init-data.iso", + "hda_disk_image": "ubuntu-17.10-server-cloudimg-amd64.img" }, - "name": "9.6.3-1" + "name": "17.10" }, { "images": { - "hda_disk_image": "asav962-13.qcow2" + "cdrom_image": "ubuntu-cloud-init-data.iso", + "hda_disk_image": "ubuntu-16.04-server-cloudimg-amd64-disk1.img" }, - "name": "9.6.2-13" + "name": "16.04 (LTS)" }, { "images": { - "hda_disk_image": "asav962.qcow2" + "cdrom_image": "ubuntu-cloud-init-data.iso", + "hda_disk_image": "ubuntu-14.04-server-cloudimg-amd64-disk1.img" }, - "name": "9.6.2" + "name": "14.04 (LTS)" } ] }, { "builtin": true, "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\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.", - "documentation_url": "http://www.cisco.com/c/en/us/support/routers/cloud-services-router-1000v-series/products-installation-and-configuration-guides-list.html", + "description": "IOS XRv 9000 (aka Sunstone) is the 1st VM released running the 64-bit IOS XR operating system as used on the NCS-6xxx platform. This appliance requires 4 vCPUs and 16GB of memory to run!", + "documentation_url": "http://www.cisco.com/c/en/us/td/docs/ios_xr_sw/ios_xrv/release/notes/xrv-rn.html", + "first_port_name": "MgmtEth0/0/CPU0/0", "images": [ { - "download_url": "https://software.cisco.com/download/home/284364978/type/282046477", - "filename": "csr1000v-universalk9.16.08.01a-serial.qcow2", - "filesize": 890044416, - "md5sum": "91e2572f20c77606d710223511cd279a", - "version": "16.8.1a" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Fuji-16.7.1", - "filename": "csr1000v-universalk9.16.07.01-serial.qcow2", - "filesize": 884539392, - "md5sum": "bad9000d4ae8317bbc99a34a8cdd2eb4", - "version": "16.7.1" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.6.2", - "filename": "csr1000v-universalk9.16.06.02-serial.qcow2", - "filesize": 1570242560, - "md5sum": "11e393b31ab9d1ace8e5f7551c491ba2", - "version": "16.6.2" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.6.1", - "filename": "csr1000v-universalk9.16.06.01-serial.qcow2", - "filesize": 1566179328, - "md5sum": "909e74446d3ff0b82c14327c0058fdc2", - "version": "16.6.1" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.5.2", - "filename": "csr1000v-universalk9.16.05.02-serial.qcow2", - "filesize": 1322385408, - "md5sum": "59a84da28d59ee75176aa05ecde7f72a", - "version": "16.5.2" + "download_url": "https://software.cisco.com/download/home/286288939/type/280805694/release/6.5.1", + "filename": "xrv9k-fullk9-x-6.5.1.qcow2", + "filesize": 1208811520, + "md5sum": "730868e7cd46de9aa2e950899c7f9498", + "version": "6.5.1" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "csr1000v-universalk9.16.5.1b-serial.qcow2", - "filesize": 1209543680, - "md5sum": "ac11d33041b8ff6dc3553e324d02cccb", - "version": "16.5.1b" + "download_url": "https://software.cisco.com/download/home/286288939/type/280805694/release/6.4.2", + "filename": "xrv9k-fullk9-x-6.4.2.qcow2", + "filesize": 1311703040, + "md5sum": "6958763192c7bb59a1b8049d377de1b4", + "version": "6.4.2" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "csr1000v-universalk9.03.17.00.S.156-1.S-ext.qcow2", - "filesize": 1346305024, - "md5sum": "06cbfcd11f3557391db64fe2a6015a6e", - "version": "3.17" + "download_url": "https://software.cisco.com/download/home/286288939/type/280805694/release/6.4.1", + "filename": "xrv9k-fullk9-x-6.4.1.qcow2", + "filesize": 1304887296, + "md5sum": "9c56b684e307706005a503e289cb9317", + "version": "6.4.1" }, { "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "csr1000v-universalk9.16.3.1-build2.qcow2", - "filesize": 1280835584, - "md5sum": "a770e96de928265515304c9c9d6b46b9", - "version": "16.3.1-build2" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&softwareid=282046477&release=Denali-16.3.1", - "filename": "csr1000v-universalk9.16.03.01.qcow2", - "filesize": 1351352320, - "md5sum": "0a7f3a4b93d425c2dcb2df5505816fa5", - "version": "16.3.1" + "filename": "xrv9k-fullk9-x-6.2.25.qcow2", + "filesize": 1190723584, + "md5sum": "3f54e62b6f7cedfb2607233e5e465766", + "version": "6.2.25" }, { "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "csr1000v-universalk9.16.03.02.qcow2", - "filesize": 1167720448, - "md5sum": "2e5803d23cd52cba5d55fa8306be5f13", - "version": "16.3.2" + "filename": "xrv9k-fullk9-x.qcow2-6.0.1", + "filesize": 2109210624, + "md5sum": "e20d046807075046c35b6ce7d6766a7f", + "version": "6.0.1" }, { "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "csr1000v-universalk9.16.4.1.qcow2", - "filesize": 1261961216, - "md5sum": "3428e0dcf5132a1b11ab7696d8c61b2e", - "version": "16.4.1" + "filename": "xrv9k-fullk9-x.qcow2-6.0.0", + "filesize": 2572943360, + "md5sum": "64c538c34252aaeb4ed1ddb93d6803fd", + "version": "6.0.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco CSR1000v", - "port_name_format": "Gi{port1}", - "product_name": "CSR1000v", - "product_url": "http://www.cisco.com/c/en/us/support/routers/cloud-services-router-1000v-series/tsd-products-support-series-home.html", + "name": "Cisco IOS XRv 9000", + "port_name_format": "GigabitEthernet0/0/0/{0}", + "product_name": "IOS XRv 9000", + "product_url": "http://virl.cisco.com/", "qemu": { - "adapter_type": "vmxnet3", - "adapters": 4, + "adapter_type": "virtio-net-pci", + "adapters": 7, "arch": "x86_64", "console_type": "telnet", "kvm": "require", - "ram": 3072 + "options": "-smp 4 -cpu host", + "ram": 16384 }, "registry_version": 3, - "status": "stable", - "usage": "There is no default password and enable password. A default configuration is present.", + "status": "experimental", + "usage": "Default username/password: admin/admin, cisco/cisco and lab/lab. There is no default configuration present. Interfaces may take several minutes to be usable after appliance boot.", "vendor_name": "Cisco", "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "csr1000v-universalk9.16.08.01a-serial.qcow2" + "hda_disk_image": "xrv9k-fullk9-x-6.5.1.qcow2" }, - "name": "16.8.1a" + "name": "6.5.1" }, { "images": { - "hda_disk_image": "csr1000v-universalk9.16.07.01-serial.qcow2" + "hda_disk_image": "xrv9k-fullk9-x-6.4.2.qcow2" }, - "name": "16.7.1" + "name": "6.4.2" }, { "images": { - "hda_disk_image": "csr1000v-universalk9.16.06.02-serial.qcow2" + "hda_disk_image": "xrv9k-fullk9-x-6.4.1.qcow2" }, - "name": "16.6.2" + "name": "6.4.1" }, { "images": { - "hda_disk_image": "csr1000v-universalk9.16.06.01-serial.qcow2" - }, - "name": "16.6.1" - }, - { - "images": { - "hda_disk_image": "csr1000v-universalk9.16.05.02-serial.qcow2" + "hda_disk_image": "xrv9k-fullk9-x-6.2.25.qcow2" }, - "name": "16.5.2" + "name": "6.2.25" }, { "images": { - "hda_disk_image": "csr1000v-universalk9.16.5.1b-serial.qcow2" + "hda_disk_image": "xrv9k-fullk9-x.qcow2-6.0.1" }, - "name": "16.5.1b" + "name": "6.0.1" }, { "images": { - "hda_disk_image": "csr1000v-universalk9.03.17.00.S.156-1.S-ext.qcow2" + "hda_disk_image": "xrv9k-fullk9-x.qcow2-6.0.0" }, - "name": "3.17" - }, + "name": "6.0.0" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "Junos Space Network Management Platform works with Juniper's management applications to simplify and automate management of Juniper's switching, routing, and security devices. As part of a complete solution, the platform provides broad fault, configuration, accounting, performance, and security management (FCAPS) capability, same day support for new devices and Junos OS releases, a task-specific user interface, and northbound APIs for integration with existing network management systems (NMS) or operations/business support systems (OSS/BSS).\n\nThe platform helps network operators at enterprises and service providers scale operations, reduce complexity, and enable new applications and services to be brought to market quickly, through multilayered network abstractions, operator-centric automation schemes, and a simple point-and-click UI.", + "documentation_url": "http://www.juniper.net/techpubs/", + "images": [ { - "images": { - "hda_disk_image": "csr1000v-universalk9.16.03.01.qcow2" - }, - "name": "16.3.1" - }, + "download_url": "https://www.juniper.net/support/downloads/?p=space#sw", + "filename": "space-17.2R1.4.qcow2", + "filesize": 5150474240, + "md5sum": "4124fa756c3a78be0619e876b8ee687e", + "version": "17.2R1.4" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Junos Space", + "port_name_format": "em{0}", + "product_name": "Junos Space", + "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "qemu": { + "adapter_type": "e1000", + "adapters": 4, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "options": "-smp 4 -nographic", + "ram": 16384 + }, + "registry_version": 3, + "status": "stable", + "symbol": "juniper-vqfx.svg", + "usage": "16 GB RAM is the bare minimum; you should use 32/64 GB in production deplyments.\nDefault credentials:\n- CLI: admin / abc123\n- WebUI: super / juniper123", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", + "versions": [ { "images": { - "hda_disk_image": "csr1000v-universalk9.16.3.1-build2.qcow2" + "hda_disk_image": "space-17.2R1.4.qcow2" }, - "name": "16.3.1-build2" - }, + "name": "17.2R1.4" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Cisco 2600 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "chassis": "2610", + "nvram": 128, + "platform": "c2600", + "ram": 160, + "startup_config": "ios_base_startup-config.txt" + }, + "images": [ { - "images": { - "hda_disk_image": "csr1000v-universalk9.16.03.02.qcow2" - }, - "name": "16.3.2" - }, + "filename": "c2600-adventerprisek9-mz.124-15.T14.image", + "filesize": 87256400, + "md5sum": "483e3a579a5144ec23f2f160d4b0c0e2", + "version": "124-15.T14" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco 2600", + "product_name": "2600", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { + "idlepc": "0x8027ec88", "images": { - "hda_disk_image": "csr1000v-universalk9.16.4.1.qcow2" + "image": "c2600-adventerprisek9-mz.124-15.T14.image" }, - "name": "16.4.1" + "name": "124-15.T14" } ] }, { "builtin": true, - "category": "guest", - "description": "Breaches to network security continue to occur across all industry verticals, even to the most respected brands. The time it takes to discover, isolate, and remediate the incident continues to be measured in hundreds of days-having material impacts on security and compliance standards. It is no wonder that many organizations are struggling. As recent surveys have shown, enterprises have an average of 32 different vendors' devices in their network, with no automated ability to cross-correlate the data that each is collecting. It is also easy to see why organizations are strapped for the cyber security personnel they need to manage all the data in these complex environments.\n\nFrom its inception, FortiSIEM was built to reduce complexity in managing network and security operations. FortiSIEM provides organizations of all sizes with a comprehensive, holistic, and scalable solution for managing security, performance, and compliance from IoT to the cloud.", - "documentation_url": "http://docs.fortinet.com/fortisiem/admin-guides", + "category": "firewall", + "description": "Protect your network from viruses, malware and malicious activity with Kerio Control, the easy-to-administer yet powerful all-in-one security solution.\nKerio Control brings together next-generation firewall capabilities - including a network firewall and router, intrusion detection and prevention (IPS), gateway anti-virus, VPN, and web content and application filtering. These comprehensive capabilities and unmatched deployment flexibility make Kerio Control the ideal choice for small and mid-sized businesses.", + "documentation_url": "http://kb.kerio.com/product/kerio-control/", "images": [ { - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html", - "filename": "FortiSIEM-VA-5.0.0.1201.qcow2", - "filesize": 10029432832, - "md5sum": "1f2f0b1d84e89495fc5b5ca722cb5710", - "version": "5.0.0" - }, - { - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html", - "filename": "FortiSIEM-VA-5.0.0.1201-1.qcow2", - "filesize": 46858240, - "md5sum": "88e96259f44a82b7c545b82925880513", - "version": "5.0.0" - }, - { - "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/latestrelease.html", - "filename": "FortiSIEM-VA-5.0.0.1201-2.qcow2", - "filesize": 46858240, - "md5sum": "58d61498e1adc1df062fc12113d42d86", - "version": "5.0.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.7-2921/kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk", + "filesize": 191135232, + "md5sum": "d286a240be53f8dd9da5f80deb9086b0", + "version": "9.2.7" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.10.0.1102.qcow2", - "filesize": 8622505984, - "md5sum": "636d94c78ea02e5a39eadb9d44210dfb", - "version": "4.10.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.5-2641/kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk", + "filesize": 190706688, + "md5sum": "fbb2824eb91ca2502c952c2e9c4e635d", + "version": "9.2.5p5" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.10.0.1102-1.qcow2", - "filesize": 46858240, - "md5sum": "52fee02e94fd220275b613a4ec5b46eb", - "version": "4.10.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.4-2223/kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk", + "filesize": 191687168, + "md5sum": "20970f3638c7ca5603c2afbe56e89421", + "version": "9.2.4" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.10.0.1102-2.qcow2", - "filesize": 46858240, - "md5sum": "088a34864e30abdb95385b089574baba", - "version": "4.10.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.3-2219/kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk", + "filesize": 191716352, + "md5sum": "767d5b25bdca2b45c2ba269189ea9bd0", + "version": "9.2.3" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.9.0.1041.qcow2", - "filesize": 8484487168, - "md5sum": "c2db828b6985297b33833f376c5106b0", - "version": "4.9.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.2-2172/kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk", + "filesize": 190841856, + "md5sum": "4efeacbc39db1b3e53ef96af1338cf52", + "version": "9.2.2" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.9.0.1041-1.qcow2", - "filesize": 46858240, - "md5sum": "b3f0cd44995f37648aa429303eeeb455", - "version": "4.9.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.1-2019/kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk", + "filesize": 254364160, + "md5sum": "0405890e323e29a4808ec288600875ba", + "version": "9.2.1" }, { - "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", - "filename": "FortiSIEM-VA-KVM-4.9.0.1041-2.qcow2", - "filesize": 46858240, - "md5sum": "70a8abb4253d5bb724ded3b33a8385c4", - "version": "4.9.0" + "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.1.4-1535/kerio-control-appliance-9.1.4-1535-vmware.vmdk", + "download_url": "http://www.kerio.com/support/kerio-control", + "filename": "kerio-control-appliance-9.1.4-1535-vmware.vmdk", + "filesize": 483459072, + "md5sum": "5ea5a7f103b1f008d4c24444400333ec", + "version": "9.1.4" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiSIEM", - "port_name_format": "Port{port1}", - "product_name": "FortiSIEM", - "product_url": "https://www.fortinet.com/products/siem/fortisiem.html", + "name": "Kerio Control", + "port_name_format": "eth{0}", + "product_name": "Kerio Control", + "product_url": "http://www.kerio.com/products/kerio-control", "qemu": { - "adapter_type": "virtio-net-pci", + "adapter_type": "e1000", "adapters": 2, "arch": "x86_64", "boot_priority": "c", - "console_type": "telnet", + "console_type": "vnc", "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "hdc_disk_interface": "virtio", "kvm": "require", - "options": "-smp 4", - "ram": 16384 + "ram": 4096 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "This is the Super/Worker component. Default credentials:\n- admin / admin*1\n - root / ProspectHills\n\nIf you get a 503 error on the WebUI, run /opt/phoenix/deployment/jumpbox/phinitsuper as root.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "vendor_name": "Kerio Technologies Inc.", + "vendor_url": "http://www.kerio.com", "versions": [ { "images": { - "hda_disk_image": "FortiSIEM-VA-5.0.0.1201.qcow2", - "hdb_disk_image": "FortiSIEM-VA-5.0.0.1201-1.qcow2", - "hdc_disk_image": "FortiSIEM-VA-5.0.0.1201-2.qcow2" + "hda_disk_image": "kerio-control-appliance-9.2.7-2921-vmware-disk1.vmdk" }, - "name": "5.0.0" + "name": "9.2.7" }, { "images": { - "hda_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102.qcow2", - "hdb_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102-1.qcow2", - "hdc_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102-2.qcow2" + "hda_disk_image": "kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk" }, - "name": "4.10.0" + "name": "9.2.5p5" }, { "images": { - "hda_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041.qcow2", - "hdb_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041-1.qcow2", - "hdc_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041-2.qcow2" + "hda_disk_image": "kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk" }, - "name": "4.9.0" - } - ] - }, - { - "builtin": true, - "category": "firewall", - "description": "Untangle\u2019s NG Firewall enables you to quickly and easily create the network policies that deliver the perfect balance between security and productivity. Untangle combines Unified Threat Management (UTM)\u2014to address all of the key network threats\u2014with policy management tools that enable you to define access and control by individuals, groups or company-wide. And with industry-leading reports, you\u2019ll have complete visibility into and control over everything that\u2019s happening on your network.", - "documentation_url": "http://wiki.untangle.com/index.php/Main_Page", - "images": [ + "name": "9.2.4" + }, { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1321_x64.iso", - "filesize": 627048448, - "md5sum": "4ce49535372f85565922c7e90bc11ba3", - "version": "13.2.1" + "images": { + "hda_disk_image": "kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk" + }, + "name": "9.2.3" }, { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1320_x64.iso", - "filesize": 768000000, - "md5sum": "0ce2293acec0f37f1339e703653727f8", - "version": "13.2.0" - }, - { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1310_x64.iso", - "filesize": 588251136, - "md5sum": "dc35aa96e954992e53a8cb244a932ae6", - "version": "13.1.0" - }, - { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1300_x64.iso", - "filesize": 576716800, - "md5sum": "74dcb5c8e0fb400dbd3a9582fc472033", - "version": "13.0.0" - }, - { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1221_x64.iso", - "filesize": 580911104, - "md5sum": "6735942441d487d339b92c1499b0052b", - "version": "12.2.1" - }, - { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1220_x64.iso", - "filesize": 585105408, - "md5sum": "56947f059774f2f0015b6326cf5c63ac", - "version": "12.2.0" + "images": { + "hda_disk_image": "kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk" + }, + "name": "9.2.2" }, { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1212_x64.iso", - "filesize": 575668224, - "md5sum": "2f48873316725b1f709015dfeb73d666", - "version": "12.1.2" + "images": { + "hda_disk_image": "kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk" + }, + "name": "9.2.1" }, { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1211_x64.iso", - "filesize": 574619648, - "md5sum": "c7f38df4cbba72fa472a49454e476522", - "version": "12.1.1" - }, + "images": { + "hda_disk_image": "kerio-control-appliance-9.1.4-1535-vmware.vmdk" + }, + "name": "9.1.4" + } + ] + }, + { + "builtin": true, + "category": "multilayer_switch", + "description": "Cisco IOS on UNIX Layer 2 image.", + "images": [ { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1210_x64.iso", - "filesize": 573571072, - "md5sum": "d511cbbd34aac7678c34a111c791806f", - "version": "12.1.0" + "filename": "i86bi-linux-l2-ipbasek9-15.1g.bin", + "filesize": 62137336, + "md5sum": "0b8b9e14ca99b68c654e44c4296857ba", + "version": "15.1g" }, { - "download_url": "https://www.untangle.com/get-untangle/", - "filename": "untangle_1201_x64.iso", - "filesize": 611319808, - "md5sum": "905171d04d2f029b193fe76b02ef9e11", - "version": "12.0.1" + "filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin", + "filesize": 72726092, + "md5sum": "9549a20a7391fb849da32caa77a0d254", + "version": "15.1a" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "filename": "i86bi-linux-l2-adventerprisek9-15.2d.bin", + "filesize": 105036380, + "md5sum": "f16db44433beb3e8c828db5ddad1de8a", + "version": "15.2d" } ], + "iou": { + "ethernet_adapters": 4, + "nvram": 128, + "ram": 256, + "serial_adapters": 0, + "startup_config": "iou_l2_base_startup-config.txt" + }, "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Untangle NG", - "port_name_format": "eth{0}", - "product_name": "Untangle NG", - "product_url": "https://www.untangle.com/untangle-ng-firewall/", - "qemu": { - "adapter_type": "e1000", - "adapters": 4, - "arch": "x86_64", - "boot_priority": "dc", - "console_type": "vnc", - "hda_disk_interface": "ide", - "kvm": "allow", - "ram": 1024 - }, + "name": "Cisco IOU L2", + "product_name": "Cisco IOU L2", "registry_version": 3, - "status": "stable", - "usage": "Run the graphical or text based installer using VNC. The installer warns about insufficient memory but the provided 1G is enough, the installation will be successful.", - "vendor_name": "Untangle", - "vendor_url": "https://www.untangle.com/", + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", "versions": [ { "images": { - "cdrom_image": "untangle_1321_x64.iso", - "hda_disk_image": "empty30G.qcow2" + "image": "i86bi-linux-l2-ipbasek9-15.1g.bin" }, - "name": "13.2.1" + "name": "15.1g" }, { "images": { - "cdrom_image": "untangle_1320_x64.iso", - "hda_disk_image": "empty30G.qcow2" + "image": "i86bi-linux-l2-adventerprisek9-15.1a.bin" }, - "name": "13.2.0" + "name": "15.1a" }, { "images": { - "cdrom_image": "untangle_1310_x64.iso", - "hda_disk_image": "empty30G.qcow2" + "image": "i86bi-linux-l2-adventerprisek9-15.2d.bin" }, - "name": "13.1.0" - }, + "name": "15.2d" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Fortinet ADC appliances optimize the availability, user experience, and scalability of enterprise application delivery. They deliver fast, secure, and intelligent acceleration and distribution of even the most demanding enterprise applications.", + "documentation_url": "http://docs.fortinet.com/fortiadc-d-series/admin-guides", + "images": [ { - "images": { - "cdrom_image": "untangle_1300_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "13.0.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-FORTINET.out.kvm-data.qcow2", + "filesize": 30998528, + "md5sum": "b7500835594e62d8acb1c6ec43d597c1", + "version": "ALL" }, { - "images": { - "cdrom_image": "untangle_1221_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.2.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V500-build0239-FORTINET.out.kvm-boot.qcow2", + "filesize": 75235328, + "md5sum": "f94323bc6415dd1477f2352bd3323d14", + "version": "5.1.1" }, { - "images": { - "cdrom_image": "untangle_1220_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.2.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V500-build0056-FORTINET.out.kvm-boot.qcow2", + "filesize": 75038720, + "md5sum": "8b3b789fb540b2c30066f66bcbe7f307", + "version": "5.0.1" }, { - "images": { - "cdrom_image": "untangle_1212_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.1.2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V500-build0045-FORTINET.out.kvm-boot.qcow2", + "filesize": 74383360, + "md5sum": "d7381b3fb7a4534370ce8983e441d888", + "version": "5.0.0" }, { - "images": { - "cdrom_image": "untangle_1211_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.1.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0999-FORTINET.out.kvm-boot.qcow2", + "filesize": 73334784, + "md5sum": "d7825b8d0962800c37ffa814a6b2ad45", + "version": "4.8.5" }, { - "images": { - "cdrom_image": "untangle_1210_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.1.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", + "filesize": 72810496, + "md5sum": "c1926d5979ef24d9d14d3394c0bb832b", + "version": "4.8.4" }, { - "images": { - "cdrom_image": "untangle_1201_x64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "12.0.1" - } - ] - }, - { - "builtin": true, - "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.", - "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR", - "images": [ - { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.42/chr-6.42.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.42.img", - "filesize": 134217728, - "md5sum": "279bb518497b40f41c8585128916a2fb", - "version": "6.42" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0983-FORTINET.out.kvm-boot.qcow2", + "filesize": 72876032, + "md5sum": "d4cfc3b215780b2fb4c9d8f55208e8be", + "version": "4.8.3" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.41.4/chr-6.41.4.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.41.4.img", - "filesize": 134217728, - "md5sum": "63b555b2b7f0d78b79edb92f7e7d2ed7", - "version": "6.41.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0977-FORTINET.out.kvm-boot.qcow2", + "filesize": 72876032, + "md5sum": "285ca7a601a0d06bb893ef91ad7748fd", + "version": "4.8.2" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.7/chr-6.40.7.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.40.7.img", - "filesize": 134217728, - "md5sum": "424b897d631c4cac4324ca310e81b494", - "version": "6.40.7" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0970-FORTINET.out.kvm-boot.qcow2", + "filesize": 72351744, + "md5sum": "8f604b2a89ac3d9cc3d2d79d85b2d7ff", + "version": "4.8.1" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.5/chr-6.40.5.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.40.5.img", - "filesize": 134217728, - "md5sum": "5d3bef219a859d417fea704ae7109eb7", - "version": "6.40.5" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0937-FORTINET.out.kvm-boot.qcow2", + "filesize": 72089600, + "md5sum": "448f5906c42dd7e535c3acb2adab253c", + "version": "4.8.0" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.3/chr-6.40.3.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.40.3.img", - "filesize": 134217728, - "md5sum": "1861df67e9bbf17433f11f33f7dedd1e", - "version": "6.40.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0858-FORTINET.out.kvm-boot.qcow2", + "filesize": 63700992, + "md5sum": "6d81b1b3df55174e4db8526d6cfd8b0e", + "version": "4.7.4" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.39.2/chr-6.39.2.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.39.2.img", - "filesize": 134217728, - "md5sum": "ecb37373dedfba04267a999d23b8e203", - "version": "6.39.2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0849-FORTINET.out.kvm-boot.qcow2", + "filesize": 64028672, + "md5sum": "c85f49cd320fdca36e71c0d7cdc26f8c", + "version": "4.7.3" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.39.1/chr-6.39.1.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.39.1.img", - "filesize": 134217728, - "md5sum": "c53293bc41f76d85a8642005fd1cbd54", - "version": "6.39.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0844-FORTINET.out.kvm-boot.qcow2", + "filesize": 63963136, + "md5sum": "6f035cda6138af993153ef322231a201", + "version": "4.7.2" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.39/chr-6.39.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.39.img", - "filesize": 134217728, - "md5sum": "7e77c8ac4c9aeaf88f6ff15897f33163", - "version": "6.39" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0832-FORTINET.out.kvm-boot.qcow2", + "filesize": 67960832, + "md5sum": "70577d11ae77ce765cae944f3a7c3941", + "version": "4.7.1" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.7/chr-6.38.7.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.38.7.img", - "filesize": 134217728, - "md5sum": "69a51c96b1247bbaf1253d2873617122", - "version": "6.38.7" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0828-FORTINET.out.kvm-boot.qcow2", + "filesize": 67960832, + "md5sum": "4a0bf9d4ad29628ca08a1638662a43a6", + "version": "4.7.0" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.5/chr-6.38.5.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.38.5.img", - "filesize": 134217728, - "md5sum": "8147f42ea1ee96f580a35a298b7f9354", - "version": "6.38.5" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0679-FORTINET.out.kvm-boot.qcow2", + "filesize": 82903040, + "md5sum": "31147f42b54ce8e9c953dea519a4b9a6", + "version": "4.6.2" }, { - "compression": "zip", - "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.1/chr-6.38.1.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.38.1.img", - "filesize": 134217728, - "md5sum": "753ed7c86e0f54fd9e18d044db64538d", - "version": "6.38.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0677-FORTINET.out.kvm-boot.qcow2", + "filesize": 82837504, + "md5sum": "2a9c32c7b32807f4dc384ed6e2082802", + "version": "4.6.1" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.38/chr-6.38.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.38.img", - "filesize": 134217728, - "md5sum": "37e2165112f8a9beccac06a9a6009000", - "version": "6.38" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0660-FORTINET.out.kvm-boot.qcow2", + "filesize": 82509824, + "md5sum": "50cc9bc44409180f7106e4201b2dae2a", + "version": "4.6.0" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.37.3/chr-6.37.3.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.37.3.img", - "filesize": 134217728, - "md5sum": "bda87db475f80debdf3181accf6b78e2", - "version": "6.37.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-V400-build0605-FORTINET.out.kvm-boot.qcow2", + "filesize": 48168960, + "md5sum": "d415bc621bf0abc2b5aa32c03390e11f", + "version": "4.5.3" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.37.1/chr-6.37.1.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.37.1.img", - "filesize": 134217728, - "md5sum": "713b14a5aba9f967f7bdd9029c8d85b6", - "version": "6.37.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-v400-build0597-FORTINET.out.kvm-boot.qcow2", + "filesize": 66584576, + "md5sum": "47a905193e8f9ddc25be71aeccccc7b9", + "version": "4.5.2" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.36.4/chr-6.36.4.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.36.4.img", - "filesize": 134217728, - "md5sum": "09527bde50697711926c08d545940c1e", - "version": "6.36.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-v400-build0581-FORTINET.out.kvm-boot.qcow2", + "filesize": 67305472, + "md5sum": "bfc93d5881dda3f0a3123f54665bdcf0", + "version": "4.5.1" }, { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.2.vmdk", - "filesize": 30277632, - "md5sum": "0360f121b76a8b491a05dc37640ca319", - "version": "6.34.2 (.vmdk)" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAD_KVM-v400-build0560-FORTINET.out.kvm-boot.qcow2", + "filesize": 68026368, + "md5sum": "7a71f52bde93c0000b047626731b7aef", + "version": "4.5.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "FortiADC", + "port_name_format": "Port{port1}", + "product_name": "FortiADC", + "product_url": "https://www.fortinet.com/products-services/products/application-delivery-controllers/fortiadc.html", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 10, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "kvm": "allow", + "ram": 2048 + }, + "registry_version": 3, + "status": "stable", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set. Silent boot, it might take a while.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", + "versions": [ + { + "images": { + "hda_disk_image": "FAD_KVM-V500-build0239-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "5.1.1" }, { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.vdi", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.2.vdi", - "filesize": 30409728, - "md5sum": "e7e4021aeeee2eaabd024d48702bb2e1", - "version": "6.34.2 (.vdi)" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "5.0.1" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.2.img", - "filesize": 134217728, - "md5sum": "984d4d11c2ff209fcdc21ac42895edbe", - "version": "6.34.2 (.img)" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "5.0.0" }, { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.vmdk", - "filesize": 30277632, - "md5sum": "c5e6d192ae19d263a9a313d4b4bee7e4", - "version": "6.34 (.vmdk)" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0999-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "4.8.5" }, { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.vdi", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.vdi", - "filesize": 30409728, - "md5sum": "34b161f83a792c744c76a529afc094a8", - "version": "6.34 (.vdi)" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0989-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "4.8.4" }, { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.34.img", - "filesize": 134217728, - "md5sum": "32ffde7fb934c7bfee555c899ccd77b6", - "version": "6.34 (.img)" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0983-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "4.8.3" }, { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.5.vmdk", - "filesize": 23920640, - "md5sum": "cd284e28aa02ae59f55ed8f43ff27fbf", - "version": "6.33.5 (.vmdk)" - }, - { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vdi", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.5.vdi", - "filesize": 24118272, - "md5sum": "fa84e63a558e7c61d7d338386cfd08c9", - "version": "6.33.5 (.vdi)" - }, - { - "compression": "zip", - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.img.zip", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.5.img", - "filesize": 67108864, - "md5sum": "210cc8ad06f25c9f27b6b99f6e00bd91", - "version": "6.33.5 (.img)" - }, - { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.3/chr-6.33.3.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.3.vmdk", - "filesize": 23920640, - "md5sum": "08532a5af1a830182d65c416eab2b089", - "version": "6.33.3 (.vmdk)" - }, - { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.2/chr-6.33.2.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.2.vmdk", - "filesize": 23920640, - "md5sum": "6291893c2c9626603c6d38d23390a8be", - "version": "6.33.2 (.vmdk)" - }, - { - "direct_download_url": "http://download2.mikrotik.com/routeros/6.33/chr-6.33.vmdk", - "download_url": "http://www.mikrotik.com/download", - "filename": "chr-6.33.vmdk", - "filesize": 23920640, - "md5sum": "63bee5405fa1e209388adc6b5f78bb70", - "version": "6.33 (.vmdk)" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "MikroTik CHR", - "port_name_format": "ether{port1}", - "product_name": "MikroTik Cloud Hosted Router", - "product_url": "http://www.mikrotik.com/download", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 2, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "allow", - "options": "-nographic", - "ram": 128 - }, - "registry_version": 3, - "status": "stable", - "symbol": ":/symbols/router_firewall.svg", - "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.", - "vendor_name": "MikroTik", - "vendor_url": "http://mikrotik.com/", - "versions": [ - { - "images": { - "hda_disk_image": "chr-6.41.4.img" - }, - "name": "6.41.4" - }, - { - "images": { - "hda_disk_image": "chr-6.40.7.img" - }, - "name": "6.40.7" - }, - { - "images": { - "hda_disk_image": "chr-6.40.5.img" - }, - "name": "6.40.5" - }, - { - "images": { - "hda_disk_image": "chr-6.40.3.img" - }, - "name": "6.40.3" - }, - { - "images": { - "hda_disk_image": "chr-6.39.2.img" - }, - "name": "6.39.2" - }, - { - "images": { - "hda_disk_image": "chr-6.39.1.img" - }, - "name": "6.39.1" - }, - { - "images": { - "hda_disk_image": "chr-6.39.img" - }, - "name": "6.39" - }, - { - "images": { - "hda_disk_image": "chr-6.38.7.img" - }, - "name": "6.38.7" - }, - { - "images": { - "hda_disk_image": "chr-6.38.5.img" - }, - "name": "6.38.5" - }, - { - "images": { - "hda_disk_image": "chr-6.38.1.img" - }, - "name": "6.38.1" - }, - { - "images": { - "hda_disk_image": "chr-6.38.img" - }, - "name": "6.38" - }, - { - "images": { - "hda_disk_image": "chr-6.37.3.img" - }, - "name": "6.37.3" + "images": { + "hda_disk_image": "FAD_KVM-V400-build0977-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" + }, + "name": "4.8.2" }, { "images": { - "hda_disk_image": "chr-6.37.1.img" + "hda_disk_image": "FAD_KVM-V400-build0970-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.37.1" + "name": "4.8.1" }, { "images": { - "hda_disk_image": "chr-6.36.4.img" + "hda_disk_image": "FAD_KVM-V400-build0937-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.36.4" + "name": "4.8.0" }, { "images": { - "hda_disk_image": "chr-6.34.2.vmdk" + "hda_disk_image": "FAD_KVM-V400-build0858-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34.2 (.vmdk)" + "name": "4.7.4" }, { "images": { - "hda_disk_image": "chr-6.34.2.vdi" + "hda_disk_image": "FAD_KVM-V400-build0849-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34.2 (.vdi)" + "name": "4.7.3" }, { "images": { - "hda_disk_image": "chr-6.34.2.img" + "hda_disk_image": "FAD_KVM-V400-build0844-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34.2 (.img)" + "name": "4.7.2" }, { "images": { - "hda_disk_image": "chr-6.34.vmdk" + "hda_disk_image": "FAD_KVM-V400-build0832-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34 (.vmdk)" + "name": "4.7.1" }, { "images": { - "hda_disk_image": "chr-6.34.vdi" + "hda_disk_image": "FAD_KVM-V400-build0828-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34 (.vdi)" + "name": "4.7.0" }, { "images": { - "hda_disk_image": "chr-6.34.img" + "hda_disk_image": "FAD_KVM-V400-build0679-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.34 (.img)" + "name": "4.6.2" }, { "images": { - "hda_disk_image": "chr-6.33.5.vmdk" + "hda_disk_image": "FAD_KVM-V400-build0677-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33.5 (.vmdk)" + "name": "4.6.1" }, { "images": { - "hda_disk_image": "chr-6.33.5.vdi" + "hda_disk_image": "FAD_KVM-V400-build0660-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33.5 (.vdi)" + "name": "4.6.0" }, { "images": { - "hda_disk_image": "chr-6.33.5.img" + "hda_disk_image": "FAD_KVM-V400-build0605-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33.5 (.img)" + "name": "4.5.3" }, { "images": { - "hda_disk_image": "chr-6.33.3.vmdk" + "hda_disk_image": "FAD_KVM-v400-build0597-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33.3 (.vmdk)" + "name": "4.5.2" }, { "images": { - "hda_disk_image": "chr-6.33.2.vmdk" + "hda_disk_image": "FAD_KVM-v400-build0581-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33.2 (.vmdk)" + "name": "4.5.1" }, { "images": { - "hda_disk_image": "chr-6.33.vmdk" + "hda_disk_image": "FAD_KVM-v400-build0560-FORTINET.out.kvm-boot.qcow2", + "hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2" }, - "name": "6.33 (.vmdk)" + "name": "4.5.0" } ] }, { + "availability": "free-to-try", "builtin": true, - "category": "firewall", - "description": "The Cisco ISE platform is a comprehensive, next-generation, contextually-based access control solution. Cisco ISE offers authenticated network access, profiling, posture, guest management, and security group access services along with monitoring, reporting, and troubleshooting capabilities on a single physical or virtual appliance.", - "documentation_url": "http://www.cisco.com/c/en/us/support/security/identity-services-engine/tsd-products-support-series-home.html", + "category": "guest", + "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", + "documentation_url": "https://technet.microsoft.com/en-us/library/cc498727.aspx", "images": [ { - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "ise-2.1.0.474.SPA.x86_64.iso", - "filesize": 6161475584, - "md5sum": "8dc844696790f2f5f37054899fab3e2a", - "version": "2.1.0.474" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "ise-2.0.1.130.SPA.x86_64.iso", - "filesize": 5129990144, - "md5sum": "25ac842fdbb61f6e75f2f8b26beea28e", - "version": "2.0.1.130" + "download_url": "https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2016", + "filename": "Win2k16_14393.0.161119-1705.RS1_REFRESH_SERVER_EVAL_X64FRE_EN-US.ISO", + "filesize": 6972221440, + "md5sum": "70721288bbcdfe3239d8f8c0fae55f1f", + "version": "2016" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=283801620&flowid=&softwareid=283802505&release=2.0.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "ise-2.0.0.306.SPA.x86_64.iso", - "filesize": 5088827392, - "md5sum": "b7a454ee235db29b5c208b19bfd1fbd1", - "version": "2.0.0.306" + "download_url": "https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2012-r2", + "filename": "Win2k12_9600.16415.amd64fre.winblue_refresh.130928-2229_server_serverdatacentereval_en-us.vhd", + "filesize": 8024756224, + "md5sum": "b0a988a2e1f401c99c7c18a00391c4cc", + "version": "2012 R2" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty200G.qcow2/download", + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty200G.qcow2", - "filesize": 200192, - "md5sum": "d1686d2f25695dee32eab9a6f4652c7c", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco ISE", - "port_name_format": "GigabitEthernet{0}", - "product_name": "Identity Services Engine", - "product_url": "http://www.cisco.com/c/en/us/products/security/identity-services-engine/index.html", + "name": "Windows Server", + "port_name_format": "NIC{port1}", + "product_name": "Windows Server", + "product_url": "https://www.microsoft.com/en-us/windows", "qemu": { "adapter_type": "e1000", - "adapters": 2, + "adapters": 1, "arch": "x86_64", - "boot_priority": "cd", + "boot_priority": "c", "console_type": "vnc", - "hda_disk_interface": "ide", + "hda_disk_interface": "sata", "kvm": "require", - "options": "-smp 2", - "ram": 4096 + "options": "-usbdevice tablet", + "ram": 2048 }, - "registry_version": 3, - "status": "experimental", - "symbol": "cisco-ise.svg", - "usage": "Starting ISE will start an installation of ISE onto a blank 200GB Drive. This will take time. The intial username is setup.\n\nThis appliance requires KVM. You may try it on a system without KVM, but it will run really slow, if at all.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "registry_version": 4, + "status": "stable", + "symbol": "microsoft.svg", + "vendor_name": "Microsoft", + "vendor_url": "http://www.microsoft.com/", "versions": [ { "images": { - "cdrom_image": "ise-2.1.0.474.SPA.x86_64.iso", - "hda_disk_image": "empty200G.qcow2" + "cdrom_image": "Win2k16_14393.0.161119-1705.RS1_REFRESH_SERVER_EVAL_X64FRE_EN-US.ISO", + "hda_disk_image": "empty100G.qcow2" }, - "name": "2.1.0.474" + "name": "2016" }, { "images": { - "cdrom_image": "ise-2.0.1.130.SPA.x86_64.iso", - "hda_disk_image": "empty200G.qcow2" + "hda_disk_image": "Win2k12_9600.16415.amd64fre.winblue_refresh.130928-2229_server_serverdatacentereval_en-us.vhd" }, - "name": "2.0.1.130" - }, + "name": "2012 R2" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, and RIP.\n\nFRR\u2019s seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.\n\nThis is an unofficial VM or FRR.", + "images": [ + { + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/frr/files/frr4.0-vm0.1.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/frr/files/", + "filename": "frr4.0-vm0.1.qcow2", + "filesize": 1670643712, + "md5sum": "e1dc58cbb2b71c58051538c07d412493", + "version": "FRR4.0 - VM0.1" + } + ], + "maintainer": "Andras Dosztal", + "maintainer_email": "developers@gns3.net", + "name": "FRR", + "port_name_format": "ens{port3}", + "product_name": "FRR", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 8, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "ram": 256 + }, + "registry_version": 3, + "status": "stable", + "usage": "Credentials: frr / frr\nIf you exit from the router CLI, you can get back by typing 'vtysh' to the console.", + "vendor_name": "FRRouting Project", + "vendor_url": "https://frrouting.org", + "versions": [ { "images": { - "cdrom_image": "ise-2.0.0.306.SPA.x86_64.iso", - "hda_disk_image": "empty200G.qcow2" + "hda_disk_image": "frr4.0-vm0.1.qcow2" }, - "name": "2.0.0.306" + "name": "FRR4.0 - VM0.1" } ] }, + { + "builtin": true, + "category": "guest", + "description": "The chromium browser", + "docker": { + "adapters": 1, + "console_type": "vnc", + "image": "gns3/chromium:latest" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Chromium", + "product_name": "Chromium", + "registry_version": 3, + "status": "stable", + "vendor_name": "Chromium", + "vendor_url": "https://www.chromium.org/" + }, { "builtin": true, "category": "router", - "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Control Plane (vCP) VM and is meant to be paired with the Virtual Forwarding Plane (vFP) VM.", - "documentation_url": "http://www.juniper.net/techpubs/", - "first_port_name": "fxp0", + "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.", + "documentation_url": "http://www.cisco.com/c/en/us/support/routers/cloud-services-router-1000v-series/products-installation-and-configuration-guides-list.html", "images": [ { - "filename": "junos-vmx-x86-64-17.4R1.16.qcow2", - "filesize": 1325400064, - "md5sum": "85239193e852d643dfd9d5c257240bdf", - "version": "17.4R1.16-KVM" + "download_url": "https://software.cisco.com/download/home/284364978/type/282046477/release/Fuji-16.9.1", + "filename": "csr1000v-universalk9.16.09.01-serial.qcow2", + "filesize": 917897216, + "md5sum": "d7e1c83b6f513beb4200c7691d119086", + "version": "16.9.1" }, { - "filename": "vmxhdd-17.4R1.16.img", - "filesize": 108986368, - "md5sum": "69e9821ebc59367527336d8bcecd171c", - "version": "17.4R1.16-KVM" + "download_url": "https://software.cisco.com/download/home/284364978/type/282046477", + "filename": "csr1000v-universalk9.16.08.01a-serial.qcow2", + "filesize": 890044416, + "md5sum": "91e2572f20c77606d710223511cd279a", + "version": "16.8.1a" }, { - "filename": "metadata-usb-re-17.4R1.16.img", - "filesize": 16777216, - "md5sum": "a5b125822b798c7167c35966ea00229a", - "version": "17.4R1.16-KVM" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Fuji-16.7.1", + "filename": "csr1000v-universalk9.16.07.01-serial.qcow2", + "filesize": 884539392, + "md5sum": "bad9000d4ae8317bbc99a34a8cdd2eb4", + "version": "16.7.1" }, { - "filename": "vcp_17.1R1.8-disk1.vmdk", - "filesize": 1065513984, - "md5sum": "2dba6dff363c0619903f85c3dedce8d8", - "version": "17.1R1.8-ESXi" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.6.2", + "filename": "csr1000v-universalk9.16.06.02-serial.qcow2", + "filesize": 1570242560, + "md5sum": "11e393b31ab9d1ace8e5f7551c491ba2", + "version": "16.6.2" }, { - "filename": "vcp_17.1R1.8-disk2.vmdk", - "filesize": 5928448, - "md5sum": "df7016f8b0fd456044425fa92566c129", - "version": "17.1R1.8-ESXi" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.6.1", + "filename": "csr1000v-universalk9.16.06.01-serial.qcow2", + "filesize": 1566179328, + "md5sum": "909e74446d3ff0b82c14327c0058fdc2", + "version": "16.6.1" }, { - "filename": "vcp_17.1R1.8-disk3.vmdk", - "filesize": 71680, - "md5sum": "e9460158e6e27f7885981ab562e60944", - "version": "17.1R1.8-ESXi" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&flowid=39582&softwareid=282046477&release=Everest-16.5.2", + "filename": "csr1000v-universalk9.16.05.02-serial.qcow2", + "filesize": 1322385408, + "md5sum": "59a84da28d59ee75176aa05ecde7f72a", + "version": "16.5.2" }, { - "filename": "junos-vmx-x86-64-17.1R1.8.qcow2", - "filesize": 1192296448, - "md5sum": "4434e70fedfec2ef205412236ae934a4", - "version": "17.1R1.8-KVM" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "csr1000v-universalk9.16.5.1b-serial.qcow2", + "filesize": 1209543680, + "md5sum": "ac11d33041b8ff6dc3553e324d02cccb", + "version": "16.5.1b" }, { - "filename": "vmxhdd-17.1R1.img", - "filesize": 108986368, - "md5sum": "3634fa16219852d0dba46b2fb77d5969", - "version": "17.1R1.8-KVM" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "csr1000v-universalk9.03.17.00.S.156-1.S-ext.qcow2", + "filesize": 1346305024, + "md5sum": "06cbfcd11f3557391db64fe2a6015a6e", + "version": "3.17" }, { - "filename": "metadata-usb-re-17.1R1.img", - "filesize": 16777216, - "md5sum": "e911911dc77e7fef1375e66ae98e41b8", - "version": "17.1R1.8-KVM" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "csr1000v-universalk9.16.3.1-build2.qcow2", + "filesize": 1280835584, + "md5sum": "a770e96de928265515304c9c9d6b46b9", + "version": "16.3.1-build2" }, { - "filename": "vcp_16.2R1.6-disk1.vmdk", - "filesize": 1093272576, - "md5sum": "6407f6b448de3b45b86fccb4d586a977", - "version": "16.2R1.6-ESXi" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284364978&softwareid=282046477&release=Denali-16.3.1", + "filename": "csr1000v-universalk9.16.03.01.qcow2", + "filesize": 1351352320, + "md5sum": "0a7f3a4b93d425c2dcb2df5505816fa5", + "version": "16.3.1" }, { - "filename": "vcp_16.2R1.6-disk2.vmdk", - "filesize": 5928960, - "md5sum": "73db51629c009466d39f5d7fdf736224", - "version": "16.2R1.6-ESXi" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "csr1000v-universalk9.16.03.02.qcow2", + "filesize": 1167720448, + "md5sum": "2e5803d23cd52cba5d55fa8306be5f13", + "version": "16.3.2" }, { - "filename": "vcp_16.2R1.6-disk3.vmdk", - "filesize": 71680, - "md5sum": "6df61c10f25ea6279562e5a13342100d", - "version": "16.2R1.6-ESXi" - }, + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "csr1000v-universalk9.16.4.1.qcow2", + "filesize": 1261961216, + "md5sum": "3428e0dcf5132a1b11ab7696d8c61b2e", + "version": "16.4.1" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco CSR1000v", + "port_name_format": "Gi{port1}", + "product_name": "CSR1000v", + "product_url": "http://www.cisco.com/c/en/us/support/routers/cloud-services-router-1000v-series/tsd-products-support-series-home.html", + "qemu": { + "adapter_type": "vmxnet3", + "adapters": 4, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "ram": 3072 + }, + "registry_version": 3, + "status": "stable", + "usage": "There is no default password and enable password. A default configuration is present.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", + "versions": [ { - "filename": "junos-vmx-x86-64-16.2R1.6.qcow2", - "filesize": 1217462272, - "md5sum": "61497595fb62a9d9805724a3e0a56fa0", - "version": "16.2R1.6-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.09.01-serial.qcow2" + }, + "name": "16.9.1" }, { - "filename": "vmxhdd-16.2R1.img", - "filesize": 108986368, - "md5sum": "ce75a16cf130d8744652c8f23d1d13ef", - "version": "16.2R1.6-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.08.01a-serial.qcow2" + }, + "name": "16.8.1a" }, { - "filename": "metadata-usb-re-16.2R1.img", - "filesize": 16777216, - "md5sum": "dded4a98c18ecc79daaa1d11dd0cfb2f", - "version": "16.2R1.6-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.07.01-serial.qcow2" + }, + "name": "16.7.1" }, { - "filename": "vcp_16.1R4.7-disk1.vmdk", - "filesize": 987702272, - "md5sum": "e438f48a34d6b8047e36994fb323a97b", - "version": "16.1R4.7-ESXi" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.06.02-serial.qcow2" + }, + "name": "16.6.2" }, { - "filename": "vcp_16.1R4.7-disk2.vmdk", - "filesize": 5929472, - "md5sum": "fb30d5afd182a03f36daaaf985e0d1ef", - "version": "16.1R4.7-ESXi" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.06.01-serial.qcow2" + }, + "name": "16.6.1" }, { - "filename": "vcp_16.1R4.7-disk3.vmdk", - "filesize": 71680, - "md5sum": "c185a44561890a4b6e84cea6b86ad92a", - "version": "16.1R4.7-ESXi" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.05.02-serial.qcow2" + }, + "name": "16.5.2" }, { - "filename": "junos-vmx-x86-64-16.1R4.7.qcow2", - "filesize": 1115815936, - "md5sum": "020db6733c158bd871bf28dcd7d039e9", - "version": "16.1R4.7-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.5.1b-serial.qcow2" + }, + "name": "16.5.1b" }, { - "filename": "vmxhdd-16.1R4.img", - "filesize": 108986368, - "md5sum": "97b86d9d69f9615fb97d50a8d4aecd97", - "version": "16.1R4.7-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.03.17.00.S.156-1.S-ext.qcow2" + }, + "name": "3.17" }, { - "filename": "metadata-usb-re-16.1R4.img", - "filesize": 16777216, - "md5sum": "fb200eec654e14201bfa0720b39a64f0", - "version": "16.1R4.7-KVM" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.03.01.qcow2" + }, + "name": "16.3.1" }, { - "filename": "vcp_16.1R3.10-disk1.vmdk", - "filesize": 977419776, - "md5sum": "532ab7d63c1873e6e6e9b9b057eb83ec", - "version": "16.1R3.10-ESXi" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.3.1-build2.qcow2" + }, + "name": "16.3.1-build2" }, { - "filename": "vcp_16.1R3.10-disk2.vmdk", - "filesize": 5928448, - "md5sum": "c563254a38c0d83c4bb9a866cae661f0", - "version": "16.1R3.10-ESXi" + "images": { + "hda_disk_image": "csr1000v-universalk9.16.03.02.qcow2" + }, + "name": "16.3.2" }, { - "filename": "vcp_16.1R3.10-disk3.vmdk", - "filesize": 71680, - "md5sum": "9c8f3a8f26ff418eb6a5acd4803a3ca2", - "version": "16.1R3.10-ESXi" - }, + "images": { + "hda_disk_image": "csr1000v-universalk9.16.4.1.qcow2" + }, + "name": "16.4.1" + } + ] + }, + { + "builtin": true, + "category": "multilayer_switch", + "description": "Cumulus VX is a community-supported virtual appliance that enables cloud admins and network engineers to preview and test Cumulus Networks technology at zero cost. You can build sandbox environments to learn Open Networking concepts, prototype network operations and script & develop applications risk-free. With Cumulus VX, you can get started with Open Networking at your pace, on your time, and in your environment!", + "documentation_url": "http://docs.cumulusnetworks.com/", + "first_port_name": "eth0", + "images": [ { - "filename": "junos-vmx-x86-64-16.1R3.10.qcow2", - "filesize": 1105526784, - "md5sum": "f677c8235f579c54ee746daade5ee443", - "version": "16.1R3.10-KVM" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/CumulusLinux-3.7.1/cumulus-linux-3.7.1-vx-amd64-qemu.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.7.1-vx-amd64-qemu.qcow2", + "filesize": 1640300544, + "md5sum": "201055c57e4a20bb5772289ea6216631", + "version": "3.7.1" }, { - "filename": "vmxhdd-16.1R3.img", - "filesize": 108986368, - "md5sum": "28626ce47bea74b7d92bb4e28fa85c93", - "version": "16.1R3.10-KVM" + "direct_download_url": "https://s3.amazonaws.com/cumulusfiles/CumulusLinux-3.6.2/cumulus-linux-3.6.2-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.6.2-vx-amd64.qcow2", + "filesize": 1150746624, + "md5sum": "02b0621d68fb2e709b4bcc48748c7b6f", + "version": "3.6.2" }, { - "filename": "metadata-usb-re-16.1R3.img", - "filesize": 16777216, - "md5sum": "b187253fa654a30a7dd0b331e2c6e6a4", - "version": "16.1R3.10-KVM" + "direct_download_url": "https://s3.amazonaws.com/cumulusfiles/CumulusLinux-3.6.1/cumulus-linux-3.6.1-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.6.1-vx-amd64.qcow2", + "filesize": 1068761088, + "md5sum": "b2145a689ceea668d003a0d2f2faa045", + "version": "3.6.1" }, { - "filename": "vcp_16.1R2.11-disk1.vmdk", - "filesize": 970741248, - "md5sum": "20945c0114fa4f88cdbedd0551f62d8f", - "version": "16.1R2.11-ESXi" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.6.0-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.6.0-vx-amd64.qcow2", + "filesize": 1105199104, + "md5sum": "b5356b6c922f5620d7e6971d44e9be4d", + "version": "3.6.0" }, { - "filename": "vcp_16.1R2.11-disk2.vmdk", - "filesize": 5930496, - "md5sum": "904acd14a9eef0bdb60f18db63b8a653", - "version": "16.1R2.11-ESXi" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.3-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.5.3-vx-amd64.qcow2", + "filesize": 1084358656, + "md5sum": "4ecbd7341b214fa3c3b27ab11d1df2fb", + "version": "3.5.3" }, { - "filename": "vcp_16.1R2.11-disk3.vmdk", - "filesize": 71680, - "md5sum": "f6f6c24c0f991faf93c45f1fbc2ed0ae", - "version": "16.1R2.11-ESXi" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.3-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.5.2-vx-amd64.qcow2", + "filesize": 996605952, + "md5sum": "87d1d8b297e5ebd77924669dfb7e4c9f", + "version": "3.5.2" }, { - "filename": "junos-vmx-x86-64-16.1R2.11.qcow2", - "filesize": 1194065920, - "md5sum": "da443543eee6d7305a6851d38d0613ea", - "version": "16.1R2.11-KVM" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.0-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.5.0-vx-amd64.qcow2", + "filesize": 1044250624, + "md5sum": "9ad1f352d0603becf4bcc749b77c99dd", + "version": "3.5.0" }, { - "filename": "vmxhdd-16.1R2.img", - "filesize": 108986368, - "md5sum": "962c04d00d2b3272f40f3571d1305d6d", - "version": "16.1R2.11-KVM" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.4.3-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.4.3-vx-amd64.qcow2", + "filesize": 988872704, + "md5sum": "fd9144cdab7cac66cf421a13c6f50ac8", + "version": "3.4.3" }, { - "filename": "metadata-usb-re-16.1R2.img", - "filesize": 16777216, - "md5sum": "10f219a0b5d23553dbbf3a7ec1358a68", - "version": "16.1R2.11-KVM" + "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.4.2-vx-amd64.qcow2", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.4.2-vx-amd64.qcow2", + "filesize": 1060700160, + "md5sum": "ca844684784ceeee893d0cd76dc44e3b", + "version": "3.4.2" }, { - "filename": "vcp_16.1R1.7-disk1.vmdk", - "filesize": 1067432448, - "md5sum": "0a97d16b7014be8e3ae270cc2028d10d", - "version": "16.1R1.7-ESXi" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.4.1-vx-amd64.qcow2", + "filesize": 975503360, + "md5sum": "38319aa04533d91b1121a02f6ed99993", + "version": "3.4.1" }, { - "filename": "vcp_16.1R1.7-disk2.vmdk", - "filesize": 5930496, - "md5sum": "e96972233a144b93aa9bcc321b2a215b", - "version": "16.1R1.7-ESXi" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.4.0-vx-amd64.qcow2", + "filesize": 918355968, + "md5sum": "d93a15072bc7f8d15268f5e43f735a5e", + "version": "3.4.0" }, { - "filename": "vcp_16.1R1.7-disk3.vmdk", - "filesize": 71680, - "md5sum": "815af90310e6681204ba511d9659d2ad", - "version": "16.1R1.7-ESXi" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.3.2-vx-amd64.qcow2", + "filesize": 980090880, + "md5sum": "8364f93cabaa442c13c8c6752a248a5d", + "version": "3.3.2" }, { - "filename": "junos-vmx-x86-64-16.1R1.7.qcow2", - "filesize": 1194065920, - "md5sum": "f7b53cc04672a1abf7c0236a772cea51", - "version": "16.1R1.7-KVM" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.2.1-vx-amd64-1486153138.ac46c24zd00d13e.qcow2", + "filesize": 1232601088, + "md5sum": "145519af273d7f21ee1845780de7dce3", + "version": "3.2.1" }, { - "filename": "vmxhdd-16.1R1.img", - "filesize": 108986368, - "md5sum": "c239c4de2a4cf902747c8fc300f08493", - "version": "16.1R1.7-KVM" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.2.0-vx-amd64-1481684769.ac46c24z090952a.qcow2", + "filesize": 1217593344, + "md5sum": "4cd6cee606483d4403d3329a72697ca4", + "version": "3.2.0" }, { - "filename": "metadata-usb-re-16.1R1.img", - "filesize": 16777216, - "md5sum": "47e578bd41890272dcd5aa1e436068d4", - "version": "16.1R1.7-KVM" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.1.2-vx-amd64-1478059878.e1f18b3zacdc5c1.qcow2", + "filesize": 1291911168, + "md5sum": "e25d4dde0d2d5378a469380bd1d8d082", + "version": "3.1.2" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "jinstall64-vmx-15.1F4.15-domestic.img", - "filesize": 1003945984, - "md5sum": "e6b2e1ad9cba5220aa764ae4dd008952", - "version": "15.1F4.15" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.1.1-vx-amd64-1474681409.bd4e10cz3c4e23f.qcow2", + "filesize": 1230372864, + "md5sum": "ad7688721417f167ea3537e60feac3da", + "version": "3.1.1" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vmxhdd-15.1.img", - "filesize": 108986368, - "md5sum": "c3c7090ed3b1799e3de7579ac887e39d", - "version": "15.1F4.15" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.1.0-vx-amd64-1471979027.dc7e2adza017cfb.qcow2", + "filesize": 1190789120, + "md5sum": "6a68b8c8ef45c7227e80009e9920729c", + "version": "3.1.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "metadata-usb-15.1.img", - "filesize": 16777216, - "md5sum": "af48f7e03f94ffcfeecd15a59a4f1567", - "version": "15.1F4.15" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.0.1-vx-amd64-1468215109.5d83176z20fa23d.qcow2", + "filesize": 1284112384, + "md5sum": "9f312bf4de1b410ce48e26b38f3bef48", + "version": "3.0.1" }, { - "filename": "junos-vmx-x86-64-15.1F6.9.qcow2", - "filesize": 994181120, - "md5sum": "595f532b95d6d98590d0375a3d6d14b6", - "version": "15.1F6.9-KVM" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "cumulus-linux-3.0.0-vx-amd64-1464279382.a8e7985zf0f5ad5.qcow2", + "filesize": 1237581824, + "md5sum": "ef23948870b77bb1373b9f06de4e7742", + "version": "3.0.0" }, { - "filename": "vmxhdd-15.1F6.9.img", - "filesize": 108986368, - "md5sum": "bae35d0bb72946d1e91ff9c5e7ddbf86", - "version": "15.1F6.9-KVM" + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "CumulusVX-2.5.5-cc665123486ac43d.qcow2", + "filesize": 1092550656, + "md5sum": "e0cad2491d47f859828703a0b50cf633", + "version": "2.5.5" }, { - "filename": "metadata-usb-re-15.1F6.9.img", - "filesize": 16777216, - "md5sum": "15238c3dbc987d1a641c919efe2731c5", - "version": "15.1F6.9-KVM" - } - ], - "maintainer": "none", + "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", + "filename": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2", + "filesize": 1040973824, + "md5sum": "5128aec2568991ea0586293cb85f7a97", + "version": "2.5.3" + } + ], + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Juniper vMX vCP", - "port_name_format": "em{port1}", - "product_name": "Juniper vMX vCP", - "product_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "name": "Cumulus VX", + "port_name_format": "swp{port1}", + "product_name": "Cumulus VX", + "product_url": "https://cumulusnetworks.com/cumulus-vx/", "qemu": { - "adapter_type": "e1000", - "adapters": 2, + "adapter_type": "virtio-net-pci", + "adapters": 7, "arch": "x86_64", "console_type": "telnet", "kvm": "require", - "options": "-nographic -enable-kvm", - "ram": 1024 + "ram": 512 }, "registry_version": 3, - "status": "experimental", - "symbol": "juniper-vmx.svg", - "usage": "Initial username is root, no password.\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (fxp0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (eth1) of the vFP.", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", + "status": "stable", + "usage": "Default username is cumulus and password is CumulusLinux!", + "vendor_name": "Cumulus Network", + "vendor_url": "https://www.cumulusnetworks.com", "versions": [ { "images": { - "hda_disk_image": "junos-vmx-x86-64-17.4R1.16.qcow2", - "hdb_disk_image": "vmxhdd-17.4R1.16.img", - "hdc_disk_image": "metadata-usb-re-17.4R1.16.img" + "hda_disk_image": "cumulus-linux-3.7.1-vx-amd64-qemu.qcow2" }, - "name": "17.4R1.16-KVM" + "name": "3.7.1" }, { "images": { - "hda_disk_image": "vcp_17.1R1.8-disk1.vmdk", - "hdb_disk_image": "vcp_17.1R1.8-disk2.vmdk", - "hdc_disk_image": "vcp_17.1R1.8-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.6.2-vx-amd64.qcow2" }, - "name": "17.1R1.8-ESXi" + "name": "3.6.2" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-17.1R1.8.qcow2", - "hdb_disk_image": "vmxhdd-17.1R1.img", - "hdc_disk_image": "metadata-usb-re-17.1R1.img" + "hda_disk_image": "cumulus-linux-3.6.1-vx-amd64.qcow2" }, - "name": "17.1R1.8-KVM" + "name": "3.6.1" }, { "images": { - "hda_disk_image": "vcp_16.2R1.6-disk1.vmdk", - "hdb_disk_image": "vcp_16.2R1.6-disk2.vmdk", - "hdc_disk_image": "vcp_16.2R1.6-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.6.0-vx-amd64.qcow2" }, - "name": "16.2R1.6-ESXi" + "name": "3.6.0" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-16.2R1.6.qcow2", - "hdb_disk_image": "vmxhdd-16.2R1.img", - "hdc_disk_image": "metadata-usb-re-16.2R1.img" + "hda_disk_image": "cumulus-linux-3.5.3-vx-amd64.qcow2" }, - "name": "16.2R1.6-KVM" + "name": "3.5.3" }, { "images": { - "hda_disk_image": "vcp_16.1R4.7-disk1.vmdk", - "hdb_disk_image": "vcp_16.1R4.7-disk2.vmdk", - "hdc_disk_image": "vcp_16.1R4.7-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.5.2-vx-amd64.qcow2" }, - "name": "16.1R4.7-ESXi" + "name": "3.5.2" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-16.1R4.7.qcow2", - "hdb_disk_image": "vmxhdd-16.1R4.img", - "hdc_disk_image": "metadata-usb-re-16.1R4.img" + "hda_disk_image": "cumulus-linux-3.5.0-vx-amd64.qcow2" }, - "name": "16.1R4.7-KVM" + "name": "3.5.0" }, { "images": { - "hda_disk_image": "vcp_16.1R3.10-disk1.vmdk", - "hdb_disk_image": "vcp_16.1R3.10-disk2.vmdk", - "hdc_disk_image": "vcp_16.1R3.10-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.4.3-vx-amd64.qcow2" }, - "name": "16.1R3.10-ESXi" + "name": "3.4.3" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-16.1R3.10.qcow2", - "hdb_disk_image": "vmxhdd-16.1R3.img", - "hdc_disk_image": "metadata-usb-re-16.1R3.img" + "hda_disk_image": "cumulus-linux-3.4.2-vx-amd64.qcow2" }, - "name": "16.1R3.10-KVM" + "name": "3.4.2" }, { "images": { - "hda_disk_image": "vcp_16.1R2.11-disk1.vmdk", - "hdb_disk_image": "vcp_16.1R2.11-disk2.vmdk", - "hdc_disk_image": "vcp_16.1R2.11-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.4.1-vx-amd64.qcow2" }, - "name": "16.1R2.11-ESXi" + "name": "3.4.1" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-16.1R2.11.qcow2", - "hdb_disk_image": "vmxhdd-16.1R2.img", - "hdc_disk_image": "metadata-usb-re-16.1R2.img" + "hda_disk_image": "cumulus-linux-3.4.0-vx-amd64.qcow2" }, - "name": "16.1R2.11-KVM" + "name": "3.4.0" }, { "images": { - "hda_disk_image": "vcp_16.1R1.7-disk1.vmdk", - "hdb_disk_image": "vcp_16.1R1.7-disk2.vmdk", - "hdc_disk_image": "vcp_16.1R1.7-disk3.vmdk" + "hda_disk_image": "cumulus-linux-3.3.2-vx-amd64.qcow2" }, - "name": "16.1R1.7-ESXi" + "name": "3.3.2" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-16.1R1.7.qcow2", - "hdb_disk_image": "vmxhdd-16.1R1.img", - "hdc_disk_image": "metadata-usb-re-16.1R1.img" + "hda_disk_image": "cumulus-linux-3.2.1-vx-amd64-1486153138.ac46c24zd00d13e.qcow2" }, - "name": "16.1R1.7-KVM" + "name": "3.2.1" }, { "images": { - "hda_disk_image": "jinstall64-vmx-15.1F4.15-domestic.img", - "hdb_disk_image": "vmxhdd-15.1.img", - "hdc_disk_image": "metadata-usb-15.1.img" + "hda_disk_image": "cumulus-linux-3.2.0-vx-amd64-1481684769.ac46c24z090952a.qcow2" }, - "name": "15.1F4.15" + "name": "3.2.0" }, { "images": { - "hda_disk_image": "junos-vmx-x86-64-15.1F6.9.qcow2", - "hdb_disk_image": "vmxhdd-15.1F6.9.img", - "hdc_disk_image": "metadata-usb-re-15.1F6.9.img" + "hda_disk_image": "cumulus-linux-3.1.2-vx-amd64-1478059878.e1f18b3zacdc5c1.qcow2" }, - "name": "15.1F6.9" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Cisco Data Center Network Manager (DCNM) 10 unifies and automates Cisco Nexus and Cisco MDS 9000 Family multitenant infrastructure for data center management across Cisco Nexus 5000, 6000, 7000, and 9000 Series Switches in NX\u2011OS mode using Cisco NX-OS Software as well as across Cisco MDS 9100 and 9300 Series Multilayer Fabric Switches, 9200 Series Multiservice Switches, and 9500 and 9700 Series Multilayer Directors. Data Center Network Manager 10 lets you manage very large numbers of devices while providing ready-to-use management and automation capabilities plus Virtual Extensible LAN (VXLAN) overlay visibility into Cisco Nexus LAN fabrics.", - "documentation_url": "http://www.cisco.com/c/en/us/support/cloud-systems-management/data-center-network-manager-10/model.html", - "images": [ + "name": "3.1.2" + }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=281722751&softwareid=282088134&release=10.1(1)&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "dcnm-va.10.1.1.iso", - "filesize": 2927532032, - "md5sum": "4eca14506decaf166251c64e67adb110", - "version": "10.1.1" + "images": { + "hda_disk_image": "cumulus-linux-3.1.1-vx-amd64-1474681409.bd4e10cz3c4e23f.qcow2" + }, + "name": "3.1.1" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco DCNM", - "port_name_format": "eth{0}", - "product_name": "DCNM", - "product_url": "http://www.cisco.com/c/en/us/products/cloud-systems-management/prime-data-center-network-manager/index.html", - "qemu": { - "adapter_type": "e1000", - "adapters": 2, - "arch": "x86_64", - "console_type": "vnc", - "hda_disk_interface": "ide", - "kvm": "require", - "options": "-smp 2", - "ram": 8192 - }, - "registry_version": 3, - "status": "stable", - "symbol": "mgmt_station.svg", - "usage": "Default credentials: root / cisco123", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", - "versions": [ + "images": { + "hda_disk_image": "cumulus-linux-3.1.0-vx-amd64-1471979027.dc7e2adza017cfb.qcow2" + }, + "name": "3.1.0" + }, { "images": { - "cdrom_image": "dcnm-va.10.1.1.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "cumulus-linux-3.0.1-vx-amd64-1468215109.5d83176z20fa23d.qcow2" }, - "name": "10.1.1" + "name": "3.0.1" + }, + { + "images": { + "hda_disk_image": "cumulus-linux-3.0.0-vx-amd64-1464279382.a8e7985zf0f5ad5.qcow2" + }, + "name": "3.0.0" + }, + { + "images": { + "hda_disk_image": "CumulusVX-2.5.5-cc665123486ac43d.qcow2" + }, + "name": "2.5.5" + }, + { + "images": { + "hda_disk_image": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2" + }, + "name": "2.5.3" } ] }, + { + "builtin": true, + "category": "multilayer_switch", + "description": "Arista cEOS\u2122 introduces the containerized packaging of EOS software and its agents for deployment in cloud infrastructure with the same proven EOS software image that runs on all Arista products. These flexible deployment options empower cloud network operators that are customizing their operating environments to provide a uniform workflow for development, testing and deployment of differentiated services.", + "docker": { + "adapters": 8, + "console_type": "telnet", + "image": "ceosimage:GNS3" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "cEOS", + "product_name": "cEOS", + "registry_version": 3, + "status": "experimental", + "symbol": ":/symbols/multilayer_switch.svg", + "usage": "Download:\nCreate a (free) Arista account and login.\nThen navigate to Support / Software Download and download the cEOS-lab image.\n\nInstallation:\nCopy the image to your GNS3VM (or other Linux) server, then run the following commands:\n\ndocker import cEOS-lab.tar.xz ceosimage:4.20.5F\necho \"rm /etc/systemd/system/getty.target.wants/getty@tty1.service\" | \\\ndocker run --name=ceos-container -e CEOS=1 -e container=docker -e EOS_PLATFORM=ceossim -e SKIP_ZEROTOUCH_BARRIER_IN_SYSDBINIT=1 -e ETBA=1 -e INTFTYPE=eth -i ceosimage:4.20.5F sh\ndocker commit --change='CMD [\"/sbin/init\"]' --change='VOLUME /mnt/flash' ceos-container ceosimage:GNS3\ndocker rm ceos-container\n\nUsage:\nThe login is admin, with no password by default", + "vendor_name": "Arista", + "vendor_url": "http://www.arista.com/" + }, { "builtin": true, "category": "guest", - "description": "The on-premise Mail and Directory server. Native compatibility with Microsoft Active Directory. You can control your IT infrastructure from a single point of user management, regardless of the different offices and locations your business has. True Microsoft Outlook compatibility. Your users can continue using their favorite email clients, without any service interruptions and without having to install any plug-in or connector.", - "documentation_url": "https://wiki.zentyal.org/wiki/Zentyal_Wiki", + "description": "vRIN is a VM appliance capable to inject high number of routes into a network. It was tested on GNS3 topologies using VirtualBox and Qemu with up to 1M BGP routes. Runs Quagga. Supported protocols: BGP (IPv4/6), OSPF, OSPFv3, RIP v2, RIPng", "images": [ { - "direct_download_url": "http://download.zentyal.com/zentyal-5.1-development-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-5.1-development-amd64.iso", - "filesize": 947912704, - "md5sum": "dac5623b92c1b361d7805ab8c95c0d99", - "version": "5.1" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.2.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.9.2.qcow2", + "filesize": 957087744, + "md5sum": "40afad2f5136e56f0cb45466847eae63", + "version": "0.9.2" }, { - "direct_download_url": "http://download.zentyal.com/zentyal-5.0.1-development-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-5.0.1-development-amd64.iso", - "filesize": 953155584, - "md5sum": "1ac74be6563f0b21b337c274e62cdd32", - "version": "5.0.1" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.1.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.9.1.qcow2", + "filesize": 1008926720, + "md5sum": "9f09f104917e19649598d9e2a5a3476b", + "version": "0.9.1" }, { - "direct_download_url": "http://download.zentyal.com/zentyal-5.0-development-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-5.0-development-amd64.iso", - "filesize": 914565120, - "md5sum": "ddaa3b2bf2cd6cae8bcfbcb88ca636a8", - "version": "5.0" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.9.qcow2", + "filesize": 922943488, + "md5sum": "b9ec187d7a4743bb02339cf262767959", + "version": "0.9" }, { - "direct_download_url": "http://download.zentyal.com/zentyal-4.2-development-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-4.2-development-amd64.iso", - "filesize": 629284864, - "md5sum": "22b165a49adbc4eff033ced01e71fe3a", - "version": "4.2" - }, - { - "direct_download_url": "http://download.zentyal.com/zentyal-4.1-development-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-4.1-development-amd64.iso", - "filesize": 612206592, - "md5sum": "40a8ff15a60ff862a110a17f941edf2a", - "version": "4.1" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.8.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.8.qcow2", + "filesize": 625999872, + "md5sum": "38eb48d098d3e465422347f7983b9d86", + "version": "0.8" }, { - "direct_download_url": "http://download.zentyal.com/zentyal-4.0-amd64.iso", - "download_url": "http://download.zentyal.com/", - "filename": "zentyal-4.0-amd64.iso", - "filesize": 666370048, - "md5sum": "d63b15f1edcd2c3c03ab3a36e833e211", - "version": "4.0" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.7.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.7.qcow2", + "filesize": 614268928, + "md5sum": "2e9802c403e34a91871922b9a26592ad", + "version": "0.7" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", - "version": "1.0" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.6.qcow2.bz2/download", + "download_url": "https://sourceforge.net/projects/vrin/files", + "filename": "vRIN-0.6.qcow2", + "filesize": 609681408, + "md5sum": "6c763f609c05b5b9a3b1d422ab89dbac", + "version": "0.6" } ], - "maintainer": "GNS3 Team", + "maintainer": "Andras Dosztal", "maintainer_email": "developers@gns3.net", - "name": "Zentyal Server", - "port_name_format": "eth{0}", - "product_name": "Zentyal Server", - "product_url": "http://www.zentyal.com/zentyal-server/", + "name": "vRIN", + "product_name": "vRIN", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 3, + "adapter_type": "e1000", + "adapters": 1, "arch": "x86_64", - "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 + "console_type": "telnet", + "kvm": "allow", + "ram": 256 }, "registry_version": 3, "status": "stable", - "usage": "Follow installation instructions. Once the installation process is done, you can access the web interface using a web browser: https://:8443/", - "vendor_name": "Zentyal S.L.", - "vendor_url": "http://www.zentyal.com/", + "symbol": "vRIN.svg", + "usage": "Connect eth0 to the network where you want vRIN to inject routes into then start the VM. You can either run the VM in normal or headless mode; in the latter case you can access vRIN through serial console. User input is not checked; it's your responsibility to enter valid information.\n\nAfter generating the routes, each Quagga process can be reached through eth0 using their default ports:\n - zebra: 2601\n - rip: 2602\n - ripng: 2603\n - ospf: 2604\n - bgp: 2605\n - ospf6d: 2606\nVTY password: vrin\n\nNotes:\n\n - Route generation may take a while when creating lots of routes (i.e. 10k+).\n - Login (serial / VM window): root / vrin", + "vendor_name": "Andras Dosztal", + "vendor_url": "https://sourceforge.net/projects/vrin/", "versions": [ { "images": { - "cdrom_image": "zentyal-5.1-development-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.9.2.qcow2" }, - "name": "5.1" + "name": "0.9.2" }, { "images": { - "cdrom_image": "zentyal-5.0.1-development-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.9.1.qcow2" }, - "name": "5.0.1" + "name": "0.9.1" }, { "images": { - "cdrom_image": "zentyal-5.0-development-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.9.qcow2" }, - "name": "5.0" + "name": "0.9" }, { "images": { - "cdrom_image": "zentyal-4.2-development-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.8.qcow2" }, - "name": "4.2" + "name": "0.8" }, { "images": { - "cdrom_image": "zentyal-4.1-development-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.7.qcow2" }, - "name": "4.1" + "name": "0.7" }, { "images": { - "cdrom_image": "zentyal-4.0-amd64.iso", - "hda_disk_image": "empty100G.qcow2" + "hda_disk_image": "vRIN-0.6.qcow2" }, - "name": "4.0" + "name": "0.6" } ] }, { + "availability": "service-contract", "builtin": true, "category": "guest", - "description": "The chromium browser", - "docker": { - "adapters": 1, + "description": "Aruba Virtual Mobility Controller", + "first_port_name": "mgmt", + "images": [ + { + "download_url": "http://support.arubanetworks.com/", + "filename": "ArubaOS_VMC_8.2.1.1_65265-disk1.qcow2", + "filesize": 197066752, + "md5sum": "f3bc233f0714e4b1cc127e337d077574", + "version": "8.2.1.1" + }, + { + "download_url": "http://support.arubanetworks.com/", + "filename": "ArubaOS_VMC_8.2.1.1_65265-disk2.qcow2", + "filesize": 19202048, + "md5sum": "18ede2afc7595fdac4508a8a3972e302", + "version": "8.2.1.1" + } + ], + "maintainer": "Gary Ossewaarde", + "maintainer_email": "gary.ossewaarde@gmail.com", + "name": "Aruba VMC", + "port_name_format": "GE0/0/{0}", + "product_name": "Aruba VMC", + "qemu": { + "adapter_type": "e1000", + "adapters": 4, + "arch": "x86_64", "console_type": "vnc", - "image": "gns3/chromium:latest" + "cpus": 3, + "hda_disk_interface": "ide", + "hdb_disk_interface": "ide", + "hdc_disk_interface": "ide", + "kernel_command_line": "-smp cores=3,threads=1,sockets=1 -cpu host -nographic", + "kvm": "require", + "options": "-smp cores=3,threads=1,sockets=1 -cpu host -nographic", + "process_priority": "normal", + "ram": 6144 }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Chromium", - "product_name": "Chromium", - "registry_version": 3, + "registry_version": 4, "status": "stable", - "vendor_name": "Chromium", - "vendor_url": "https://www.chromium.org/" + "vendor_name": "HPE Aruba", + "vendor_url": "arubanetworks.com", + "versions": [ + { + "images": { + "hda_disk_image": "ArubaOS_VMC_8.2.1.1_65265-disk1.qcow2", + "hdb_disk_image": "ArubaOS_VMC_8.2.1.1_65265-disk2.qcow2" + }, + "name": "8.2.1.1" + } + ] }, { "builtin": true, - "category": "guest", - "description": "FortiAuthenticator user identity management appliances strengthen enterprise security by simplifying and centralizing the management and storage of user identity information.", - "documentation_url": "http://docs.fortinet.com/fortiauthenticator/admin-guides", + "category": "router", + "description": "The Alcatel-Lucent 7750 Service Router (SR) portfolio is a suite of multiservice edge routing platforms that deliver high performance, service richness, and creates exceptional value for networking in the cloud era. It is designed for the concurrent delivery of advanced residential, business and wireless broadband IP services, and provides cloud, data center and branch office connectivity for enterprise networking on a common IP edge routing platform.", + "documentation_url": "https://www.alcatel-lucent.com/support", + "first_port_name": "A/1", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v5-build0163-FORTINET.out.kvm.qcow2", - "filesize": 71565312, - "md5sum": "e746b3c6c29b0356ec6b90ed14d4b098", - "version": "5.2.2" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-build0161-FORTINET.out.kvm.qcow2", - "filesize": 72536064, - "md5sum": "c46ad2de4a20296ebd35b3fcc2d81a1d", - "version": "5.2.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v5-build0155-FORTINET.out.kvm.qcow2", - "filesize": 71782400, - "md5sum": "69b55ce7c8094ccd736bbfe8a3262b31", - "version": "5.2.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-build0091-FORTINET.out.kvm.qcow2", - "filesize": 71135232, - "md5sum": "7bdafd32db552954c4c7fe60296fc600", - "version": "5.1.2" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-build0086-FORTINET.out.kvm.qcow2", - "filesize": 71819264, - "md5sum": "960017582fe16e7ce7ab9602600e65fe", - "version": "5.1.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-build0083-FORTINET.out.kvm.qcow2", - "filesize": 72495104, - "md5sum": "eec53c2dbe5d00c8ce2a7ca50226325a", - "version": "5.1.0" + "compression": "zip", + "download_url": "https://www.alcatel-lucent.com/support", + "filename": "TiMOS-SR-13.0.R4-vm.qcow2", + "filesize": 368508928, + "md5sum": "d7a3609e506acdcb55f6db5328dba8ed", + "version": "13.0.R4" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-build0012-FORTINET.out.kvm.qcow2", - "filesize": 62771200, - "md5sum": "2af90bdad68a37f38fda39ee04cf2fba", - "version": "5.0.0" + "compression": "zip", + "download_url": "https://www.alcatel-lucent.com/support", + "filename": "TiMOS-SR-12.0.R6-vm.qcow2", + "filesize": 221511680, + "md5sum": "7d84d97a5664af2e3546bfa832fc1848", + "version": "12.0.R6" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAC_VM_KVM-v500-DATADRIVE.qcow2", - "filesize": 258048, - "md5sum": "09bad6cfe6301930adbc829eb8a67149", - "version": "5.x.x" + "compression": "zip", + "download_url": "https://www.alcatel-lucent.com/support", + "filename": "TiMOS-SR-12.0.R18.qcow2", + "filesize": 223870976, + "md5sum": "d0bba5feaaf09fd02185f25898a6afc7", + "version": "12.0.R18" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiAuthenticator", - "port_name_format": "Port{port1}", - "product_name": "FortiAuthenticator", - "product_url": "https://www.fortinet.com/products/identity-access-management/fortiauthenticator.html", + "name": "Alcatel 7750", + "port_name_format": "1/1/{port1}", + "product_name": "Alcatel 7750", + "product_url": "https://www.alcatel-lucent.com/products/7750-service-router", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapter_type": "e1000", + "adapters": 6, "arch": "x86_64", - "boot_priority": "c", "console_type": "telnet", - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 + "kvm": "require", + "options": "", + "ram": 2048 }, "registry_version": 3, - "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set. First book takes longer.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "status": "experimental", + "usage": "Login is admin and password is admin", + "vendor_name": "Alcatel", + "vendor_url": "https://www.alcatel-lucent.com/", "versions": [ { "images": { - "hda_disk_image": "FAC_VM_KVM-v5-build0163-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + "hda_disk_image": "TiMOS-SR-13.0.R4-vm.qcow2" }, - "name": "5.2.2" + "name": "13.0.R4" }, { "images": { - "hda_disk_image": "FAC_VM_KVM-v500-build0161-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + "hda_disk_image": "TiMOS-SR-12.0.R6-vm.qcow2" }, - "name": "5.2.1" + "name": "12.0.R6" }, { "images": { - "hda_disk_image": "FAC_VM_KVM-v5-build0155-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + "hda_disk_image": "TiMOS-SR-12.0.R18.qcow2" }, - "name": "5.2.0" - }, - { - "images": { - "hda_disk_image": "FAC_VM_KVM-v500-build0091-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" - }, - "name": "5.1.2" - }, - { - "images": { - "hda_disk_image": "FAC_VM_KVM-v500-build0086-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" - }, - "name": "5.1.1" - }, - { - "images": { - "hda_disk_image": "FAC_VM_KVM-v500-build0083-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" - }, - "name": "5.1.0" - }, - { - "images": { - "hda_disk_image": "FAC_VM_KVM-v500-build0012-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" - }, - "name": "5.0.0" + "name": "12.0.R18" } ] }, { "builtin": true, - "category": "guest", - "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more.", - "docker": { - "adapters": 1, - "console_http_path": "/", - "console_http_port": 8888, - "console_type": "http", - "image": "gns3/jupyter:v2" + "category": "router", + "description": "Cisco 1700 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "chassis": "1720", + "nvram": 128, + "platform": "c1700", + "ram": 160, + "slot0": "C1700-MB-1FE", + "startup_config": "ios_base_startup-config.txt" }, + "images": [ + { + "filename": "c1700-adventerprisek9-mz.124-25d.image", + "filesize": 57475320, + "md5sum": "7f4ae12a098391bc0edcaf4f44caaf9d", + "version": "124-25d" + } + ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Jupyter", - "product_name": "Jupyter", + "name": "Cisco 1700", + "product_name": "1700", "registry_version": 3, - "status": "stable", - "vendor_name": "Project Jupyter", - "vendor_url": "http://jupyter.org/" + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ + { + "idlepc": "0x80358a60", + "images": { + "image": "c1700-adventerprisek9-mz.124-25d.image" + }, + "name": "124-25d" + } + ] }, { "builtin": true, - "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.", - "documentation_url": "https://www.kali.org/kali-linux-documentation/", + "category": "router", + "description": "Zeroshell is a Linux distribution for servers and embedded devices aimed at providing the main network services a LAN requires. It is available in the form of Live CD or Compact Flash image and you can configure and administer it using your web browser.", + "documentation_url": "http://www.zeroshell.org/documentation/", "images": [ { - "direct_download_url": "http://cdimage.kali.org/kali-2018.1/kali-linux-2018.1-amd64.iso", - "download_url": "https://www.kali.org/downloads/", - "filename": "kali-linux-2018.1-amd64.iso", - "filesize": 3028500480, - "md5sum": "a3feb90df5b71b3c7f4a02bdddf221d7", - "version": "2018.1" - }, - { - "direct_download_url": "http://cdimage.kali.org/kali-2017.3/kali-linux-2017.3-amd64.iso", - "download_url": "http://cdimage.kali.org/kali-2017.3/", - "filename": "kali-linux-2017.3-amd64.iso", - "filesize": 2886402048, - "md5sum": "b465580c897e94675ac1daf031fa66b9", - "version": "2017.3" - }, - { - "direct_download_url": "http://cdimage.kali.org/kali-2017.2/kali-linux-2017.2-amd64.iso", - "download_url": "http://cdimage.kali.org/kali-2017.2/", - "filename": "kali-linux-2017.2-amd64.iso", - "filesize": 3020619776, - "md5sum": "541654f8f818450dc0db866a0a0f6eec", - "version": "2017.2" - }, - { - "direct_download_url": "http://cdimage.kali.org/kali-2017.1/kali-linux-2017.1-amd64.iso", - "download_url": "http://cdimage.kali.org/kali-2017.1/", - "filename": "kali-linux-2017.1-amd64.iso", - "filesize": 2794307584, - "md5sum": "c8e742283929d7a12dbe7c58e398ff08", - "version": "2017.1" + "compression": "gzip", + "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.2-X86-USB.img.gz", + "download_url": "http://www.zeroshell.org/download/", + "filename": "ZeroShell-3.8.2-X86-USB.img", + "filesize": 1992294400, + "md5sum": "bb8c7f24c86eb59e26ce36ff1979ecd4", + "version": "3.8.2" }, { - "direct_download_url": "http://cdimage.kali.org/kali-2016.2/kali-linux-2016.2-amd64.iso", - "download_url": "http://cdimage.kali.org/kali-2016.2/", - "filename": "kali-linux-2016.2-amd64.iso", - "filesize": 3076767744, - "md5sum": "3d163746bc5148e61ad689d94bc263f9", - "version": "2016.2" + "compression": "gzip", + "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.1-X86-USB.img.gz", + "download_url": "http://www.zeroshell.org/download/", + "filename": "ZeroShell-3.8.1-X86-USB.img", + "filesize": 1992294400, + "md5sum": "49256e396d160e88fbc3a3889e172482", + "version": "3.8.1" }, { - "direct_download_url": "http://cdimage.kali.org/kali-2016.1/kali-linux-2016.1-amd64.iso", - "download_url": "http://cdimage.kali.org/kali-2016.1/", - "filename": "kali-linux-2016.1-amd64.iso", - "filesize": 2945482752, - "md5sum": "2e1230dc14036935b3279dfe3e49ad39", - "version": "2016.1" + "compression": "gzip", + "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.0-X86-USB.img.gz", + "download_url": "http://www.zeroshell.org/download/", + "filename": "ZeroShell-3.8.0-X86-USB.img", + "filesize": 1992294400, + "md5sum": "a16d584c831f3e88ea442a2343d71cfa", + "version": "3.8.0" }, { - "direct_download_url": "http://images.kali.org/Kali-Linux-2.0.0-vm-amd64.7z", - "download_url": "https://www.offensive-security.com/kali-linux-vmware-arm-image-download/", - "filename": "kali-linux-2.0-amd64.iso", - "filesize": 3320512512, - "md5sum": "ef192433017c5d99a156eaef51fd389d", - "version": "2.0" + "compression": "gzip", + "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.7.1-USB.img.gz", + "download_url": "http://www.zeroshell.org/download/", + "filename": "ZeroShell-3.7.1-USB.img", + "filesize": 1992294400, + "md5sum": "22e739a24dc1c233d3eca5d8fedc97c8", + "version": "3.7.1" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Kali Linux", - "product_name": "Kali Linux", + "name": "ZeroShell", + "product_name": "ZeroShell", "qemu": { "adapter_type": "e1000", - "adapters": 8, + "adapters": 4, "arch": "x86_64", "console_type": "vnc", - "kvm": "require", - "ram": 1024 + "kvm": "allow", + "ram": 256 }, "registry_version": 3, "status": "stable", - "usage": "Default password is toor", - "vendor_name": "Kali Linux", - "vendor_url": "https://www.kali.org/", + "usage": "Default WebUI credentials: admin / zeroshell", + "vendor_name": "Fulvio Ricciardi", + "vendor_url": "http://www.zeroshell.org", "versions": [ { "images": { - "cdrom_image": "kali-linux-2018.1-amd64.iso" - }, - "name": "2018.8" - }, - { - "images": { - "cdrom_image": "kali-linux-2017.3-amd64.iso" - }, - "name": "2017.3" - }, - { - "images": { - "cdrom_image": "kali-linux-2017.2-amd64.iso" - }, - "name": "2017.2" - }, - { - "images": { - "cdrom_image": "kali-linux-2017.1-amd64.iso" + "hda_disk_image": "ZeroShell-3.8.2-X86-USB.img" }, - "name": "2017.1" + "name": "3.8.2" }, { "images": { - "cdrom_image": "kali-linux-2016.2-amd64.iso" + "hda_disk_image": "ZeroShell-3.8.1-X86-USB.img" }, - "name": "2016.2" + "name": "3.8.1" }, { "images": { - "cdrom_image": "kali-linux-2016.1-amd64.iso" + "hda_disk_image": "ZeroShell-3.8.0-X86-USB.img" }, - "name": "2016.1" + "name": "3.8.0" }, { "images": { - "cdrom_image": "kali-linux-2.0-amd64.iso" + "hda_disk_image": "ZeroShell-3.7.1-USB.img" }, - "name": "2.0" + "name": "3.7.1" } ] }, { "builtin": true, - "category": "router", - "description": "Today\u2019s enterprises face more demands than ever, from cloud computing to 24/7 availability to increasing security threats. NetScaler ADC, an advanced software-defined application delivery controller, is your networking power player. It provides outstanding delivery of business applications\u2014to any device and any location\u2014with unmatched security, superior L4-7 load balancing, reliable GSLB, and 100 percent uptime. In fact, NetScaler ADC offers up to five times the performance of our closest competitor. Plus our TriScale technology saves you money by allowing your network to scale up or down without additional hardware costs.", - "documentation_url": "https://www.citrix.com/products/netscaler-adc/support.html", + "category": "firewall", + "description": "The VM-Series combines next-generation firewall security and advanced threat prevention to protect your virtualized environments from advanced cyberthreats. The VM-Series natively analyzes all traffic in a single pass to determine the application identity, the content within, and the user identity.", + "documentation_url": "https://www.paloaltonetworks.com/documentation/80/virtualization/virtualization", + "first_port_name": "management", "images": [ { - "download_url": "https://www.citrix.com/lp/try/netscaler-vpx-express.html", - "filename": "NSVPX-KVM-12.0-56.20_nc_32.qcow2", - "filesize": 739704832, - "md5sum": "0ea1c23e3b8eb8451037d46ee472cfa6", - "version": "12.0-56.20" + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-ESX-8.1.0-disk1.vmdk", + "filesize": 2281454080, + "md5sum": "49af8e8225c2e90414bde0be15eaf421", + "version": "8.1.0" }, { - "download_url": "https://www.citrix.com/downloads/netscaler-adc/virtual-appliances/netscaler-vpx-express.html", - "filename": "NSVPX-KVM-11.1-47.14_nc.raw", - "filesize": 21474836480, - "md5sum": "f7100f8b6588e152ce6f64e45b1e99fc", - "version": "11.1-47.14 F" + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-KVM-8.1.0.qcow2", + "filesize": 2260467712, + "md5sum": "459558515b965b2e43fde2842abbae66", + "version": "8.1.0" }, { - "download_url": "https://www.citrix.com/downloads/netscaler-adc/virtual-appliances/netscaler-vpx-express.html", - "filename": "NSVPX-KVM-10.5-56.22_nc.raw", - "filesize": 21474836480, - "md5sum": "b7569f09d4c348c5cf825627169131e7", - "version": "10.5-56.22" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "NetScaler VPX", - "port_name_format": "1/{0}", - "product_name": "NetScaler VPX", - "product_url": "https://www.citrix.com/products/netscaler-adc/", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, - "arch": "x86_64", - "boot_priority": "cd", - "console_type": "telnet", - "hda_disk_interface": "ide", - "kvm": "require", - "options": "-smp 2 -cpu host", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "The image file is large (21.5 GB), make sure you have enough space. Default credentials: nsroot / nsroot", - "vendor_name": "Citrix", - "vendor_url": "http://www.citrix.com/", + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-ESX-8.0.0-disk1.vmdk", + "filesize": 2002713088, + "md5sum": "a505fb1dbcc855ecf98630fd5d329f9a", + "version": "8.0.0" + }, + { + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-KVM-8.0.0.qcow2", + "filesize": 1987444736, + "md5sum": "b6a1ddc8552aff87f05f9c0d4cb54dc3", + "version": "8.0.0" + }, + { + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-ESX-7.1.0-disk1.vmdk", + "filesize": 1871149056, + "md5sum": "e044dc649b7146ee4f619edb0e5f6675", + "version": "7.1.0 (ESX)" + }, + { + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-KVM-7.1.0.qcow2", + "filesize": 1858797568, + "md5sum": "da300253709740068927408239c2e321", + "version": "7.1.0" + }, + { + "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", + "filename": "PA-VM-ESX-6.1.0-disk1.vmdk", + "filesize": 2959736832, + "md5sum": "64b1e81cd54008318235832ea6d71424", + "version": "6.1.0 (ESX)" + } + ], + "maintainer": "Community", + "maintainer_email": "", + "name": "PA-VM", + "port_name_format": "ethernet1/{port1}", + "product_name": "PAN VM-Series Firewall", + "product_url": "https://www.paloaltonetworks.com/products/secure-the-network/virtualized-next-generation-firewall/vm-series", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 25, + "arch": "x86_64", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "kvm": "require", + "options": "-smp 2", + "ram": 4096 + }, + "registry_version": 3, + "status": "experimental", + "symbol": "pan-vm-fw.svg", + "usage": "Default Username: admin\r\nDefault Password: admin\r\nPAN-VM goes through several iterations of host prompts during boot. This is normal and expected.\r\nLogin is available when prompt is PA-VM login:\r\n\r\nGetting Started:\r\nTo configure a static IP address at the console enter the following commands:\r\n\r\nconfigure\r\nset deviceconfig system ip-address netmask default-gateway type static\r\nset deviceconfig system dns-setting servers primary secondary \r\ncommit\r\n", + "vendor_name": "Palo Alto Networks", + "vendor_url": "http://www.paloaltonetworks.com/", "versions": [ { "images": { - "hda_disk_image": "NSVPX-KVM-12.0-56.20_nc_32.qcow2" + "hda_disk_image": "PA-VM-ESX-8.1.0-disk1.vmdk" }, - "name": "12.0-56.20" + "name": "8.1.0 (ESX)" }, { "images": { - "hda_disk_image": "NSVPX-KVM-11.1-47.14_nc.raw" + "hda_disk_image": "PA-VM-KVM-8.1.0.qcow2" }, - "name": "11.1-47.14 F" + "name": "8.1.0" }, { "images": { - "hda_disk_image": "NSVPX-KVM-10.5-56.22_nc.raw" + "hda_disk_image": "PA-VM-ESX-8.0.0-disk1.vmdk" }, - "name": "10.5-56.22" + "name": "8.0.0 (ESX)" + }, + { + "images": { + "hda_disk_image": "PA-VM-KVM-8.0.0.qcow2" + }, + "name": "8.0.0" + }, + { + "images": { + "hda_disk_image": "PA-VM-ESX-7.1.0-disk1.vmdk" + }, + "name": "7.1.0 (ESX)" + }, + { + "images": { + "hda_disk_image": "PA-VM-KVM-7.1.0.qcow2" + }, + "name": "7.1.0" + }, + { + "images": { + "hda_disk_image": "PA-VM-ESX-6.1.0-disk1.vmdk" + }, + "name": "6.1.0 (ESX)" } ] }, { "builtin": true, - "category": "router", - "description": "KEMP Technologies free LoadMaster Application Load Balancer is a fully featured member of our award winning and industry leading Load Balancer family. It can be used without charge in production environments with throughput requirements that don\u2019t exceed 20 Mbps, and for services that do not directly generate revenue. It is an ideal choice for low traffic web sites and applications, DevOps testing environments, technical training environments, and for any other deployments that suit your non-commercial needs.", - "documentation_url": "https://support.kemptechnologies.com/hc/en-us/articles/204427785", + "category": "guest", + "description": "WordPress is a state-of-the-art publishing platform with a focus on aesthetics, web standards, and usability. It is one of the worlds most popular blog publishing applications, includes tons of powerful core functionality, extendable via literally thousands of plugins, and supports full theming. This appliance includes all the standard features in TurnKey Core too.", + "docker": { + "adapters": 1, + "console_type": "telnet", + "image": "turnkeylinux/wordpress-14.2:latest" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "WordPress", + "product_name": "TurnKey Linux WordPress", + "product_url": "https://www.turnkeylinux.org/wordpress", + "registry_version": 3, + "status": "stable", + "usage": "For security reasons there are no default passwords. All passwords are set at system initialization time.", + "vendor_name": "Turnkey Linux", + "vendor_url": "https://www.turnkeylinux.org/" + }, + { + "availability": "service-contract", + "builtin": true, + "category": "firewall", + "description": "Cisco Firepower Threat Defense Virtual NGFW appliances combine Cisco's proven network firewall with the industry\u2019s most effective next-gen IPS and advanced malware protection. All so you can get more visibility, be more flexible, save more, and protect better.", + "documentation_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/ftdv-kvm-qsg.html", + "first_port_name": "Gigabit0/0 (Mgmt)", "images": [ { - "download_url": "http://freeloadbalancer.com/download/", - "filename": "LoadMaster-VLM-7.2.40.0.15707.RELEASE-Linux-KVM-XEN-FREE.disk", - "filesize": 17179869185, - "md5sum": "4284a80141f7974d082a2eed91ec6216", - "version": "7.2.40.0" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.qcow2", + "filesize": 1022885888, + "md5sum": "fafdae94ead07b23d6c8dc5f7a731e74", + "version": "6.2.0 (363)" }, { - "download_url": "http://freeloadbalancer.com/download/", - "filename": "LoadMaster-VLM-7.2.38.0.14750.RELEASE-Linux-KVM-XEN.disk", - "filesize": 17179869185, - "md5sum": "f51f17640793b31a7eab70b53f6ae3ae", - "version": "7.2.38.0" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.vmdk", + "filesize": 1042470912, + "md5sum": "10297ab20526a8b1586c6ce1cd3d9cbd", + "version": "6.2.0 (363) vmdk" }, { - "download_url": "http://freeloadbalancer.com/download/", - "filename": "LoadMaster-VLM-7.2.36.2.14271.RELEASE-Linux-KVM-XEN-FREE.disk", - "filesize": 17179869185, - "md5sum": "eebfc96bd6c1c50827d00647206b59dd", - "version": "7.1.36.2" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.qcow2", + "filesize": 1004601344, + "md5sum": "386ab2b3d6d1d28fd2cd03a83df5e00f", + "version": "6.1.0 (330)" }, { - "download_url": "http://freeloadbalancer.com/download/", - "filename": "LoadMaster-VLM-7.1.35.0.13244.RELEASE-Linux-KVM-XEN-FREE.disk", - "filesize": 17179869185, - "md5sum": "f72e8dffa201c8ec92767872593a52a1", - "version": "7.1.35.0" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.vmdk", + "filesize": 1024162816, + "md5sum": "c1fa58448841b33d5eed6854dc608816", + "version": "6.1.0 (330) vmdk" }, { - "download_url": "http://freeloadbalancer.com/download/", - "filename": "LoadMaster-VLM-7.1.34.1.12802.RELEASE-Linux-KVM-XEN-FREE.disk", - "filesize": 17179869185, - "md5sum": "157b36233bbd9d9dfa18363958b34fd1", - "version": "7.1.34.1" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286306503&catid=268438162&softwareid=286306337&release=6.0.1&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_Threat_Defense_Virtual-6.0.1-1213.vmdk", + "filesize": 714577408, + "md5sum": "bc53461e2ec344814e41a6a8d3a5f774", + "version": "6.0.1 (1213) vmdk" } ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "KEMP Free VLM", - "port_name_format": "eth{0}", - "product_name": "KEMP Free VLM", - "product_url": "http://freeloadbalancer.com/#about", + "maintainer": "Community", + "maintainer_email": "", + "name": "Cisco FTDv", + "port_name_format": "Gigabit0/{port1}", + "product_name": "Cisco FTDv", + "product_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/ftdv-kvm-qsg.html", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 2, + "adapter_type": "e1000", + "adapters": 10, "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "allow", - "options": "-smp 2", - "ram": 2048 + "console_type": "telnet", + "cpus": 4, + "hda_disk_interface": "ide", + "kvm": "require", + "ram": 8192 }, - "registry_version": 3, - "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "Credentials: bal / 1fourall", - "vendor_name": "KEMP", - "vendor_url": "http://freeloadbalancer.com/", + "registry_version": 4, + "status": "experimental", + "symbol": ":/symbols/asa.svg", + "usage": "Default username/password: admin/Admin123.", + "vendor_name": "Cisco Systems", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "LoadMaster-VLM-7.2.40.0.15707.RELEASE-Linux-KVM-XEN-FREE.disk" + "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.qcow2" }, - "name": "7.2.40.0" + "name": "6.2.0 (363)" }, { "images": { - "hda_disk_image": "LoadMaster-VLM-7.2.38.0.14750.RELEASE-Linux-KVM-XEN.disk" + "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.2.0-363.vmdk" }, - "name": "7.2.38.0" + "name": "6.2.0 (363) vmdk" }, { "images": { - "hda_disk_image": "LoadMaster-VLM-7.2.36.2.14271.RELEASE-Linux-KVM-XEN-FREE.disk" + "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.qcow2" }, - "name": "7.2.36.2" + "name": "6.1.0 (330)" }, { "images": { - "hda_disk_image": "LoadMaster-VLM-7.1.35.0.13244.RELEASE-Linux-KVM-XEN-FREE.disk" + "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.1.0-330.vmdk" }, - "name": "7.1.35.0" + "name": "6.1.0 (330) vmdk" }, { "images": { - "hda_disk_image": "LoadMaster-VLM-7.1.34.1.12802.RELEASE-Linux-KVM-XEN-FREE.disk" + "hda_disk_image": "Cisco_Firepower_Threat_Defense_Virtual-6.0.1-1213.vmdk" }, - "name": "7.1.34.1" + "name": "6.0.1 (1213) vmdk" } ] }, { "builtin": true, - "category": "multilayer_switch", - "description": "Cumulus VX is a community-supported virtual appliance that enables cloud admins and network engineers to preview and test Cumulus Networks technology at zero cost. You can build sandbox environments to learn Open Networking concepts, prototype network operations and script & develop applications risk-free. With Cumulus VX, you can get started with Open Networking at your pace, on your time, and in your environment!", - "documentation_url": "http://docs.cumulusnetworks.com/", - "first_port_name": "eth0", + "category": "router", + "description": "Cisco 3620 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "chassis": "3620", + "nvram": 256, + "platform": "c3600", + "ram": 192, + "startup_config": "ios_base_startup-config.txt" + }, "images": [ { - "direct_download_url": "https://s3.amazonaws.com/cumulusfiles/CumulusLinux-3.6.1/cumulus-linux-3.6.1-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.6.1-vx-amd64.qcow2", - "filesize": 1068761088, - "md5sum": "b2145a689ceea668d003a0d2f2faa045", - "version": "3.6.1" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.6.0-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.6.0-vx-amd64.qcow2", - "filesize": 1105199104, - "md5sum": "b5356b6c922f5620d7e6971d44e9be4d", - "version": "3.6.0" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.3-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.5.3-vx-amd64.qcow2", - "filesize": 1084358656, - "md5sum": "4ecbd7341b214fa3c3b27ab11d1df2fb", - "version": "3.5.3" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.3-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.5.2-vx-amd64.qcow2", - "filesize": 996605952, - "md5sum": "87d1d8b297e5ebd77924669dfb7e4c9f", - "version": "3.5.2" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.5.0-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.5.0-vx-amd64.qcow2", - "filesize": 1044250624, - "md5sum": "9ad1f352d0603becf4bcc749b77c99dd", - "version": "3.5.0" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.4.3-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.4.3-vx-amd64.qcow2", - "filesize": 988872704, - "md5sum": "fd9144cdab7cac66cf421a13c6f50ac8", - "version": "3.4.3" - }, - { - "direct_download_url": "http://cumulusfiles.s3.amazonaws.com/cumulus-linux-3.4.2-vx-amd64.qcow2", - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.4.2-vx-amd64.qcow2", - "filesize": 1060700160, - "md5sum": "ca844684784ceeee893d0cd76dc44e3b", - "version": "3.4.2" - }, - { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.4.1-vx-amd64.qcow2", - "filesize": 975503360, - "md5sum": "38319aa04533d91b1121a02f6ed99993", - "version": "3.4.1" - }, - { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.4.0-vx-amd64.qcow2", - "filesize": 918355968, - "md5sum": "d93a15072bc7f8d15268f5e43f735a5e", - "version": "3.4.0" - }, + "filename": "c3620-a3jk8s-mz.122-26c.image", + "filesize": 38947996, + "md5sum": "37b444b29191630e5b688f002de2171c", + "version": "122-26c" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco 3620", + "product_name": "3620", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.3.2-vx-amd64.qcow2", - "filesize": 980090880, - "md5sum": "8364f93cabaa442c13c8c6752a248a5d", - "version": "3.3.2" - }, + "idlepc": "0x603a8bac", + "images": { + "image": "c3620-a3jk8s-mz.122-26c.image" + }, + "name": "122-26c" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Cisco 2691 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "nvram": 256, + "platform": "c3600", + "ram": 192, + "slot0": "GT96100-FE", + "startup_config": "ios_base_startup-config.txt" + }, + "images": [ { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.2.1-vx-amd64-1486153138.ac46c24zd00d13e.qcow2", - "filesize": 1232601088, - "md5sum": "145519af273d7f21ee1845780de7dce3", - "version": "3.2.1" - }, + "filename": "c2691-adventerprisek9-mz.124-15.T14.image", + "filesize": 95976624, + "md5sum": "e7ee5a4a57ed1433e5f73ba6e7695c90", + "version": "124-15.T14" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco 2691", + "product_name": "2691", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.2.0-vx-amd64-1481684769.ac46c24z090952a.qcow2", - "filesize": 1217593344, - "md5sum": "4cd6cee606483d4403d3329a72697ca4", - "version": "3.2.0" - }, + "idlepc": "0x60bcf9f8", + "images": { + "image": "c2691-adventerprisek9-mz.124-15.T14.image" + }, + "name": "124-15.T14" + } + ] + }, + { + "availability": "service-contract", + "builtin": true, + "category": "firewall", + "description": "This is your administrative nerve center for managing critical Cisco network security solutions. It provides complete and unified management over firewalls, application control, intrusion prevention, URL filtering, and advanced malware protection. Easily go from managing a firewall to controlling applications to investigating and remediating malware outbreaks.", + "documentation_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/fmcv-kvm-qsg.html", + "first_port_name": "eth0", + "images": [ { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.1.2-vx-amd64-1478059878.e1f18b3zacdc5c1.qcow2", - "filesize": 1291911168, - "md5sum": "e25d4dde0d2d5378a469380bd1d8d082", - "version": "3.1.2" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual-6.0.0-1005-disk1.vmdk", + "filesize": 1681540608, + "md5sum": "3fed60f1e7d6910c22d13e966acebd7f", + "version": "6.0.0 (1005) vmdk" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.1.1-vx-amd64-1474681409.bd4e10cz3c4e23f.qcow2", - "filesize": 1230372864, - "md5sum": "ad7688721417f167ea3537e60feac3da", - "version": "3.1.1" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual-6.1.0-330.qcow2", + "filesize": 1909391360, + "md5sum": "e3c64179ec46671caeb7ac3e4e58064f", + "version": "6.1.0 (330)" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.1.0-vx-amd64-1471979027.dc7e2adza017cfb.qcow2", - "filesize": 1190789120, - "md5sum": "6a68b8c8ef45c7227e80009e9920729c", - "version": "3.1.0" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.1.0-330-disk1.vmdk", + "filesize": 1938142720, + "md5sum": "8bc77b317cf0007dcbb0f187c1a0c01f", + "version": "6.1.0 (330) vmdk" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.0.1-vx-amd64-1468215109.5d83176z20fa23d.qcow2", - "filesize": 1284112384, - "md5sum": "9f312bf4de1b410ce48e26b38f3bef48", - "version": "3.0.1" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual-6.2.0-362.qcow2", + "filesize": 1949302784, + "md5sum": "26e66882bf5f68adc0eca2f6bef7b613", + "version": "6.2.0 (362)" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "cumulus-linux-3.0.0-vx-amd64-1464279382.a8e7985zf0f5ad5.qcow2", - "filesize": 1237581824, - "md5sum": "ef23948870b77bb1373b9f06de4e7742", - "version": "3.0.0" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.0-362-disk1.vmdk", + "filesize": 1983376384, + "md5sum": "772165cbda3c183bb0e77a1923dd4d09", + "version": "6.2.0 (362) vmdk" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "CumulusVX-2.5.5-cc665123486ac43d.qcow2", - "filesize": 1092550656, - "md5sum": "e0cad2491d47f859828703a0b50cf633", - "version": "2.5.5" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual-6.2.1-342.qcow2", + "filesize": 2113732608, + "md5sum": "29ebbbe71a6b766f6dea81e5ca32c275", + "version": "6.2.1 (342)" }, { - "download_url": "https://cumulusnetworks.com/cumulus-vx/download/", - "filename": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2", - "filesize": 1040973824, - "md5sum": "5128aec2568991ea0586293cb85f7a97", - "version": "2.5.3" + "download_url": "https://software.cisco.com/download/", + "filename": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.1-342-disk1.vmdk", + "filesize": 2150017536, + "md5sum": "4cf5b7fd68075b6f7ee0dd41a4029ca0", + "version": "6.2.1 (342) vmdk" } ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cumulus VX", - "port_name_format": "swp{port1}", - "product_name": "Cumulus VX", - "product_url": "https://cumulusnetworks.com/cumulus-vx/", + "maintainer": "Community", + "maintainer_email": "", + "name": "Cisco FMCv", + "port_name_format": "eth{port1}", + "product_name": "Cisco Firepower Management Center Virtual", + "product_url": "http://www.cisco.com/c/en/us/td/docs/security/firepower/quick_start/kvm/fmcv-kvm-qsg.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 7, + "adapters": 1, "arch": "x86_64", "console_type": "telnet", + "cpus": 4, + "hda_disk_interface": "scsi", "kvm": "require", - "ram": 512 + "options": "", + "ram": 8192 }, - "registry_version": 3, - "status": "stable", - "usage": "Default username is cumulus and password is CumulusLinux!", - "vendor_name": "Cumulus Network", - "vendor_url": "https://www.cumulusnetworks.com", + "registry_version": 4, + "status": "experimental", + "symbol": "cisco-fmcv.svg", + "usage": "BE PATIENT\nOn first boot FMCv generates about 6GB of data. This can take 30 minutes or more. Plan on a long wait after the following line in the boot up:\n\n usbcore: registered new interface driver usb-storage\n\nInitial IP address: 192.168.45.45.\n\nDefault username/password: admin/Admin123.", + "vendor_name": "Cisco Systems", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "cumulus-linux-3.6.1-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.0.0-1005-disk1.vmdk" }, - "name": "3.6.1" + "name": "6.0.0 (1005) vmdk" }, { "images": { - "hda_disk_image": "cumulus-linux-3.6.0-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.1.0-330.qcow2" }, - "name": "3.6.0" + "name": "6.1.0 (330)" }, { "images": { - "hda_disk_image": "cumulus-linux-3.5.3-vx-amd64.qcow2" - }, - "name": "3.5.3" - }, - { - "images": { - "hda_disk_image": "cumulus-linux-3.5.2-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.1.0-330-disk1.vmdk" }, - "name": "3.5.2" + "name": "6.1.0 (330) vmdk" }, { "images": { - "hda_disk_image": "cumulus-linux-3.5.0-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.2.0-362.qcow2" }, - "name": "3.5.0" + "name": "6.2.0 (362)" }, { "images": { - "hda_disk_image": "cumulus-linux-3.4.3-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.0-362-disk1.vmdk" }, - "name": "3.4.3" + "name": "6.2.0 (362) vmdk" }, { "images": { - "hda_disk_image": "cumulus-linux-3.4.2-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual-6.2.1-342.qcow2" }, - "name": "3.4.2" + "name": "6.2.1 (342)" }, { "images": { - "hda_disk_image": "cumulus-linux-3.4.1-vx-amd64.qcow2" + "hda_disk_image": "Cisco_Firepower_Management_Center_Virtual_VMware-6.2.1-342-disk1.vmdk" }, - "name": "3.4.1" - }, + "name": "6.2.1 (342) vmdk" + } + ] + }, + { + "availability": "free", + "builtin": true, + "category": "guest", + "description": "The CentOS Linux distribution is a stable, predictable, manageable and reproducible platform derived from the sources of Red Hat Enterprise Linux (RHEL). We are now looking to expand on that by creating the resources needed by other communities to come together and be able to build on the CentOS Linux platform. And today we start the process by delivering a clear governance model, increased transparency and access. In the coming weeks we aim to publish our own roadmap that includes variants of the core CentOS Linux.", + "documentation_url": "https://wiki.centos.org/", + "images": [ { - "images": { - "hda_disk_image": "cumulus-linux-3.4.0-vx-amd64.qcow2" - }, - "name": "3.4.0" - }, + "download_url": "http://www.osboxes.org/centos/", + "filename": "CentOS 7-1611 (64bit).vmdk", + "filesize": 4365877248, + "md5sum": "1da15f6144eab25c8546f81dd1c34092", + "version": "7-1611" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Centos", + "port_name_format": "eth{0}", + "product_name": "Centos", + "product_url": "https://www.centos.org/download/", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "spice", + "hda_disk_interface": "ide", + "kvm": "require", + "options": "-vga qxl", + "ram": 2048 + }, + "registry_version": 5, + "status": "stable", + "usage": "Username: osboxes.org\nPassword: osboxes.org", + "vendor_name": "CentOS Linux", + "vendor_url": "https://www.centos.org/", + "versions": [ { "images": { - "hda_disk_image": "cumulus-linux-3.3.2-vx-amd64.qcow2" + "hda_disk_image": "CentOS 7-1611 (64bit).vmdk" }, - "name": "3.3.2" - }, + "name": "7-1611" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "Ubuntu is a full-featured Linux operating system which is based on Debian distribution and freely available with both community and professional support, it comes with Unity as its default desktop environment. There are other flavors of Ubuntu available with other desktops as default like Ubuntu Gnome, Lubuntu, Xubuntu, and so on. A tightly-integrated selection of excellent applications is included, and an incredible variety of add-on software is just a few clicks away. A default installation of Ubuntu contains a wide range of software that includes LibreOffice, Firefox, Empathy, Transmission, etc.", + "documentation_url": "https://help.ubuntu.com", + "images": [ { - "images": { - "hda_disk_image": "cumulus-linux-3.2.1-vx-amd64-1486153138.ac46c24zd00d13e.qcow2" - }, - "name": "3.2.1" + "download_url": "http://www.osboxes.org/ubuntu/", + "filename": "Ubuntu_17.04-VM-64bit.vmdk", + "filesize": 4792123392, + "md5sum": "5c82d69c49ba08179e9a94901f67da1f", + "version": "17.04" }, { - "images": { - "hda_disk_image": "cumulus-linux-3.2.0-vx-amd64-1481684769.ac46c24z090952a.qcow2" - }, - "name": "3.2.0" + "download_url": "http://www.osboxes.org/ubuntu/", + "filename": "Ubuntu_16.10_Yakkety-VM-64bit.vmdk", + "filesize": 9133293568, + "md5sum": "c835f24dbb86f5f61c78d992ed38b6b1", + "version": "16.10" }, { - "images": { - "hda_disk_image": "cumulus-linux-3.1.2-vx-amd64-1478059878.e1f18b3zacdc5c1.qcow2" - }, - "name": "3.1.2" - }, + "download_url": "http://www.osboxes.org/ubuntu/", + "filename": "Ubuntu_16.04.3-VM-64bit.vmdk", + "filesize": 4302110720, + "md5sum": "45bccf63f2777e492f022dbf025f67d0", + "version": "16.04" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Ubuntu Desktop Guest", + "port_name_format": "eth{0}", + "product_name": "Ubuntu", + "product_url": "https://www.ubuntu.com/desktop", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "vnc", + "hda_disk_interface": "virtio", + "kvm": "require", + "options": "-vga virtio", + "ram": 1024 + }, + "registry_version": 3, + "status": "stable", + "usage": "Username: osboxes\nPassword: osboxes.org", + "vendor_name": "Canonical Inc.", + "vendor_url": "https://www.ubuntu.com", + "versions": [ { "images": { - "hda_disk_image": "cumulus-linux-3.1.1-vx-amd64-1474681409.bd4e10cz3c4e23f.qcow2" + "hda_disk_image": "Ubuntu_17.04-VM-64bit.vmdk" }, - "name": "3.1.1" + "name": "17.04" }, { "images": { - "hda_disk_image": "cumulus-linux-3.1.0-vx-amd64-1471979027.dc7e2adza017cfb.qcow2" + "hda_disk_image": "Ubuntu_16.10_Yakkety-VM-64bit.vmdk" }, - "name": "3.1.0" + "name": "16.10" }, { "images": { - "hda_disk_image": "cumulus-linux-3.0.1-vx-amd64-1468215109.5d83176z20fa23d.qcow2" + "hda_disk_image": "Ubuntu_16.04.3-VM-64bit.vmdk" }, - "name": "3.0.1" - }, + "name": "16.04" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Dell Networking OS9 (formerly FTOS).\nOS9 powers the Dell Networking product portfolio and has been hardened in some of the largest and most demanding environments in the world to meet stringent reliability, scalability and serviceability requirements. \n\nDownload and uncompress zip files from the Dell support site - corresponding to the FTOS/OS9 image name. Please 'Select FTOS for S-Series OS-EMULATOR'. Import the resulting ISO image.", + "first_port_name": "Management0/0", + "images": [ { - "images": { - "hda_disk_image": "cumulus-linux-3.0.0-vx-amd64-1464279382.a8e7985zf0f5ad5.qcow2" - }, - "name": "3.0.0" + "compression": "zip", + "download_url": "https://www.force10networks.com/CSPortal20/Software/SSeriesDownloads.aspx", + "filename": "FTOS-SI-9.8.0.0.iso", + "filesize": 108115968, + "md5sum": "b9b50eda0a73407dc381792ff7975e24", + "version": "9.8.0" }, { - "images": { - "hda_disk_image": "CumulusVX-2.5.5-cc665123486ac43d.qcow2" - }, - "name": "2.5.5" - }, + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Dell OS9", + "port_name_format": "fortyGigE0/{0}", + "product_name": "Dell OS9", + "product_url": "http://www.dell.com/us/business/p/open-platform-software/pd", + "qemu": { + "adapter_type": "e1000", + "adapters": 6, + "arch": "i386", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "ide", + "kvm": "require", + "ram": 512 + }, + "registry_version": 3, + "status": "experimental", + "usage": "Make sure the Boot priority of the configuration template is HDD or CD.\n\nAbort the BCM process and format the flash after first boot by entering these commands:\nen\nformat flash:\n\nSometimes the flash device is not available after boot.", + "vendor_name": "Dell Inc.", + "vendor_url": "http://www.dell.com/", + "versions": [ { "images": { - "hda_disk_image": "CumulusVX-2.5.3-4eb681f3df86c478.qcow2" + "cdrom_image": "FTOS-SI-9.8.0.0.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "2.5.3" + "name": "9.8.0" } ] }, { "builtin": true, - "category": "firewall", - "description": "Sophos Free Home Use Firewall is a fully equipped software version of the Sophos UTM firewall, available at no cost for home users \u2013 no strings attached. It features full Network, Web, Mail and Web Application Security with VPN functionality and protects up to 50 IP addresses. The Sophos UTM Free Home Use firewall contains its own operating system and will overwrite all data on the computer during the installation process. Therefore, a separate, dedicated computer or VM is needed, which will change into a fully functional security appliance.", - "documentation_url": "https://community.sophos.com/products/unified-threat-management/", + "category": "router", + "description": "VyOS is a community fork of Vyatta, a Linux-based network operating system that provides software-based network routing, firewall, and VPN functionality.", + "documentation_url": "http://vyos.net/wiki/User_Guide", "images": [ { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.506-2.1.iso", - "filesize": 1006057472, - "md5sum": "6b4374f8c5ee66ccdf9683f7349f59cb", - "version": "9.506-2.1" + "direct_download_url": "http://dev.packages.vyos.net/iso/preview/1.2.0-beta1/vyos-1.2.0-beta1-amd64.iso", + "download_url": "http://dev.packages.vyos.net/iso/preview/1.2.0-beta1/", + "filename": "vyos-1.2.0-beta1-amd64.iso", + "filesize": 243269632, + "md5sum": "c2906532d4c7a0d29b61e8eab326d6c7", + "version": "1.2.0-beta1" }, { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.500-9.1.iso", - "filesize": 981612544, - "md5sum": "8531349cdb7f07c94596b19f8e08081a", - "version": "9.500-9.1" + "direct_download_url": "https://downloads.vyos.io/release/1.1.8/vyos-1.1.8-amd64.iso", + "download_url": "https://downloads.vyos.io/?dir=release/1.1.8", + "filename": "vyos-1.1.8-amd64.iso", + "filesize": 241172480, + "md5sum": "95a141d4b592b81c803cdf7e9b11d8ea", + "version": "1.1.8" }, { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.415-1.1.iso", - "filesize": 961087488, - "md5sum": "505004bf5a5d5f2234b2056ec7b553d8", - "version": "9.415-1.1" + "direct_download_url": "https://downloads.vyos.io/release/1.1.7/vyos-1.1.7-amd64.iso", + "download_url": "https://downloads.vyos.io/?dir=release/1.1.7/", + "filename": "vyos-1.1.7-amd64.iso", + "filesize": 245366784, + "md5sum": "9a7f745a0b0db0d4f1d9eee2a437fb54", + "version": "1.1.7" }, { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.413-4.1.iso", - "filesize": 965146624, - "md5sum": "decdccf0fbb1c809c0d3ad1dd322ca5d", - "version": "9.413-4.1" + "direct_download_url": "https://downloads.vyos.io/release/1.1.6/vyos-1.1.6-amd64.iso", + "download_url": "hhttps://downloads.vyos.io/?dir=release/1.1.6/", + "filename": "vyos-1.1.6-amd64.iso", + "filesize": 245366784, + "md5sum": "3128954d026e567402a924c2424ce2bf", + "version": "1.1.6" }, { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.411-3.1.iso", - "filesize": 947019776, - "md5sum": "0940197daccb5993a419b667c71fb341", - "version": "9.411-3.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.409-9.1.iso", - "filesize": 910178304, - "md5sum": "71e9261ac77d230f85d8066f8efef710", - "version": "9.409-9.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.408-4.1.iso", - "filesize": 892516352, - "md5sum": "b10aab2d3dd4d7f6424b9c64a075e550", - "version": "9.408-4.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.407-3.1.iso", - "filesize": 879738880, - "md5sum": "19f736d0766a960a1d37edf98daaf01d", - "version": "9.407-3.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.406-3.1.iso", - "filesize": 873408512, - "md5sum": "b79fb0fd04654068897961ab0594297c", - "version": "9.406-3.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.405-5.1.iso", - "filesize": 864020480, - "md5sum": "cc1687ea73dd7363212c0db5ad784bc6", - "version": "9.405-5.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.403-4.1.iso", - "filesize": 850329600, - "md5sum": "631f2a017deb284705d653905de51604", - "version": "9.403-4.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.358-3.1.iso", - "filesize": 868235264, - "md5sum": "883176415be49e12ab63b46ca749c7b2", - "version": "9.358-3.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.357-1.1.iso", - "filesize": 848300032, - "md5sum": "c34061e770f26a994b725b4b92fe56dc", - "version": "9.357-1.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.356-3.1.iso", - "filesize": 820531200, - "md5sum": "bd155ed98a477d1182367b302bb480f3", - "version": "9.356-3.1" - }, - { - "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", - "filename": "asg-9.217-3.1.iso", - "filesize": 747606016, - "md5sum": "77bae7dcad422dac428984417573acad", - "version": "9.217-3.1" + "direct_download_url": "https://downloads.vyos.io/release/1.1.5/vyos-1.1.5-amd64.iso", + "download_url": "https://downloads.vyos.io/?dir=release/1.1.5/", + "filename": "vyos-1.1.5-amd64.iso", + "filesize": 247463936, + "md5sum": "193179532011ceaa87ee725bd8f22022", + "version": "1.1.5" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", + "filename": "empty8G.qcow2", "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Sophos UTM Home Edition", + "name": "VyOS", "port_name_format": "eth{0}", - "product_name": "Sophos UTM Home Edition", - "product_url": "https://www.sophos.com/en-us/products/free-tools/sophos-utm-home-edition.aspx", + "product_name": "VyOS", + "product_url": "http://vyos.net/", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapter_type": "e1000", + "adapters": 3, "arch": "x86_64", - "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "virtio", + "boot_priority": "dc", + "console_type": "telnet", "kvm": "allow", - "ram": 2048 + "ram": 512 }, "registry_version": 3, "status": "stable", - "usage": "Connect to VNC console for installation, everything else can be set on the WebUI.", - "vendor_name": "Sophos Ltd.", - "vendor_url": "https://www.sophos.com/", + "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.", + "vendor_name": "Linux", + "vendor_url": "http://vyos.net/", "versions": [ { "images": { - "cdrom_image": "asg-9.506-2.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.506-2.1" - }, - { - "images": { - "cdrom_image": "asg-9.500-9.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.500-9.1" - }, - { - "images": { - "cdrom_image": "asg-9.415-1.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.415-1.1" - }, - { - "images": { - "cdrom_image": "asg-9.413-4.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.413-4.1" - }, - { - "images": { - "cdrom_image": "asg-9.411-3.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.411-3.1" - }, - { - "images": { - "cdrom_image": "asg-9.409-9.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.409-9.1" - }, - { - "images": { - "cdrom_image": "asg-9.408-4.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.408-4.1" - }, - { - "images": { - "cdrom_image": "asg-9.407-3.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.407-3.1" - }, - { - "images": { - "cdrom_image": "asg-9.406-3.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.406-3.1" - }, - { - "images": { - "cdrom_image": "asg-9.405-5.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "9.405-5.1" - }, - { - "images": { - "cdrom_image": "asg-9.403-4.1.iso", - "hda_disk_image": "empty30G.qcow2" + "cdrom_image": "vyos-1.2.0-beta1-amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "9.403-4.1" + "name": "1.2.0-beta1" }, { "images": { - "cdrom_image": "asg-9.358-3.1.iso", - "hda_disk_image": "empty30G.qcow2" + "cdrom_image": "vyos-1.1.8-amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "9.358-3.1" + "name": "1.1.8" }, { "images": { - "cdrom_image": "asg-9.357-1.1.iso", - "hda_disk_image": "empty30G.qcow2" + "cdrom_image": "vyos-1.1.7-amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "9.357-1.1" + "name": "1.1.7" }, { "images": { - "cdrom_image": "asg-9.356-3.1.iso", - "hda_disk_image": "empty30G.qcow2" + "cdrom_image": "vyos-1.1.6-amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "9.356-3.1" + "name": "1.1.6" }, { "images": { - "cdrom_image": "asg-9.217-3.1.iso", - "hda_disk_image": "empty30G.qcow2" + "cdrom_image": "vyos-1.1.5-amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "9.217-3.1" + "name": "1.1.5" } ] }, { "builtin": true, "category": "router", - "description": "Cisco 3745 Multiservice Access Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/routers/3745-multiservice-access-router/model.html", + "description": "Cisco 7200 Router", + "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", "dynamips": { - "chassis": "", - "nvram": 256, - "platform": "c3745", - "ram": 256, - "slot0": "GT96100-FE", - "slot1": "NM-1FE-TX", - "slot2": "NM-4T", - "slot3": "", - "slot4": "", - "startup_config": "ios_base_startup-config.txt", - "wic0": "WIC-1T", - "wic1": "WIC-1T", - "wic2": "WIC-1T" + "midplane": "vxr", + "npe": "npe-400", + "nvram": 512, + "platform": "c7200", + "ram": 512, + "slot0": "C7200-IO-FE", + "startup_config": "ios_base_startup-config.txt" }, "images": [ { - "filename": "c3745-adventerprisek9-mz.124-25d.image", - "filesize": 82053028, - "md5sum": "ddbaf74274822b50fa9670e10c75b08f", - "version": "124-25d" + "filename": "c7200-adventerprisek9-mz.124-24.T5.image", + "filesize": 102345240, + "md5sum": "6b89d0d804e1f2bb5b8bda66b5692047", + "version": "124-24.T5" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco 3745", - "product_name": "3745", + "name": "Cisco 7200", + "product_name": "7200", "registry_version": 3, "status": "experimental", "vendor_name": "Cisco", "vendor_url": "http://www.cisco.com", "versions": [ { - "idlepc": "0x60aa1da0", + "idlepc": "0x606df838", "images": { - "image": "c3745-adventerprisek9-mz.124-25d.image" + "image": "c7200-adventerprisek9-mz.124-24.T5.image" }, - "name": "124-25d" + "name": "124-24.T5" } ] }, { "builtin": true, - "category": "router", - "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Forwarding Plane (vFP) VM and is meant to be paired with the Virtual Control Plane (vCP) VM.", - "documentation_url": "http://www.juniper.net/techpubs/", - "first_port_name": "Eth0", - "images": [ + "category": "guest", + "description": "CoreOS is designed for security, consistency, and reliability. Instead of installing packages via yum or apt, CoreOS uses Linux containers to manage your services at a higher level of abstraction. A single service's code and all dependencies are packaged within a container that can be run on one or many CoreOS machines.", + "documentation_url": "https://coreos.com/docs/", + "images": [ { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20171213.img", - "filesize": 2313158656, - "md5sum": "848a6256da7296e8fede368a258c68e4", - "version": "17.4R1.16-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1855.5.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1855.5.0/", + "filename": "coreos_production_qemu_image.1855.5.0.img", + "filesize": 924319744, + "md5sum": "6b5b06bc47446277c5c536c09b5a7988", + "version": "1855.5.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_17.1R1.8-disk1.vmdk", - "filesize": 102820352, - "md5sum": "169dd487b8547d58b12b2918a5667360", - "version": "17.1R1.8-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1688.5.3/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1688.5.3/", + "filename": "coreos_production_qemu_image.1688.5.3.img", + "filesize": 867368960, + "md5sum": "f1015a9573fb6e378d2a5e86b4243acd", + "version": "1688.5.3" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20170216.img", - "filesize": 2313158656, - "md5sum": "e838b8dd116a8b388d8dfd99575e7e98", - "version": "17.1R1.8-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1632.2.1/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1632.2.1/", + "filename": "coreos_production_qemu_image.1632.2.1.img", + "filesize": 885719040, + "md5sum": "facd05ca85eb87e2dc6aefd6779f6806", + "version": "1632.2.1" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_16.2R1.6-disk1.vmdk", - "filesize": 102430208, - "md5sum": "abb15d485cd195b9a693a2f3f091564a", - "version": "16.2R1.6-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1576.4.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1576.4.0/", + "filename": "coreos_production_qemu_image.1576.4.0.img", + "filesize": 849739776, + "md5sum": "7d3c647807afe1f18fd0c76730e612b4", + "version": "1576.4.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20161025.img", - "filesize": 2313158656, - "md5sum": "3105a5af7d859fc24b686e71113413a9", - "version": "16.2R1.6-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1520.8.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1520.8.0/", + "filename": "coreos_production_qemu_image.1520.8.0.img", + "filesize": 842661888, + "md5sum": "a69fb2cd3ae475f9afbc268f7d391e83", + "version": "1520.8.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_16.1R4.7-disk1.vmdk", - "filesize": 102431232, - "md5sum": "c381a23038dc5d4f939b7b5c3d074ce2", - "version": "16.1R4.7-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1465.7.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1465.7.0/", + "filename": "coreos_production_qemu_image.1465.7.0.img", + "filesize": 796590080, + "md5sum": "1db77d47e76d3d9082846584e0f4b4bc", + "version": "1465.7.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20170211.img", - "filesize": 2313158656, - "md5sum": "cdec45ecca1cd9bfefe318b066bd500b", - "version": "16.1R4.7-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1409.7.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1409.7.0/", + "filename": "coreos_production_qemu_image.1409.7.0.img", + "filesize": 812187648, + "md5sum": "b8db4a07bac71468ed47bd09bedc1bdf", + "version": "1409.7.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_16.1R3.10-disk1.vmdk", - "filesize": 102437376, - "md5sum": "03b9d23c0223d8078fa3830c23fcf144", - "version": "16.1R3.10-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1353.8.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1353.8.0/", + "filename": "coreos_production_qemu_image.1353.8.0.img", + "filesize": 795934720, + "md5sum": "f84bf924d7b30190539a14e14d94d4f8", + "version": "1353.8.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20161019.img", - "filesize": 2313158656, - "md5sum": "0fbba19da959c3e76b438128b28726f7", - "version": "16.1R3.10-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1353.7.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1353.7.0/", + "filename": "coreos_production_qemu_image.1353.7.0.img", + "filesize": 796852224, + "md5sum": "2d4ecc377b41ee5b1ffd90090548ebc0", + "version": "1353.7.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_16.1R2.11-disk1.vmdk", - "filesize": 102431232, - "md5sum": "1a90e5dc0c02c8336b9084cbdf17f635", - "version": "16.1R2.11-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.9.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1235.9.0/", + "filename": "coreos_production_qemu_image.1235.9.0.img", + "filesize": 795869184, + "md5sum": "77a256ceaa0da6960391c03ebfe5388c", + "version": "1235.9.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20160902.img", - "filesize": 2313158656, - "md5sum": "09ee97c6c18b392b1b72f5e3e4743c2d", - "version": "16.1R2.11-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.8.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1235.8.0/", + "filename": "coreos_production_qemu_image.1235.8.0.img", + "filesize": 785252352, + "md5sum": "0eec78690fd9f6d3b9e8d8ff41bc10b5", + "version": "1235.8.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vfpc_16.1R1.7-disk1.vmdk", - "filesize": 63884800, - "md5sum": "8475d8b065768f585659a49c50f1d7e1", - "version": "16.1R1.7-ESXi" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.6.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1235.6.0/", + "filename": "coreos_production_qemu_image.1235.6.0.img", + "filesize": 784990208, + "md5sum": "2ff81c223be4bfa40c9ef765bb0d7f26", + "version": "1235.6.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20160617.img", - "filesize": 2313158656, - "md5sum": "5ccf252002184a21413cad23fd239c3f", - "version": "16.1R1.7-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.5.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1235.5.0/", + "filename": "coreos_production_qemu_image.1235.5.0.img", + "filesize": 792592384, + "md5sum": "11aa05a27654b66a4e6dfb1e9f1c7ff9", + "version": "1235.5.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-15.1F6.9.img", - "filesize": 2313158656, - "md5sum": "7328501fdfa9b160955bc136664f1e86", - "version": "15.1F6.9-KVM" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.4.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1235.4.0/", + "filename": "coreos_production_qemu_image.1235.4.0.img", + "filesize": 787415040, + "md5sum": "c59930b3b1ad0716c91a62ac56234d97", + "version": "1235.4.0" }, { - "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", - "filename": "vFPC-20151203.img", - "filesize": 2313158656, - "md5sum": "b3faa91b4d20836a9a6dd6bad2629dd1", - "version": "15.1F4.15" + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1185.5.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1185.5.0/", + "filename": "coreos_production_qemu_image.1185.5.0.img", + "filesize": 754843648, + "md5sum": "97b6eaa9857c68c67e56d7b742d43f5e", + "version": "1185.5.0" + }, + { + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1185.3.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/1185.3.0/", + "filename": "coreos_production_qemu_image.1185.3.0.img", + "filesize": 753926144, + "md5sum": "a1b6b69e5a58a1900b145b024340eff0", + "version": "1185.3.0" + }, + { + "compression": "bzip2", + "direct_download_url": "http://stable.release.core-os.net/amd64-usr/835.9.0/coreos_production_qemu_image.img.bz2", + "download_url": "http://stable.release.core-os.net/amd64-usr/835.9.0/", + "filename": "coreos_production_qemu_image.835.9.img", + "filesize": 635633664, + "md5sum": "768a5df35784a014ba06609da88f5158", + "version": "835.9.0" } ], - "maintainer": "none", + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Juniper vMX vFP", - "port_name_format": "Eth{port1}", - "product_name": "Juniper vMX vFP", - "product_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "name": "CoreOS", + "product_name": "CoreOS", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 12, + "adapters": 1, "arch": "x86_64", "console_type": "telnet", - "kvm": "require", - "options": "-nographic -enable-kvm -smp cpus=3", - "ram": 4096 + "hda_disk_interface": "virtio", + "hdd_disk_interface": "ide", + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, - "status": "experimental", - "symbol": "juniper-vmx.svg", - "usage": "Initial username is root, password is root.\n", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", + "status": "stable", + "vendor_name": "CoreOS, Inc", + "vendor_url": "https://coreos.com/", "versions": [ { "images": { - "hda_disk_image": "vFPC-20171213.img" + "hda_disk_image": "coreos_production_qemu_image.1855.5.0.img" }, - "name": "17.4R1.16-KVM" + "name": "1855.5.0" }, { "images": { - "hda_disk_image": "vfpc_17.1R1.8-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1688.5.3.img" }, - "name": "17.1R1.8-ESXi" + "name": "1688.5.3" }, { "images": { - "hda_disk_image": "vFPC-20170216.img" + "hda_disk_image": "coreos_production_qemu_image.1632.2.1.img" }, - "name": "17.1R1.8-KVM" + "name": "1632.2.1" }, { "images": { - "hda_disk_image": "vfpc_16.2R1.6-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1576.4.0.img" }, - "name": "16.2R1.6-ESXi" + "name": "1576.4.0" }, { "images": { - "hda_disk_image": "vFPC-20161025.img" + "hda_disk_image": "coreos_production_qemu_image.1520.8.0.img" }, - "name": "16.2R1.6-KVM" + "name": "1520.8.0" }, { "images": { - "hda_disk_image": "vfpc_16.1R4.7-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1465.7.0.img" }, - "name": "16.1R4.7-ESXi" + "name": "1465.7.0" }, { "images": { - "hda_disk_image": "vFPC-20170211.img" + "hda_disk_image": "coreos_production_qemu_image.1409.7.0.img" }, - "name": "16.1R4.7-KVM" + "name": "1409.7.0" }, { "images": { - "hda_disk_image": "vfpc_16.1R3.10-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1353.8.0.img" }, - "name": "16.1R3.10-ESXi" + "name": "1353.8.0" }, { "images": { - "hda_disk_image": "vFPC-20161019.img" + "hda_disk_image": "coreos_production_qemu_image.1353.7.0.img" }, - "name": "16.1R3.10-KVM" + "name": "1353.7.0" }, { "images": { - "hda_disk_image": "vfpc_16.1R2.11-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1235.9.0.img" }, - "name": "16.1R2.11-ESXi" + "name": "1235.9.0" }, { "images": { - "hda_disk_image": "vFPC-20160902.img" + "hda_disk_image": "coreos_production_qemu_image.1235.8.0.img" }, - "name": "16.1R2.11-KVM" + "name": "1235.8.0" }, { "images": { - "hda_disk_image": "vfpc_16.1R1.7-disk1.vmdk" + "hda_disk_image": "coreos_production_qemu_image.1235.6.0.img" }, - "name": "16.1R1.7-ESXi" + "name": "1235.6.0" }, { "images": { - "hda_disk_image": "vFPC-20160617.img" + "hda_disk_image": "coreos_production_qemu_image.1235.5.0.img" }, - "name": "16.1R1.7-KVM" + "name": "1235.5.0" }, { "images": { - "hda_disk_image": "vFPC-15.1F6.9.img" + "hda_disk_image": "coreos_production_qemu_image.1235.4.0.img" }, - "name": "15.1F6.9-KVM" + "name": "1235.4.0" }, { "images": { - "hda_disk_image": "vFPC-20151203.img" + "hda_disk_image": "coreos_production_qemu_image.1185.5.0.img" }, - "name": "15.1F4.15" + "name": "1185.5.0" + }, + { + "images": { + "hda_disk_image": "coreos_production_qemu_image.1185.3.0.img" + }, + "name": "1185.3.0" + }, + { + "images": { + "hda_disk_image": "coreos_production_qemu_image.835.9.img" + }, + "name": "835.9.0" } ] }, { "builtin": true, - "category": "firewall", - "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.\n\nJuniper version 12 can support only 1GB of ram.", + "category": "multilayer_switch", + "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", "documentation_url": "http://www.juniper.net/techpubs/", - "first_port_name": "fxp0", "images": [ { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-media-vsrx-vmdisk-18.1R1.9.qcow2", - "filesize": 4418961408, - "md5sum": "4e9393142afc675d5d3d03c5071e70ce", - "version": "18.1R1" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-17.4R1.16.qcow2", - "filesize": 3965386752, - "md5sum": "616c4742b09652318c73a7cc598468e7", + "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "filename": "jinstall-vqfx-10-f-17.4R1.16.img", + "filesize": 553910272, + "md5sum": "dd83313b0f5beaf68488ed3d5e1e5240", "version": "17.4R1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-17.3R2.10.qcow2", - "filesize": 3784572928, - "md5sum": "8f2adfb0515913e0c7db32628a5deb3e", - "version": "17.3R2" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-17.3R1.10.qcow2", - "filesize": 3782541312, - "md5sum": "49b276e9ccdd8588f9e2ff38cccc884a", - "version": "17.3R1" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D130.6.qcow2", - "filesize": 3300917248, - "md5sum": "8ad03f4067b3fe5d2ed378733a5e8541", - "version": "15.1X49-D130" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D120.3.qcow2", - "filesize": 3280273408, - "md5sum": "02cf4df3dc988a407ccd5ddc30ee5385", - "version": "15.1X49-D120" - }, - { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D110.4.qcow2", - "filesize": 3280011264, - "md5sum": "8d74641594eb036b2e2c6b462d541156", - "version": "15.1X49-D110" - }, + "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "filename": "vqfx10k-re-15.1X53-D60.vmdk", + "filesize": 355542528, + "md5sum": "758669e88213fbd7943f5da7f6d7bd59", + "version": "15.1X53-D60" + } + ], + "maintainer": "none", + "maintainer_email": "developers@gns3.net", + "name": "Juniper vQFX RE", + "port_name_format": "em{0}", + "product_name": "Juniper vQFX RE", + "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "qemu": { + "adapter_type": "e1000", + "adapters": 12, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "options": "-nographic -smp 2", + "ram": 1024 + }, + "registry_version": 3, + "status": "experimental", + "symbol": "juniper-vqfx.svg", + "usage": "Initial username is root, password is Juniper (capitol J).\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (em0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (em1) of the PFE. The switch ports connect here on the RE", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", + "versions": [ { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D100.6.qcow2", - "filesize": 3279290368, - "md5sum": "aa29686dd6f2d38f668f23cb4bc9f354", - "version": "15.1X49-D100" + "images": { + "hda_disk_image": "jinstall-vqfx-10-f-17.4R1.16.img" + }, + "name": "17.4R1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D90.7.qcow2", - "filesize": 3189440512, - "md5sum": "a64f3910054d461c4bbb32620008cba3", - "version": "15.1X49-D90" - }, + "images": { + "hda_disk_image": "vqfx10k-re-15.1X53-D60.vmdk" + }, + "name": "15.1X53-D60" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Take control of your online applications with Brocade virtual Traffic Manager (Developer Edition). Enhance customer experience, inspect traffic in real-time, control service levels to differentiate users and services, and reduce your costs with an extensible delivery platform that can grow with your business using ADC-as-a-Service. A fully functional Developer Edition which needs no license key, is limited to 1 Mbps/100 SSL tps throughput, and has access to the Brocade Community support web pages.", + "documentation_url": "http://www.brocade.com/en/products-services/software-networking/application-delivery-controllers/virtual-traffic-manager.html", + "images": [ { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D80.4.qcow2", - "filesize": 3186884608, - "md5sum": "ceb9d06a827c8f8bfb4fd1c9065bdd20", - "version": "15.1X49-D80" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-174.qcow2", + "filesize": 2036465664, + "md5sum": "3c44f385e5faf310ca8e3d46bf4e0564", + "version": "17.4" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D75.5.qcow2", - "filesize": 3116236800, - "md5sum": "197f167f338420d36a6db0f4e84ad376", - "version": "15.1X49-D75" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-173.qcow2", + "filesize": 2022178816, + "md5sum": "c3425d8ec3f8c7789c0a88b8ed6bdf3b", + "version": "17.3" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "media-vsrx-vmdisk-15.1X49-D70.3.qcow2", - "filesize": 3115450368, - "md5sum": "7b11babaef0b775f36281ec1d16f1708", - "version": "15.1X49-D70" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-172.qcow2", + "filesize": 2039742464, + "md5sum": "00d3ab0422eb786bcbd77f5841220956", + "version": "17.2" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-vsrx-vmdisk-15.1X49-D60.qcow2", - "filesize": 3094478848, - "md5sum": "d2ec79880f67e141c4dd662c656da278", - "version": "15.1X49-D60" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-171.qcow2", + "filesize": 1771175936, + "md5sum": "397672218292e739bd33b203a91dbcf4", + "version": "17.1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-vsrx-vmdisk-15.1X49-D50.qcow2", - "filesize": 3063021568, - "md5sum": "60e1b80603c2ecf8aa9920c384209863", - "version": "15.1X49-D50" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-111.qcow2", + "filesize": 12189564928, + "md5sum": "3c9c63e2071d79c64cb4b17b355d2582", + "version": "11.1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-vsrx-vmdisk-15.1X49-D40.qcow2", - "filesize": 3054043136, - "md5sum": "8d929c0262fd1eea3b3d02ef9e73c8c5", - "version": "15.1X49-D40" + "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", + "filename": "VirtualTrafficManager-110.img", + "filesize": 12191531008, + "md5sum": "7fb0bab8e1cf09076e87270b1418ec81", + "version": "11.0" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-vsrx-vmdisk-15.1X49-D20.2.qcow2", - "filesize": 2904096768, - "md5sum": "43e8000870207db47c1382192319eb45", - "version": "15.1X49-D20.2" + "download_url": "http://my.brocade.com/", + "filename": "VirtualTrafficManager-104R1.img", + "filesize": 12193562624, + "md5sum": "395542073d6afb9e62e7d5a7b339c3b3", + "version": "10.4R1" }, { - "download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/", - "filename": "junos-vsrx-12.1X47-D20.7-domestic-disk1.vmdk", - "filesize": 235894272, - "md5sum": "d22ed7a7eb131984e892a4430c5f4730", - "version": "12.1X47-D20.7" + "download_url": "http://my.brocade.com/", + "filename": "VirtualTrafficManager-104.img", + "filesize": 12190220288, + "md5sum": "88e31b072e17de12e241ef442bb5faae", + "version": "10.4" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "vSRX", - "port_name_format": "ge-0/0/{0}", - "product_name": "Juniper vSRX", - "product_url": "https://www.juniper.net/us/en/products-services/security/srx-series/vsrx/", + "name": "vTM DE", + "port_name_format": "eth{0}", + "product_name": "vTM DE", + "product_url": "http://www.brocade.com/en/products-services/software-networking/application-delivery-controllers/virtual-traffic-manager.html", "qemu": { - "adapter_type": "e1000", - "adapters": 6, + "adapter_type": "virtio-net-pci", + "adapters": 8, "arch": "x86_64", + "boot_priority": "c", "console_type": "telnet", + "hda_disk_interface": "virtio", "kvm": "require", - "options": "-smp 2", - "ram": 4096 + "ram": 2048 }, "registry_version": 3, - "status": "experimental", - "usage": "Initial username is root, no password.", - "vendor_name": "Juniper", - "vendor_url": "https://www.juniper.net/us/en/", + "status": "stable", + "symbol": "loadbalancer.svg", + "usage": "Credentials: admin / admin. The device gets its initial IP address using DHCP. After getting an IP address, you can access the initial configuration using the WebUI at https://IP_ADDRESS:9090", + "vendor_name": "Brocade", + "vendor_url": "http://www.brocade.com/", "versions": [ { "images": { - "hda_disk_image": "junos-media-vsrx-vmdisk-18.1R1.9.qcow2" + "hda_disk_image": "VirtualTrafficManager-174.qcow2" }, - "name": "18.1R1" + "name": "17.4" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-17.4R1.16.qcow2" + "hda_disk_image": "VirtualTrafficManager-173.qcow2" }, - "name": "17.4R1" + "name": "17.3" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-17.3R2.10.qcow2" + "hda_disk_image": "VirtualTrafficManager-172.qcow2" }, - "name": "17.3R2" + "name": "17.2" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-17.3R1.10.qcow2" + "hda_disk_image": "VirtualTrafficManager-171.qcow2" }, - "name": "17.3R1" + "name": "17.1" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D130.6.qcow2" + "hda_disk_image": "VirtualTrafficManager-111.qcow2" }, - "name": "15.1X49-D130" + "name": "11.1" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D120.3.qcow2" + "hda_disk_image": "VirtualTrafficManager-110.img" }, - "name": "15.1X49-D120" + "name": "11.0" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D110.4.qcow2" + "hda_disk_image": "VirtualTrafficManager-104R1.img" }, - "name": "15.1X49-D110" + "name": "10.4R1" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D100.6.qcow2" + "hda_disk_image": "VirtualTrafficManager-104.img" }, - "name": "15.1X49-D100" + "name": "10.4" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "vThunder, part of A10 Networks' award-winning A10 Thunder and AX Series Application Delivery Controller (ADC) family, is designed to meet the growing needs of organizations that require a flexible and easy-to-deploy application delivery and server load balancer solution running within a virtualized infrastructure.", + "documentation_url": "https://www.a10networks.com/support", + "first_port_name": "mgmt", + "images": [ + { + "download_url": "https://www.a10networks.com/vthunder-embed", + "filename": "vThunder_410_P9.qcow2", + "filesize": 6311706624, + "md5sum": "6ef0f69ba7a099a7f43b5815c2abc691", + "version": "4.1.0.P9" + }, + { + "download_url": "https://www.a10networks.com/vthunder-embed", + "filename": "vThunder_410_P3.qcow2", + "filesize": 6098780160, + "md5sum": "daacefa4e0eb1cad9b253926624be4b9", + "version": "4.1.0.P3" }, + { + "download_url": "https://www.a10networks.com/vthunder-embed", + "filename": "vth401.GA.12G_Disk.qcow2", + "filesize": 4768464896, + "md5sum": "311806ad414403359216da6119ddb823", + "version": "4.0.1" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "A10 vThunder", + "port_name_format": "ethernet {port1}", + "product_name": "A10 vThunder", + "product_url": "https://www.a10networks.com/products/thunder-series-appliances/vthunder-virtualized-application_delivery_controller/", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 4, + "arch": "x86_64", + "boot_priority": "cd", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 4096 + }, + "registry_version": 3, + "status": "stable", + "symbol": "loadbalancer.svg", + "usage": "Default credentials:\n- CLI: admin / a10.\n- Enable mode: \n\nDefault management IP: 172.31.31.31/24", + "vendor_name": "A10", + "vendor_url": "https://www.a10networks.com/", + "versions": [ { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D90.7.qcow2" + "hda_disk_image": "vThunder_410_P9.qcow2" }, - "name": "15.1X49-D90" + "name": "4.1.0.P9" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D80.4.qcow2" + "hda_disk_image": "vThunder_410_P3.qcow2" }, - "name": "15.1X49-D80" + "name": "4.1.0.P3" }, { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D75.5.qcow2" + "hda_disk_image": "vth401.GA.12G_Disk.qcow2" }, - "name": "15.1X49-D75" + "name": "4.0.1" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "FreeNAS is a Free and Open Source Network Attached Storage (NAS) software appliance. This means that you can use FreeNAS to share data over file-based sharing protocols, including CIFS for Windows users, NFS for Unix-like operating systems, and AFP for Mac OS X users. FreeNAS uses the ZFS file system to store, manage, and protect data. ZFS provides advanced features like snapshots to keep old versions of files, incremental remote backups to keep your data safe on another device without huge file transfers, and intelligent compression, which reduces the size of files so quickly and efficiently that it actually helps transfers happen faster.", + "documentation_url": "https://doc.freenas.org/9.10/freenas.html", + "images": [ + { + "direct_download_url": "https://download.freenas.org/11/11.1-U4/x64/FreeNAS-11.1-U4.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-11.1-U6.iso", + "filesize": 636065792, + "md5sum": "633d6444cad903c707983b54e04fc053", + "version": "11.1 U6" + }, + { + "direct_download_url": "https://download.freenas.org/11/11.1-U4/x64/FreeNAS-11.1-U4.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-11.1-U4.iso", + "filesize": 633833472, + "md5sum": "d75623e5671dbc82f32f4b4f8d46092f", + "version": "11.1 U4" + }, + { + "direct_download_url": "http://download.freenas.org/11/11.1-RELEASE/x64/FreeNAS-11.1-RELEASE.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-11.1-U1.iso", + "filesize": 626601984, + "md5sum": "ccbd9990a5878d35c6bc0cc6eea34b16", + "version": "11.1 U1" + }, + { + "direct_download_url": "http://download.freenas.org/11/11.1-RELEASE/x64/FreeNAS-11.1-RELEASE.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-11.1-RELEASE.iso", + "filesize": 626761728, + "md5sum": "67bea5816bc889169e5e3054362b2053", + "version": "11.1" + }, + { + "direct_download_url": "http://download.freenas.org/11/11.0-U4/x64/FreeNAS-11.0-U4.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-11.0-U4.iso", + "filesize": 567312384, + "md5sum": "4c210f1a6510d1fa95257d81ef569ff8", + "version": "11.0 U4" + }, + { + "direct_download_url": "https://download.freenas.org/9.10/STABLE/latest/x64/FreeNAS-9.10.1-U4.iso", + "download_url": "http://www.freenas.org/download/", + "filename": "FreeNAS-9.10.1-U4.iso", + "filesize": 533098496, + "md5sum": "b4fb14513dcbb4eb4c5596c5911ca9cc", + "version": "9.10 U4" }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "FreeNAS", + "port_name_format": "eth{0}", + "product_name": "FreeNAS", + "product_url": "http://www.openfiler.com/products", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "ide", + "hdb_disk_interface": "ide", + "kvm": "require", + "ram": 8192 + }, + "registry_version": 3, + "status": "stable", + "vendor_name": "iXsystems", + "vendor_url": "http://www.freenas.org", + "versions": [ { "images": { - "hda_disk_image": "media-vsrx-vmdisk-15.1X49-D70.3.qcow2" + "cdrom_image": "FreeNAS-11.1-U6.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "15.1X49-D70" + "name": "11.1 U6" }, { "images": { - "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D60.qcow2" + "cdrom_image": "FreeNAS-11.1-U4.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "15.1X49-D60" + "name": "11.1 U4" }, { "images": { - "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D50.qcow2" + "cdrom_image": "FreeNAS-11.1-U1.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "15.1X49-D50" + "name": "11.1 U1" }, { "images": { - "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D40.qcow2" + "cdrom_image": "FreeNAS-11.1-RELEASE.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "15.1X49-D40" + "name": "11.1" }, { "images": { - "hda_disk_image": "junos-vsrx-vmdisk-15.1X49-D20.2.qcow2" + "cdrom_image": "FreeNAS-11.0-U4.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "15.1X49-D20" + "name": "11.0 U4" }, { "images": { - "hda_disk_image": "junos-vsrx-12.1X47-D20.7-domestic-disk1.vmdk" + "cdrom_image": "FreeNAS-9.10.1-U4.iso", + "hda_disk_image": "empty30G.qcow2", + "hdb_disk_image": "empty30G.qcow2" }, - "name": "12.1X47-D20" + "name": "9.10 U4" } ] }, { - "availability": "free", "builtin": true, - "category": "guest", - "description": "The CentOS Linux distribution is a stable, predictable, manageable and reproducible platform derived from the sources of Red Hat Enterprise Linux (RHEL). We are now looking to expand on that by creating the resources needed by other communities to come together and be able to build on the CentOS Linux platform. And today we start the process by delivering a clear governance model, increased transparency and access. In the coming weeks we aim to publish our own roadmap that includes variants of the core CentOS Linux.", - "documentation_url": "https://wiki.centos.org/", + "category": "multilayer_switch", + "description": "Cisco Virtual IOS L2 allows user to run a IOS switching image on a standard computer.", "images": [ { - "download_url": "http://www.osboxes.org/centos/", - "filename": "CentOS 7-1611 (64bit).vmdk", - "filesize": 4365877248, - "md5sum": "1da15f6144eab25c8546f81dd1c34092", - "version": "7-1611" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "vios_l2-adventerprisek9-m.03.2017.qcow2", + "filesize": 41157632, + "md5sum": "8f14b50083a14688dec2fc791706bb3e", + "version": "15.2(20170321:233949)" + }, + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E", + "filesize": 96862208, + "md5sum": "1a3a21f5697cae64bb930895b986d71e", + "version": "15.2.4055" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Centos", - "port_name_format": "eth{0}", - "product_name": "Centos", - "product_url": "https://www.centos.org/download/", + "name": "Cisco IOSvL2", + "port_name_format": "Gi{1}/{0}", + "port_segment_size": 4, + "product_name": "IOSvL2", + "product_url": "http://virl.cisco.com/", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 1, + "adapter_type": "e1000", + "adapters": 16, "arch": "x86_64", - "boot_priority": "c", - "console_type": "spice", - "hda_disk_interface": "ide", + "console_type": "telnet", + "hda_disk_interface": "virtio", "kvm": "require", - "options": "-vga qxl", - "ram": 2048 + "ram": 768 }, - "registry_version": 5, + "registry_version": 3, "status": "stable", - "usage": "Username: osboxes.org\nPassword: osboxes.org", - "vendor_name": "CentOS Linux", - "vendor_url": "https://www.centos.org/", + "usage": "There is no default password and enable password. There is no default configuration present.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "CentOS 7-1611 (64bit).vmdk" + "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2" }, - "name": "7-1611" + "name": "15.2(20170321:233949)" + }, + { + "images": { + "hda_disk_image": "vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E" + }, + "name": "15.2.4055" } ] }, { "builtin": true, - "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. This is a version of the appliance with a management interface on eth0.", - "docker": { - "adapters": 16, - "environment": "MANAGEMENT_INTERFACE=1", - "image": "gns3/openvswitch:latest" - }, - "documentation_url": "http://openvswitch.org/support/", - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Open vSwitch management", - "product_name": "Open vSwitch", - "registry_version": 3, - "status": "stable", - "symbol": "mgmt_station_docker.svg", - "usage": "The eth0 is the management interface. By default all other interfaces are connected to the br0", - "vendor_name": "Open vSwitch", - "vendor_url": "http://openvswitch.org/" - }, - { - "builtin": true, - "category": "multilayer_switch", - "description": "ExtremeXOS was designed from the ground up to meet the needs of large cloud and private data centers, service providers, intelligent, converged enterprise edge networks, and everything in between. It provides the high performance and rich features required by these diverse environments.", - "documentation_url": "http://www.extremenetworks.com/support/documentation", - "first_port_name": "Management", + "category": "firewall", + "description": "The Cisco ISE platform is a comprehensive, next-generation, contextually-based access control solution. Cisco ISE offers authenticated network access, profiling, posture, guest management, and security group access services along with monitoring, reporting, and troubleshooting capabilities on a single physical or virtual appliance.", + "documentation_url": "http://www.cisco.com/c/en/us/support/security/identity-services-engine/tsd-products-support-series-home.html", "images": [ { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.4.1.4.iso", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exosvm-22.4.1.4.iso", - "filesize": 49993728, - "md5sum": "2134a511084519a5f8ad00a6f7cd71a9", - "version": "22.4.1.4" - }, - { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.2.1.5.iso", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exosvm-22.2.1.5.iso", - "filesize": 44578816, - "md5sum": "bf51fd5b3c5e9dab10a616055265bcf2", - "version": "22.2.1.5" - }, - { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.1.1.5.iso", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exosvm-22.1.1.5.iso", - "filesize": 44220416, - "md5sum": "df3897ca2d7c7053582587ed120114fa", - "version": "22.1.1.5" - }, - { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/vm-21.1.2.14.iso?raw=true", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exosvm-21.1.2.14.iso", - "filesize": 41101312, - "md5sum": "de0752d56e41d92027ce1fccd604b14b", - "version": "21.1.2.14" - }, - { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/vm-21.1.1.4.iso?raw=true", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exosvm-21.1.1.4.iso", - "filesize": 41046016, - "md5sum": "4d5db0e01a39b08775ed6a3e2c8bf663", - "version": "21.1.1.4" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.2.0", + "filename": "ise-2.2.0.470.SPA.x86_64.iso", + "filesize": 8044992512, + "md5sum": "7fe5e730d0a51ef66e69d1463717ff3f", + "version": "2.2.0.470" }, { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.2.1.6.iso?raw=true", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exospc-16.2.1.6.iso", - "filesize": 36306944, - "md5sum": "b4be339afb02c03dcb4349630c1adb4f", - "version": "16.2.1.6" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.1.0", + "filename": "ise-2.1.0.474.SPA.x86_64.iso", + "filesize": 6161475584, + "md5sum": "8dc844696790f2f5f37054899fab3e2a", + "version": "2.1.0.474" }, { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.1.3.6.iso?raw=true", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exospc-16.1.3.6.iso", - "filesize": 35758080, - "md5sum": "4c17b2bf2a4909527f6c866a68ba406e", - "version": "16.1.3.6" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.0.1", + "filename": "ise-2.0.1.130.SPA.x86_64.iso", + "filesize": 5129990144, + "md5sum": "25ac842fdbb61f6e75f2f8b26beea28e", + "version": "2.0.1.130" }, { - "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.1.2.14.iso?raw=true", - "download_url": "https://github.com/extremenetworks/Virtual_EXOS", - "filename": "exospc-16.1.2.14.iso", - "filesize": 35743744, - "md5sum": "140cdc11f426156ffcbde150b2f46768", - "version": "16.1.2.14" + "download_url": "https://software.cisco.com/download/home/283801620/type/283802505/release/2.0", + "filename": "ise-2.0.0.306.SPA.x86_64.iso", + "filesize": 5088827392, + "md5sum": "b7a454ee235db29b5c208b19bfd1fbd1", + "version": "2.0.0.306" }, { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty200G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty8G.qcow2", - "filesize": 197120, - "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "filename": "empty200G.qcow2", + "filesize": 200192, + "md5sum": "d1686d2f25695dee32eab9a6f4652c7c", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "EXOS", - "port_name_format": "Port{port1}", - "product_name": "EXOS", - "product_url": "http://www.extremenetworks.com/product/extremexos-network-operating-system", + "name": "Cisco ISE", + "port_name_format": "GigabitEthernet{0}", + "product_name": "Identity Services Engine", + "product_url": "http://www.cisco.com/c/en/us/products/security/identity-services-engine/index.html", "qemu": { "adapter_type": "e1000", - "adapters": 13, + "adapters": 2, "arch": "x86_64", "boot_priority": "cd", - "console_type": "telnet", + "console_type": "vnc", "hda_disk_interface": "ide", "kvm": "require", - "options": "-smp 2 -cpu core2duo", - "ram": 256 + "options": "-smp 2 -smbios type=1,product=KVM", + "ram": 4096 }, "registry_version": 3, - "status": "stable", - "usage": "You can change the console to telnet after install. Default user: admin (no password set)", - "vendor_name": "Extreme Networks", - "vendor_url": "http://www.extremenetworks.com/", + "status": "experimental", + "symbol": "cisco-ise.svg", + "usage": "Starting ISE will start an installation of ISE onto a blank 200GB Drive. This will take time. The intial username is setup.\n\nThis appliance requires KVM. You may try it on a system without KVM, but it will run really slow, if at all.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "cdrom_image": "exosvm-22.4.1.4.iso", - "hda_disk_image": "empty8G.qcow2" + "cdrom_image": "ise-2.2.0.470.SPA.x86_64.iso", + "hda_disk_image": "empty200G.qcow2" }, - "name": "22.4.1.4" + "name": "2.2.0.470" }, { "images": { - "cdrom_image": "exosvm-22.2.1.5.iso", - "hda_disk_image": "empty8G.qcow2" + "cdrom_image": "ise-2.1.0.474.SPA.x86_64.iso", + "hda_disk_image": "empty200G.qcow2" }, - "name": "22.2.1.5" + "name": "2.1.0.474" }, { "images": { - "cdrom_image": "exosvm-22.1.1.5.iso", - "hda_disk_image": "empty8G.qcow2" + "cdrom_image": "ise-2.0.1.130.SPA.x86_64.iso", + "hda_disk_image": "empty200G.qcow2" }, - "name": "22.1.1.5" + "name": "2.0.1.130" }, { "images": { - "cdrom_image": "exosvm-21.1.2.14.iso", - "hda_disk_image": "empty8G.qcow2" + "cdrom_image": "ise-2.0.0.306.SPA.x86_64.iso", + "hda_disk_image": "empty200G.qcow2" }, - "name": "21.1.2.14" - }, + "name": "2.0.0.306" + } + ] + }, + { + "builtin": true, + "category": "multilayer_switch", + "description": "The VOSS VM is a software emulation of a VSP8K switch.", + "documentation_url": "http://www.extremenetworks.com/support/documentation", + "first_port_name": "Mgmt", + "images": [ { - "images": { - "cdrom_image": "exosvm-21.1.1.4.iso", - "hda_disk_image": "empty8G.qcow2" - }, - "name": "21.1.1.4" + "direct_download_url": "https://stackingtool.extremenetworks.com/github/VOSSGNS3.7.1.0.0.qcow2", + "filename": "VOSSGNS3.7.1.0.0.qcow2", + "filesize": 193724416, + "md5sum": "7bb2974efe1a1ab857debd9fa894dbe7", + "version": "voss_7.1.0.0" }, { - "images": { - "cdrom_image": "exospc-16.2.1.6.iso", - "hda_disk_image": "empty8G.qcow2" - }, - "name": "16.2.1.6" - }, + "direct_download_url": "https://stackingtool.extremenetworks.com/github/VOSSGNS3.7.0.0.0.img", + "filename": "VOSSGNS3.7.0.0.0.img", + "filesize": 419430400, + "md5sum": "65fe97461156aa88c836a90be1287649", + "version": "voss_7.0.0.0" + } + ], + "maintainer": "Extreme Networks", + "maintainer_email": "voss@extremenetworks.com", + "name": "VOSS VM", + "port_name_format": "1/{port1}", + "product_name": "VOSS_VM", + "qemu": { + "adapter_type": "e1000", + "adapters": 9, + "arch": "i386", + "console_type": "telnet", + "hda_disk_interface": "ide", + "kvm": "allow", + "options": "-nographic", + "ram": 1024 + }, + "registry_version": 3, + "status": "experimental", + "symbol": "ethernet_switch.svg", + "usage": "Boot up and login is rwa/rwa", + "vendor_name": "Extreme Networks", + "vendor_url": "http://www.extremenetworks.com", + "versions": [ { "images": { - "cdrom_image": "exospc-16.1.3.6.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "VOSSGNS3.7.1.0.0.qcow2" }, - "name": "16.1.3.6" + "name": "7.1.0.0" }, { "images": { - "cdrom_image": "exospc-16.1.2.14.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "VOSSGNS3.7.0.0.0.img" }, - "name": "16.1.2.14" + "name": "7.0.0.0" } ] }, { + "availability": "free-to-try", "builtin": true, "category": "guest", - "description": "This appliance provides RADIUS and TACACS+ services with preconfigured users and groups.", - "docker": { - "adapters": 1, - "console_type": "telnet", - "image": "adosztal/aaa:latest" - }, - "maintainer": "Andras Dosztal", - "maintainer_email": "developers@gns3.net", - "name": "AAA", - "product_name": "AAA", - "registry_version": 3, - "status": "stable", - "symbol": "linux_guest.svg", - "usage": "RADIUS users:\n- alice\n- bob\n\nTACACS+ users:\n- gns3 (role: admin)\n- readonly\n\nAll users, as well as the RADIUS/TACACS+ clients have the password 'gns3' set.", - "vendor_name": "Ubuntu", - "vendor_url": "https://www.ubuntu.com/" - }, - { - "builtin": true, - "category": "guest", - "description": "webterm is a debian based networking toolbox.\nIt contains the firefox web browser plus the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump, ab(apache benchmark) and the multicast testing tools msend/mreceive.", - "docker": { - "adapters": 1, - "console_type": "vnc", - "image": "gns3/webterm:latest" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "webterm", - "product_name": "webterm", - "registry_version": 3, - "status": "stable", - "symbol": "firefox.svg", - "usage": "The /root directory is persistent.", - "vendor_name": "webterm", - "vendor_url": "https://www.debian.org" - }, - { - "builtin": true, - "category": "router", - "description": "vThunder, part of A10 Networks' award-winning A10 Thunder and AX Series Application Delivery Controller (ADC) family, is designed to meet the growing needs of organizations that require a flexible and easy-to-deploy application delivery and server load balancer solution running within a virtualized infrastructure.", - "documentation_url": "https://www.a10networks.com/support", - "first_port_name": "mgmt", + "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", + "documentation_url": "https://technet.microsoft.com/en-us/library/cc498727.aspx", "images": [ { - "download_url": "https://www.a10networks.com/vthunder-embed", - "filename": "vThunder_410_P9.qcow2", - "filesize": 6311706624, - "md5sum": "6ef0f69ba7a099a7f43b5815c2abc691", - "version": "4.1.0.P9" + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "MSEdge-Win10-VMWare-disk1.vmdk", + "filesize": 5636608512, + "md5sum": "fef74c69e1949480d4e2095324a169af", + "version": "10 w/ Edge" }, { - "download_url": "https://www.a10networks.com/vthunder-embed", - "filename": "vThunder_410_P3.qcow2", - "filesize": 6098780160, - "md5sum": "daacefa4e0eb1cad9b253926624be4b9", - "version": "4.1.0.P3" + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "MSEdge_-_Win10_preview.vmdk", + "filesize": 10907287552, + "md5sum": "e06d97b871581d91b7363bf72a81553d", + "version": "10 w/ Edge" }, { - "download_url": "https://www.a10networks.com/vthunder-embed", - "filename": "vth401.GA.12G_Disk.qcow2", - "filesize": 4768464896, - "md5sum": "311806ad414403359216da6119ddb823", - "version": "4.0.1" + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "IE11_-_Win8.1-disk1.vmdk", + "filesize": 5704344064, + "md5sum": "6c8691c7d58bf2c33f6ca242ace6b9bd", + "version": "8.1 w/ IE11" + }, + { + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "IE11_-_Win7-disk1.vmdk", + "filesize": 4101495296, + "md5sum": "5733cc93a6ed756c2358f0a383b411a8", + "version": "7 w/ IE11" + }, + { + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "IE10_-_Win7-disk1.vmdk", + "filesize": 4062174208, + "md5sum": "ed18b5903fb7d778b847c8d1cef807c4", + "version": "7 w/ IE10" + }, + { + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "IE9_-_Win7-disk1.vmdk", + "filesize": 4040829440, + "md5sum": "82370cfa215002a49651b773a3a569f2", + "version": "7 w/ IE9" + }, + { + "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", + "filename": "IE8_-_Win7-disk1.vmdk", + "filesize": 4228026368, + "md5sum": "63456b42eb8e184b3e7c675645a3c32c", + "version": "7 w/ IE8" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "A10 vThunder", - "port_name_format": "ethernet {port1}", - "product_name": "A10 vThunder", - "product_url": "https://www.a10networks.com/products/thunder-series-appliances/vthunder-virtualized-application_delivery_controller/", + "name": "Windows", + "port_name_format": "NIC{port1}", + "product_name": "Windows", + "product_url": "https://www.microsoft.com/en-us/windows", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapter_type": "e1000", + "adapters": 1, "arch": "x86_64", - "boot_priority": "cd", - "console_type": "telnet", - "hda_disk_interface": "virtio", + "boot_priority": "c", + "console_type": "vnc", + "hda_disk_interface": "sata", "kvm": "require", - "ram": 4096 + "ram": 1024 }, - "registry_version": 3, + "registry_version": 4, "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "Default credentials:\n- CLI: admin / a10.\n- Enable mode: \n\nDefault management IP: 172.31.31.31/24", - "vendor_name": "A10", - "vendor_url": "https://www.a10networks.com/", + "symbol": "microsoft.svg", + "usage": "These virtual machines expire after 90 days; i.e. you have to re-create them in your project after this time but you don't have to re-import the appliance.\n\nDefault credentials: IEUser / Passw0rd!", + "vendor_name": "Microsoft", + "vendor_url": "http://www.microsoft.com/", "versions": [ { "images": { - "hda_disk_image": "vThunder_410_P9.qcow2" + "hda_disk_image": "MSEdge-Win10-VMWare-disk1.vmdk" }, - "name": "4.1.0.P9" + "name": "10 w/ Edge" }, { "images": { - "hda_disk_image": "vThunder_410_P3.qcow2" + "hda_disk_image": "MSEdge_-_Win10_preview.vmdk" }, - "name": "4.1.0.P3" + "name": "10 w/ Edge (Preview)" }, { "images": { - "hda_disk_image": "vth401.GA.12G_Disk.qcow2" + "hda_disk_image": "IE11_-_Win8.1-disk1.vmdk" }, - "name": "4.0.1" + "name": "8.1 w/ IE11" + }, + { + "images": { + "hda_disk_image": "IE11_-_Win7-disk1.vmdk" + }, + "name": "7 w/ IE11" + }, + { + "images": { + "hda_disk_image": "IE10_-_Win7-disk1.vmdk" + }, + "name": "7 w/ IE10" + }, + { + "images": { + "hda_disk_image": "IE9_-_Win7-disk1.vmdk" + }, + "name": "7 w/ IE9" + }, + { + "images": { + "hda_disk_image": "IE8_-_Win7-disk1.vmdk" + }, + "name": "7 w/ IE8" } ] }, { "builtin": true, "category": "firewall", - "description": "OPNsense is an open source, easy-to-use and easy-to-build FreeBSD based firewall and routing platform. OPNsense includes most of the features available in expensive commercial firewalls, and more in many cases. It brings the rich feature set of commercial offerings with the benefits of open and verifiable sources.\n\nOPNsense started as a fork of pfSense\u00ae and m0n0wall in 2014, with its first official release in January 2015. The project has evolved very quickly while still retaining familiar aspects of both m0n0wall and pfSense. A strong focus on security and code quality drives the development of the project.", - "documentation_url": "https://wiki.opnsense.org/", + "description": "The Adaptive Security Virtual Appliance is a virtualized network security solution based on the market-leading Cisco ASA 5500-X Series firewalls. It supports both traditional and next-generation software-defined network (SDN) and Cisco Application Centric Infrastructure (ACI) environments to provide policy enforcement and threat inspection across heterogeneous multisite environments.", + "documentation_url": "http://www.cisco.com/c/en/us/support/security/virtual-adaptive-security-appliance-firewall/products-installation-guides-list.html", + "first_port_name": "Management0/0", "images": [ { - "download_url": "https://opnsense.c0urier.net/releases/18.1/", - "filename": "OPNsense-18.1.6-OpenSSL-nano-amd64.img", - "filesize": 272003136, - "md5sum": "042f328380ad0c8008759c43435e8843", - "version": "18.1.6" + "download_url": "https://software.cisco.com/download/home/286119613/type/280775065/release/9.9.2", + "filename": "asav992.qcow2", + "filesize": 204865536, + "md5sum": "0cba453dbf70313d8d63a00700618f52", + "version": "9.9.2" }, { - "download_url": "https://opnsense.c0urier.net/releases/17.7/", - "filename": "OPNsense-17.7.5-OpenSSL-nano-amd64.img", - "filesize": 237038601, - "md5sum": "6ec5b7f99cc727f904bbf2aaadcab0b8", - "version": "17.7.5" + "download_url": "https://software.cisco.com/download/home/286119613/type/280775065/release/9.8.3", + "filename": "asav983.qcow2", + "filesize": 199491584, + "md5sum": "f9cf40b2d555a1bea6d36bc83f06ea33", + "version": "9.8.3" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav981-5.qcow2", + "filesize": 193069056, + "md5sum": "77b3ca856dd2df476bcda34e218425ca", + "version": "9.8.1-5" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&flowid=50242&softwareid=280775065&release=9.8.1&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "asav981.qcow2", + "filesize": 193069056, + "md5sum": "8d3612fe22b1a7dec118010e17e29411", + "version": "9.8.1" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav971-8.qcow2", + "filesize": 197066752, + "md5sum": "b2486c8d0f6fda149ce877208b816818", + "version": "9.7.1-8" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav971-4.qcow2", + "filesize": 197066752, + "md5sum": "f9a671d1ceaf983f7241f19df15e787f", + "version": "9.7.1-4" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav971-2.qcow2", + "filesize": 199753728, + "md5sum": "ff036b23f5dbb2bcf1e6530476cc1989", + "version": "9.7.1-2" + }, + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "asav971.qcow2", + "filesize": 198443008, + "md5sum": "07eef9b8ca489a8ad37448fadf45a673", + "version": "9.7.1" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav963-8.qcow2", + "filesize": 168427520, + "md5sum": "8b8a45b94a302dae8076e7ec90c7d4c2", + "version": "9.6.3-8" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=286119613&flowid=50242&softwareid=280775065&release=9.6.3&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "asav963-1.qcow2", + "filesize": 172294144, + "md5sum": "d6a5c8d7bff5e69c5987ca664a52dbd8", + "version": "9.6.3-1" + }, + { + "download_url": "https://software.cisco.com/download/type.html?mdfid=286119613&flowid=50242", + "filename": "asav962-13.qcow2", + "filesize": 177668096, + "md5sum": "2a6bec030fcaef31b611051180cc142c", + "version": "9.6.2-13" + }, + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "asav962.qcow2", + "filesize": 177274880, + "md5sum": "dfb8110ce38da4588e994865d5a9656a", + "version": "9.6.2" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "OPNsense", - "port_name_format": "em{0}", - "product_name": "OPNsense", - "product_url": "https://opnsense.org/about/about-opnsense/", + "name": "Cisco ASAv", + "port_name_format": "Gi0/{0}", + "product_name": "ASAv", + "product_url": "http://www.cisco.com/c/en/us/products/security/virtual-adaptive-security-appliance-firewall/index.html", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapter_type": "e1000", + "adapters": 8, "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", + "console_type": "vnc", "hda_disk_interface": "virtio", "kvm": "require", - "ram": 1024 + "ram": 2048 }, "registry_version": 3, "status": "stable", - "usage": "Default credentials: root / opnsense\nDefault IP address: 192.168.1.1", - "vendor_name": "Deciso B.V.", - "vendor_url": "https://opnsense.org/", + "symbol": ":/symbols/asa.svg", + "usage": "There is no default password and enable password. A default configuration is present. ASAv goes through a double-boot before becoming active. This is normal and expected.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "OPNsense-18.1.6-OpenSSL-nano-amd64.img" + "hda_disk_image": "asav992.qcow2" }, - "name": "18.1.6" + "name": "9.9.2" }, { "images": { - "hda_disk_image": "OPNsense-17.7.5-OpenSSL-nano-amd64.img" + "hda_disk_image": "asav983.qcow2" }, - "name": "17.7.5" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Riverbed SteelHead delivers not only best-in-class optimization \u2013 but essential visibility and control as companies transition to the Hybrid WAN. SteelHead CX for Virtual is available as a virtual solution on most major hypervisors including VMware vSphere, Microsoft Hyper-V and KVM. It accelerates the performance of all applications including on-premises, cloud, and SaaS across the hybrid enterprise for organizations that want to deliver the best end user experience \u2013 while leveraging the scalability and cost benefits of virtualization.\n\nSteelHead CX for Virtual uniquely delivers the best application performance along with application, network and end user visibility, and simplified control management of users, applications and networks based on business requirements and decisions.", - "documentation_url": "https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html", - "images": [ + "name": "9.8.3" + }, { - "download_url": "http://www.riverbed.com/products/steelhead/Free-90-day-Evaluation-SteelHead-CX-Virtual-Edition.html", - "filename": "mgmt-9.2.0.img", - "filesize": 2555772928, - "md5sum": "ca20a76b2556c0cd313d0b0de528e94d", - "version": "9.2.0" + "images": { + "hda_disk_image": "asav981-5.qcow2" + }, + "name": "9.8.1-5" }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "SteelHead CX 555V", - "product_name": "SteelHead CX 555V", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, - "arch": "x86_64", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "usage": "You don't need to run the installer script when using GNS3 VM. Uncompress the downloaded archive using this command: tar xzSf \nDefault credentials: admin / password", - "vendor_name": "Riverbed Technology", - "vendor_url": "http://www.riverbed.com", - "versions": [ { "images": { - "hda_disk_image": "mgmt-9.2.0.img", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "asav981.qcow2" }, - "name": "9.2.0" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "Zeroshell is a Linux distribution for servers and embedded devices aimed at providing the main network services a LAN requires. It is available in the form of Live CD or Compact Flash image and you can configure and administer it using your web browser.", - "documentation_url": "http://www.zeroshell.org/documentation/", - "images": [ + "name": "9.8.1" + }, { - "compression": "gzip", - "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.2-X86-USB.img.gz", - "download_url": "http://www.zeroshell.org/download/", - "filename": "ZeroShell-3.8.2-X86-USB.img", - "filesize": 1992294400, - "md5sum": "bb8c7f24c86eb59e26ce36ff1979ecd4", - "version": "3.8.2" + "images": { + "hda_disk_image": "asav971-8.qcow2" + }, + "name": "9.7.1-8" }, { - "compression": "gzip", - "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.1-X86-USB.img.gz", - "download_url": "http://www.zeroshell.org/download/", - "filename": "ZeroShell-3.8.1-X86-USB.img", - "filesize": 1992294400, - "md5sum": "49256e396d160e88fbc3a3889e172482", - "version": "3.8.1" + "images": { + "hda_disk_image": "asav971-4.qcow2" + }, + "name": "9.7.1-4" }, { - "compression": "gzip", - "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.8.0-X86-USB.img.gz", - "download_url": "http://www.zeroshell.org/download/", - "filename": "ZeroShell-3.8.0-X86-USB.img", - "filesize": 1992294400, - "md5sum": "a16d584c831f3e88ea442a2343d71cfa", - "version": "3.8.0" + "images": { + "hda_disk_image": "asav971-2.qcow2" + }, + "name": "9.7.1-2" }, { - "compression": "gzip", - "direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.7.1-USB.img.gz", - "download_url": "http://www.zeroshell.org/download/", - "filename": "ZeroShell-3.7.1-USB.img", - "filesize": 1992294400, - "md5sum": "22e739a24dc1c233d3eca5d8fedc97c8", - "version": "3.7.1" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "ZeroShell", - "product_name": "ZeroShell", - "qemu": { - "adapter_type": "e1000", - "adapters": 4, - "arch": "x86_64", - "console_type": "vnc", - "kvm": "allow", - "ram": 256 - }, - "registry_version": 3, - "status": "stable", - "usage": "Default WebUI credentials: admin / zeroshell", - "vendor_name": "Fulvio Ricciardi", - "vendor_url": "http://www.zeroshell.org", - "versions": [ + "images": { + "hda_disk_image": "asav971.qcow2" + }, + "name": "9.7.1" + }, { "images": { - "hda_disk_image": "ZeroShell-3.8.2-X86-USB.img" + "hda_disk_image": "asav963-8.qcow2" }, - "name": "3.8.2" + "name": "9.6.3-8" }, { "images": { - "hda_disk_image": "ZeroShell-3.8.1-X86-USB.img" + "hda_disk_image": "asav963-1.qcow2" }, - "name": "3.8.1" + "name": "9.6.3-1" }, { "images": { - "hda_disk_image": "ZeroShell-3.8.0-X86-USB.img" + "hda_disk_image": "asav962-13.qcow2" }, - "name": "3.8.0" + "name": "9.6.2-13" }, { "images": { - "hda_disk_image": "ZeroShell-3.7.1-USB.img" + "hda_disk_image": "asav962.qcow2" }, - "name": "3.7.1" + "name": "9.6.2" } ] }, { "builtin": true, - "category": "router", - "description": "Take control of your online applications with Brocade virtual Traffic Manager (Developer Edition). Enhance customer experience, inspect traffic in real-time, control service levels to differentiate users and services, and reduce your costs with an extensible delivery platform that can grow with your business using ADC-as-a-Service. A fully functional Developer Edition which needs no license key, is limited to 1 Mbps/100 SSL tps throughput, and has access to the Brocade Community support web pages.", - "documentation_url": "http://www.brocade.com/en/products-services/software-networking/application-delivery-controllers/virtual-traffic-manager.html", + "category": "guest", + "description": "Ubuntu is a Debian-based Linux operating system, with Unity as its default desktop environment. It is based on free software and named after the Southern African philosophy of ubuntu (literally, \"human-ness\"), which often is translated as \"humanity towards others\" or \"the belief in a universal bond of sharing that connects all humanity\".", + "docker": { + "adapters": 1, + "console_type": "telnet", + "image": "gns3/ubuntu:xenial" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Ubuntu Docker Guest", + "product_name": "Ubuntu", + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "vendor_name": "Canonical", + "vendor_url": "http://www.ubuntu.com" + }, + { + "builtin": true, + "category": "multilayer_switch", + "description": "ExtremeXOS was designed from the ground up to meet the needs of large cloud and private data centers, service providers, intelligent, converged enterprise edge networks, and everything in between. It provides the high performance and rich features required by these diverse environments.", + "documentation_url": "http://www.extremenetworks.com/support/documentation", + "first_port_name": "Management", "images": [ { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-174.qcow2", - "filesize": 2036465664, - "md5sum": "3c44f385e5faf310ca8e3d46bf4e0564", - "version": "17.4" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.6.1.4.iso", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-22.6.1.4.iso", + "filesize": 53706752, + "md5sum": "66146aba82575b3879431143b6dc8a35", + "version": "22.6.1.4" }, { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-173.qcow2", - "filesize": 2022178816, - "md5sum": "c3425d8ec3f8c7789c0a88b8ed6bdf3b", - "version": "17.3" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.5.1.7.iso", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-22.5.1.7.iso", + "filesize": 51779584, + "md5sum": "132ac87de368ab55d1f496f292338cd4", + "version": "22.5.1.7" }, { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-172.qcow2", - "filesize": 2039742464, - "md5sum": "00d3ab0422eb786bcbd77f5841220956", - "version": "17.2" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.4.1.4.iso", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-22.4.1.4.iso", + "filesize": 49993728, + "md5sum": "2134a511084519a5f8ad00a6f7cd71a9", + "version": "22.4.1.4" }, { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-171.qcow2", - "filesize": 1771175936, - "md5sum": "397672218292e739bd33b203a91dbcf4", - "version": "17.1" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.2.1.5.iso", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-22.2.1.5.iso", + "filesize": 44578816, + "md5sum": "bf51fd5b3c5e9dab10a616055265bcf2", + "version": "22.2.1.5" }, { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-111.qcow2", - "filesize": 12189564928, - "md5sum": "3c9c63e2071d79c64cb4b17b355d2582", - "version": "11.1" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/raw/master/vm-22.1.1.5.iso", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-22.1.1.5.iso", + "filesize": 44220416, + "md5sum": "df3897ca2d7c7053582587ed120114fa", + "version": "22.1.1.5" }, { - "download_url": "http://www1.brocade.com/forms/jsp/steelapp-traffic-manager-developer/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-TrafficManagerDeveloper&intcmp=lp_en_vTMdeveloper_eval_bn_00001", - "filename": "VirtualTrafficManager-110.img", - "filesize": 12191531008, - "md5sum": "7fb0bab8e1cf09076e87270b1418ec81", - "version": "11.0" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/vm-21.1.2.14.iso?raw=true", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-21.1.2.14.iso", + "filesize": 41101312, + "md5sum": "de0752d56e41d92027ce1fccd604b14b", + "version": "21.1.2.14" }, { - "download_url": "http://my.brocade.com/", - "filename": "VirtualTrafficManager-104R1.img", - "filesize": 12193562624, - "md5sum": "395542073d6afb9e62e7d5a7b339c3b3", - "version": "10.4R1" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/vm-21.1.1.4.iso?raw=true", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exosvm-21.1.1.4.iso", + "filesize": 41046016, + "md5sum": "4d5db0e01a39b08775ed6a3e2c8bf663", + "version": "21.1.1.4" }, { - "download_url": "http://my.brocade.com/", - "filename": "VirtualTrafficManager-104.img", - "filesize": 12190220288, - "md5sum": "88e31b072e17de12e241ef442bb5faae", - "version": "10.4" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "vTM DE", - "port_name_format": "eth{0}", - "product_name": "vTM DE", - "product_url": "http://www.brocade.com/en/products-services/software-networking/application-delivery-controllers/virtual-traffic-manager.html", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 8, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "Credentials: admin / admin. The device gets its initial IP address using DHCP. After getting an IP address, you can access the initial configuration using the WebUI at https://IP_ADDRESS:9090", - "vendor_name": "Brocade", - "vendor_url": "http://www.brocade.com/", - "versions": [ - { - "images": { - "hda_disk_image": "VirtualTrafficManager-174.qcow2" - }, - "name": "17.4" - }, - { - "images": { - "hda_disk_image": "VirtualTrafficManager-173.qcow2" - }, - "name": "17.3" - }, - { - "images": { - "hda_disk_image": "VirtualTrafficManager-172.qcow2" - }, - "name": "17.2" - }, - { - "images": { - "hda_disk_image": "VirtualTrafficManager-171.qcow2" - }, - "name": "17.1" - }, - { - "images": { - "hda_disk_image": "VirtualTrafficManager-111.qcow2" - }, - "name": "11.1" - }, - { - "images": { - "hda_disk_image": "VirtualTrafficManager-110.img" - }, - "name": "11.0" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.2.1.6.iso?raw=true", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exospc-16.2.1.6.iso", + "filesize": 36306944, + "md5sum": "b4be339afb02c03dcb4349630c1adb4f", + "version": "16.2.1.6" }, { - "images": { - "hda_disk_image": "VirtualTrafficManager-104R1.img" - }, - "name": "10.4R1" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.1.3.6.iso?raw=true", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exospc-16.1.3.6.iso", + "filesize": 35758080, + "md5sum": "4c17b2bf2a4909527f6c866a68ba406e", + "version": "16.1.3.6" }, { - "images": { - "hda_disk_image": "VirtualTrafficManager-104.img" - }, - "name": "10.4" - } - ] - }, - { - "builtin": true, - "category": "firewall", - "description": "Trend Micro InterScan Web Security Virtual Appliance is a secure web gateway that combines application control with zero-day exploit detection, advanced anti-malware and ransomware scanning, real-time web reputation, and flexible URL filtering to provide superior Internet threat protection.", - "documentation_url": "https://success.trendmicro.com/product-support/interscan-web-security-virtual-appliance", - "images": [ - { - "direct_download_url": "http://files.trendmicro.com/products/iwsva/IWSVA-6.5-1200-x86_64.iso", - "download_url": "http://downloadcenter.trendmicro.com/index.php?regs=NABU&clk=latest&clkval=4599&lang_loc=1", - "filename": "IWSVA-6.5-1200-x86_64.iso", - "filesize": 1004965888, - "md5sum": "7eb0d2a44e20b69ae0c3ce73d6cc1182", - "version": "6.5" + "direct_download_url": "https://github.com/extremenetworks/Virtual_EXOS/blob/master/exospc-16.1.2.14.iso?raw=true", + "download_url": "https://github.com/extremenetworks/Virtual_EXOS", + "filename": "exospc-16.1.2.14.iso", + "filesize": 35743744, + "md5sum": "140cdc11f426156ffcbde150b2f46768", + "version": "16.1.2.14" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "filename": "empty8G.qcow2", + "filesize": 197120, + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "IWS VA", - "port_name_format": "eth{0}", - "product_name": "IWS VA", - "product_url": "http://www.trendmicro.com/enterprise/network-security/interscan-web-security/virtual-appliance/index.html", + "name": "EXOS", + "port_name_format": "Port{port1}", + "product_name": "EXOS", + "product_url": "http://www.extremenetworks.com/product/extremexos-network-operating-system", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapter_type": "e1000", + "adapters": 13, "arch": "x86_64", "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "virtio", + "console_type": "telnet", + "hda_disk_interface": "ide", "kvm": "require", - "ram": 4096 + "options": "-smp 2 -cpu core2duo", + "ram": 256 }, "registry_version": 3, "status": "stable", - "vendor_name": "Trend Micro Inc.", - "vendor_url": "http://www.trendmicro.com/", + "usage": "You can change the console to telnet after install. Default user: admin (no password set)", + "vendor_name": "Extreme Networks", + "vendor_url": "http://www.extremenetworks.com/", "versions": [ { "images": { - "cdrom_image": "IWSVA-6.5-1200-x86_64.iso", - "hda_disk_image": "empty100G.qcow2" + "cdrom_image": "exosvm-22.6.1.4.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "6.5" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "The HP VSR1000 Virtual Services Router Series is a software application, running on a server, which provides functionality similar to that of a physical router: robust routing between networked devices using a number of popular routing protocols. It also delivers the critical network services associated with today's enterprise routers such as VPN gateway, firewall and other security and traffic management functions.\n\nThe virtual services router (VSR) application runs on a hypervqcor on the server, and supports VMware vSphere and Linux KVM hypervqcors. From one to eight virtual CPUs are supported, depending on license.\n\nBecause the VSR1000 Series application runs the same HP Comware version 7 operating system as HP switches and routers, it enables significant operational savings. And being virtual, additional agility and ease of deployment is realized, as resources on the VSR can be dynamically allocated and upgraded upon demand as performance requirements grow.\n\nA variety of deployment models are supported including enterprise branch CPE routing, and cloud offload for small to medium workloads.", - "documentation_url": "https://support.hpe.com/hpesc/public/home/documentHome?document_type=135&sp4ts.oid=5195141", - "images": [ - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=22702&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-R0327L01-X64.qco", - "filesize": 138739712, - "md5sum": "907de5140a4a029afe1c517cfc27ecde", - "version": "7.10.R0327L01" - }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=21985&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-R0326-X64.qco", - "filesize": 138412032, - "md5sum": "4153d638bfa72ca72a957ea8682ad0e2", - "version": "7.10.R0326" - }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=20278&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0325-X64.qco", - "filesize": 111738880, - "md5sum": "a6731f3af86bee9b209a8b342be6bf75", - "version": "7.10.E0325" - }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=21929&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0518-X64.qco", - "filesize": 201588736, - "md5sum": "4991436442ae706df8041c69778a48df", - "version": "7.10.E0518" - }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18977&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0324-X64.qco", - "filesize": 111411200, - "md5sum": "7a0ff32281284c042591c6181426effd", - "version": "7.10.E0324" + "name": "22.6.1.4" }, { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18976&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0322P01-X64.qco", - "filesize": 110428160, - "md5sum": "0aa2dbe5910fa64eb8c623e083b21a5e", - "version": "7.10.E0322P01" - }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=18975&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0322-X64.qco", - "filesize": 113770496, - "md5sum": "05e0dab6b7aa489f627448b4d79b1f50", - "version": "7.10.E0322" + "images": { + "cdrom_image": "exosvm-22.5.1.7.iso", + "hda_disk_image": "empty8G.qcow2" + }, + "name": "22.5.1.7" }, - { - "download_url": "https://h10145.www1.hpe.com/Downloads/DownloadSoftware.aspx?SoftwareReleaseUId=16838&ProductNumber=JG811AAE&lang=en&cc=us&prodSeriesId=5443163&SaidNumber=", - "filename": "VSR1000_HPE-CMW710-E0321P01-X64.qco", - "filesize": 113639424, - "md5sum": "26d4375fafeedc81f298f29f593de252", - "version": "7.10.E0321P01" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "HPE VSR1001", - "port_name_format": "GE{port1}/0", - "product_name": "VSR1001", - "product_url": "https://www.hpe.com/us/en/product-catalog/networking/networking-routers/pip.hpe-flexnetwork-vsr1000-virtual-services-router-series.5443163.html", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 16, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "options": "-machine type=pc-1.0", - "ram": 1024 - }, - "registry_version": 3, - "status": "stable", - "vendor_name": "HPE", - "vendor_url": "http://www.hpe.com", - "versions": [ { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-R0327L01-X64.qco" + "cdrom_image": "exosvm-22.4.1.4.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.R0327L01" + "name": "22.4.1.4" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-R0326-X64.qco" + "cdrom_image": "exosvm-22.2.1.5.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.R0326" + "name": "22.2.1.5" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0325-X64.qco" + "cdrom_image": "exosvm-22.1.1.5.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0325" + "name": "22.1.1.5" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0518-X64.qco" + "cdrom_image": "exosvm-21.1.2.14.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0518" + "name": "21.1.2.14" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0324-X64.qco" + "cdrom_image": "exosvm-21.1.1.4.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0324" + "name": "21.1.1.4" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0322P01-X64.qco" + "cdrom_image": "exospc-16.2.1.6.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0322P01" + "name": "16.2.1.6" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0322-X64.qco" + "cdrom_image": "exospc-16.1.3.6.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0322" + "name": "16.1.3.6" }, { "images": { - "hda_disk_image": "VSR1000_HPE-CMW710-E0321P01-X64.qco" + "cdrom_image": "exospc-16.1.2.14.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "7.10.E0321P01" + "name": "16.1.2.14" } ] }, { "builtin": true, - "category": "router", - "description": "Don't you hate it when companies artificially cripple performance? We just give you two simple choices - Now isn't that a refreshing change?", - "documentation_url": "https://loadbalancer.org/support/support-resources", + "category": "firewall", + "description": "Sophos XG Firewall delivers the ultimate enterprise firewall performance, security, and control.\n\nFastpath packet optimization technology with up to 140Gbps throughput\nRevolutionary Security Heartbeat\u2122 for improved Advanced Threat Protection (ATP) and response\nPatented Layer-8 user identity control and visibility\nUnified App, Web, QoS, and IPS Policy simplifies management\nApp risk factor and user threat quotient monitors risk levels", + "documentation_url": "https://www.sophos.com/en-us/support/documentation/sophos-xg-firewall.aspx", "images": [ { - "download_url": "https://loadbalancer.org/resources/free-trial", - "filename": "Loadbalancer.org_Enterprise_VA-8.3-disk1.qcow2", - "filesize": 368332288, - "md5sum": "f0e41f39a5cab47990edc0509c579bac", - "version": "8.3" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-17.1.3_MR-3.KVM-250-PRIMARY.qcow2", + "filesize": 298844160, + "md5sum": "f11c4f63656bcdacbd27c44c52416941", + "version": "17.1.3 MR3" }, { - "download_url": "https://loadbalancer.org/resources/free-trial", - "filename": "Loadbalancer.org_Enterprise_VA-8.2-disk1.qcow2", - "filesize": 8430419968, - "md5sum": "8b74b330a6f629a081f3b36a5d64605b", - "version": "8.2" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Loadbalancer.org Enterprise VA", - "product_name": "Loadbalancer.org Enterprise VA", - "product_url": "https://loadbalancer.org/products/virtual", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 2, - "arch": "x86_64", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "symbol": "loadbalancer.svg", - "usage": "Default credentials:\n Network config CLI: setup / setup\n CLI: root / loadbalancer\n WebUI: loadbalancer / loadbalancer", - "vendor_name": "Loadbalancer.org", - "vendor_url": "https://loadbalancer.org/", - "versions": [ + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-17.1.3_MR-3.KVM-250-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "fbea59f7aa81f305bea78c86f82dc3a6", + "version": "17.1.3 MR3" + }, { - "images": { - "hda_disk_image": "Loadbalancer.org_Enterprise_VA-8.3-disk1.qcow2" - }, - "name": "8.3" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-PRIMARY.qcow2", + "filesize": 324599808, + "md5sum": "2555fa6dcdcecad02c9f02dcb1c0c5e5", + "version": "17.0.2 MR2" }, { - "images": { - "hda_disk_image": "Loadbalancer.org_Enterprise_VA-8.2-disk1.qcow2" - }, - "name": "8.2" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "This container provides the popular tools used for network automation: Netmiko, NAPALM, Pyntc, and Ansible.", - "docker": { - "adapters": 1, - "console_type": "telnet", - "image": "adosztal/network_automation:latest" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Network Automation", - "product_name": "Network Automation", - "registry_version": 3, - "status": "stable", - "symbol": "linux_guest.svg", - "vendor_name": "GNS3", - "vendor_url": "http://www.gns3.com" - }, - { - "builtin": true, - "category": "router", - "description": "LEDE 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.", - "documentation_url": "http://wiki.openwrt.org/doc/", - "images": [ + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "c3ef795423dbfc01771348b0daa75125", + "version": "17.0.2 MR2" + }, { - "direct_download_url": "https://downloads.lede-project.org/releases/17.01.4/targets/x86/generic/lede-17.01.4-x86-generic-combined-squashfs.img", - "download_url": "https://downloads.lede-project.org/releases/17.01.4/targets/x86/generic/", - "filename": "lede-17.01.4-x86-generic-combined-squashfs.img", - "filesize": 19779546, - "md5sum": "ae5d8d3fcab109565fe337d28e51c4b4", - "version": "17.01.4" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.4_MR-4.KVM-215-PRIMARY.qcow2", + "filesize": 287113216, + "md5sum": "20535c9e624f42e1977f1e407fbc565e", + "version": "16.05.4 MR4" }, { - "direct_download_url": "https://downloads.lede-project.org/releases/17.01.3/targets/x86/generic/lede-17.01.3-x86-generic-combined-squashfs.img", - "download_url": "https://downloads.lede-project.org/releases/17.01.3/targets/x86/generic/", - "filename": "lede-17.01.3-x86-generic-combined-squashfs.img", - "filesize": 19775618, - "md5sum": "d315fc638160a9aec0966d58828bfccf", - "version": "17.01.3" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.4_MR-4.KVM-215-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "cafac2d997a3ead087d5823b86ce6cb4", + "version": "16.05.4 MR4" }, { - "direct_download_url": "https://downloads.lede-project.org/releases/17.01.2/targets/x86/generic/lede-17.01.2-x86-generic-combined-squashfs.img", - "download_url": "https://downloads.lede-project.org/releases/17.01.2/targets/x86/generic/", - "filename": "lede-17.01.2-x86-generic-combined-squashfs.img", - "filesize": 19774794, - "md5sum": "a466e493ef12935dad5e0c622b1a7859", - "version": "17.01.2" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.1_MR-1.KVM-139-PRIMARY.qcow2", + "filesize": 285671424, + "md5sum": "3d81cf163fb0f4c5c9ba26e92a0ddc13", + "version": "16.05.1 MR1" }, { - "direct_download_url": "https://downloads.lede-project.org/releases/17.01.1/targets/x86/generic/lede-17.01.1-x86-generic-combined-squashfs.img", - "download_url": "https://downloads.lede-project.org/releases/17.01.1/targets/x86/generic/", - "filename": "lede-17.01.1-x86-generic-combined-squashfs.img", - "filesize": 19771166, - "md5sum": "b050e734c605a34a429389c752ae7c30", - "version": "17.01.1" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.1_MR-1.KVM-139-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "499541728460331a6b68b9e60c8207a3", + "version": "16.05.1 MR1" }, { - "direct_download_url": "https://downloads.lede-project.org/releases/17.01.0/targets/x86/generic/lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img", - "download_url": "https://downloads.lede-project.org/releases/17.01.0/targets/x86/generic/", - "filename": "lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img", - "filesize": 19755118, - "md5sum": "3c5e068d50a377d4e26b548ab1ca7b1e", - "version": "17.01.0" + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.0_RC-1.KVM-098-PRIMARY.qcow2", + "filesize": 285736960, + "md5sum": "1826ca8a34945de5251876dc3fc7fe63", + "version": "16.05.1 RC1" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.05.0_RC-1.KVM-098-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "a9c60a65c1e7b5be8369e5ceaeb358f9", + "version": "16.05.1 RC1" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.01.1.KVM-202-PRIMARY.qcow2", + "filesize": 277479424, + "md5sum": "818d9f973b7a32c50d9b84814c6f1ee3", + "version": "16.01.1" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFOS_16.01.1.KVM-202-AUXILARY.qcow2", + "filesize": 59441152, + "md5sum": "1f6fc0b751aaec9bfd4401b0e0cbc6dc", + "version": "16.01.1" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFMOS_15.01.0.KVM-301-PRIMARY.qcow2", + "filesize": 706412544, + "md5sum": "a2cb14ed93de1550afef49984b11b56f", + "version": "15.01" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SFMOS_15.01.0.KVM-301-AUXILARY.qcow2", + "filesize": 199168, + "md5sum": "43cf82ac1f7b0eb6550f0e203daa6b96", + "version": "15.01" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "LEDE", - "product_name": "LEDE", - "product_url": "https://lede-project.org/", + "name": "Sophos XG Firewall", + "product_name": "Sophos XG Firewall", + "product_url": "https://www.sophos.com/en-us/products/next-gen-firewall.aspx", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 2, - "arch": "i386", + "adapters": 4, + "arch": "x86_64", "console_type": "telnet", - "kvm": "allow", - "ram": 64 + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "kvm": "require", + "ram": 1024 }, "registry_version": 3, - "status": "stable", - "usage": "Ethernet0 is the LAN link, Ethernet1 the WAN link.", - "vendor_name": "LEDE Project", - "vendor_url": "https://lede-project.org/", + "status": "experimental", + "usage": "Port 0 => You computer for the configurtation\nPort 1 => WAN\n\n1. You need a serial number. You can get a trial from Sophos for free.\nUpon starting for the first time, access the setup screen at https://172.16.16.16 (Note: it may take a few minutes for the necessary services to start before the setup screen is ready).\n3. When you are prompted the default administrator credentials are:\nUsername: admin\nPassword: admin\n\n4. Make sure the device is setup for internet access (required for activation): change the network settings from the Basic Setup screen if necessary.\n5. Enter your serial number (provided below) into the setup screen and click \"Activate Device\".\n6. Then register your device with your MySophos ID by clicking \"Register Device\" and entering your MySophos ID and password that you used to download the software.\\\n7. Once the device is registered, you can initiate License Synchronization and proceed with the rest of the configuration.", + "vendor_name": "Sophos", + "vendor_url": "https://www.sophos.com", "versions": [ { "images": { - "hda_disk_image": "lede-17.01.4-x86-generic-combined-squashfs.img" + "hda_disk_image": "VI-17.1.3_MR-3.KVM-250-PRIMARY.qcow2", + "hdb_disk_image": "VI-17.1.3_MR-3.KVM-250-AUXILARY.qcow2" }, - "name": "lede 17.01.4" + "name": "17.1.3 MR3" }, { "images": { - "hda_disk_image": "lede-17.01.3-x86-generic-combined-squashfs.img" + "hda_disk_image": "VI-SFOS_17.0.2_MR-2.KVM-116-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFOS_17.0.2_MR-2.KVM-116-AUXILARY.qcow2" }, - "name": "lede 17.01.3" + "name": "17.0.2 MR2" }, { "images": { - "hda_disk_image": "lede-17.01.2-x86-generic-combined-squashfs.img" + "hda_disk_image": "VI-SFOS_16.05.4_MR-4.KVM-215-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFOS_16.05.4_MR-4.KVM-215-AUXILARY.qcow2" }, - "name": "lede 17.01.2" + "name": "16.05.4 MR4" }, { "images": { - "hda_disk_image": "lede-17.01.1-x86-generic-combined-squashfs.img" + "hda_disk_image": "VI-SFOS_16.05.1_MR-1.KVM-139-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFOS_16.05.1_MR-1.KVM-139-AUXILARY.qcow2" }, - "name": "lede 17.01.1" + "name": "16.05.1 MR1" }, { "images": { - "hda_disk_image": "lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img" + "hda_disk_image": "VI-SFOS_16.05.0_RC-1.KVM-098-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFOS_16.05.0_RC-1.KVM-098-AUXILARY.qcow2" }, - "name": "lede 17.01.0" + "name": "16.05.1 MR1" + }, + { + "images": { + "hda_disk_image": "VI-SFOS_16.01.1.KVM-202-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFOS_16.01.1.KVM-202-AUXILARY.qcow2" + }, + "name": "16.01.1" + }, + { + "images": { + "hda_disk_image": "VI-SFMOS_15.01.0.KVM-301-PRIMARY.qcow2", + "hdb_disk_image": "VI-SFMOS_15.01.0.KVM-301-AUXILARY.qcow2" + }, + "name": "15.01" } ] }, { "builtin": true, - "category": "multilayer_switch", - "description": "Cisco IOS on UNIX Layer 2 image.", + "category": "firewall", + "description": "Today's threats are increasingly sophisticated and often bypass traditional malware security by masking their malicious activity. A sandbox augments your security architecture by validating threats in a separate, secure environment. FortiSandbox offers a powerful combination of advanced detection, automated mitigation, actionable insight, and flexible deployment to stop targeted attacks and subsequent data loss. It's also a key component of our Advanced Threat Protection solution.", + "documentation_url": "http://docs.fortinet.com/fortisandbox/admin-guides", "images": [ { - "filename": "i86bi-linux-l2-ipbasek9-15.1g.bin", - "filesize": 62137336, - "md5sum": "0b8b9e14ca99b68c654e44c4296857ba", - "version": "15.1g" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FSA_KVM-v300-build0029-FORTINET.out.kvm.qcow2", + "filesize": 153158144, + "md5sum": "a2f6c5297a722c5dba40327734a6e0ac", + "version": "3.0.1" }, { - "filename": "i86bi-linux-l2-adventerprisek9-15.1a.bin", - "filesize": 72726092, - "md5sum": "9549a20a7391fb849da32caa77a0d254", - "version": "15.1a" - }, - { - "filename": "i86bi-linux-l2-adventerprisek9-15.2d.bin", - "filesize": 105036380, - "md5sum": "f16db44433beb3e8c828db5ddad1de8a", - "version": "15.2d" - } - ], - "iou": { - "ethernet_adapters": 4, - "nvram": 128, - "ram": 256, - "serial_adapters": 0, - "startup_config": "iou_l2_base_startup-config.txt" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco IOU L2", - "product_name": "Cisco IOU L2", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ - { - "images": { - "image": "i86bi-linux-l2-ipbasek9-15.1g.bin" - }, - "name": "15.1g" - }, - { - "images": { - "image": "i86bi-linux-l2-adventerprisek9-15.1a.bin" - }, - "name": "15.1a" - }, - { - "images": { - "image": "i86bi-linux-l2-adventerprisek9-15.2d.bin" - }, - "name": "15.2d" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "FortiManager Security Management appliances allow you to centrally manage any number of Fortinet Network Security devices, from several to thousands, including FortiGate, FortiWiFi, and FortiCarrier.", - "documentation_url": "http://docs.fortinet.com/p/inside-fortios", - "images": [ - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", - "filesize": 119066624, - "md5sum": "73bfe1bc70124521a524d857646b9c2e", - "version": "6.0.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", - "filesize": 106946560, - "md5sum": "c81cc247e8eb03249b475fe0e847653e", - "version": "5.6.2" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", - "filesize": 106831872, - "md5sum": "8cc553842564d232af295d6a0c784c1f", - "version": "5.6.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", - "filesize": 108363776, - "md5sum": "f8bd600796f894f4ca1ea2d6b4066d3d", - "version": "5.6.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", - "filesize": 89911296, - "md5sum": "53bc6e320fe7bde5d2b636bde95a910c", - "version": "5.4.4" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", - "filesize": 87425024, - "md5sum": "53602c776d215d98e32163a10804fc49", - "version": "5.4.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", + "filesize": 117834240, + "md5sum": "527f3225bd3fbd4ba23779cc1987d2ed", + "version": "2.5.2" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", - "filesize": 86437888, - "md5sum": "8e131ad40009c740f3efdee6dc3a0ac3", - "version": "5.4.2" + "filename": "FSA_KVM-v200-build0329-FORTINET.out.kvm.qcow2", + "filesize": 114491904, + "md5sum": "782ba56a644d78da59b89f4ac91bd319", + "version": "2.5.1" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", - "filesize": 83124224, - "md5sum": "fc1815410f3f0536e2e3a9c1c5c07f41", - "version": "5.4.1" + "filename": "FSA_KVM-v200-build0261-FORTINET.out.kvm.qcow2", + "filesize": 98763264, + "md5sum": "6551ccca8ffe6333742dad54770a01cd", + "version": "2.4.1" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", - "filesize": 77541376, - "md5sum": "1cfb22671cb372d8bf3e47b9c3c55ded", - "version": "5.4.0" + "filename": "FSA_KVM-v200-build0252-FORTINET.out.kvm.qcow2", + "filesize": 99811840, + "md5sum": "47a4489e617f165b92fd8dda68e00bf2", + "version": "2.4.0" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", - "filesize": 64962560, - "md5sum": "377fe38bf07bc2435608e5b65f780f07", - "version": "5.2.10" + "filename": "FSA_KVM-v200-build0205-FORTINET.out.kvm.qcow2", + "filesize": 94962176, + "md5sum": "1ecb0acf1604bdeee0beb1b75864ca99", + "version": "2.3.3" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", - "filesize": 65007616, - "md5sum": "04268e779d3d5e6c928c6fd638423c52", - "version": "5.2.9" + "filename": "FSA_KVM-v200-build0195-FORTINET.out.kvm.qcow2", + "filesize": 115868160, + "md5sum": "00147d048c8002c98aa55d73f022204d", + "version": "2.3.2" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", - "filesize": 65011712, - "md5sum": "6dbf148ace9bf309ad383757afd75fad", - "version": "5.2.8" + "filename": "FSA_VM-v200-build0183-FORTINET.out.kvm.qcow2", + "filesize": 118226944, + "md5sum": "2ff03862e33c8a826a0bce10be12f45e", + "version": "2.3.0" }, { "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FMG_VM64_KVM-v5-build0757-FORTINET.out.kvm.qcow2", - "filesize": 65056768, - "md5sum": "d37dbaa49d7522324681eeba19f7699b", - "version": "5.2.7" - }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "filename": "FSA-datadrive.qcow2", + "filesize": 200192, + "md5sum": "f2dc0a8fc7591699c364aff400369157", + "version": "2.x" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiManager", + "name": "FortiSandbox", "port_name_format": "Port{port1}", - "product_name": "FortiManager", - "product_url": "http://www.fortinet.com/products/fortimanager/virtual-security-management.html", + "product_name": "FortiSandbox", + "product_url": "https://www.fortinet.com/products/sandbox/fortisandbox.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapters": 3, "arch": "x86_64", "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", "hdb_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 + "kvm": "require", + "options": "-smp 2", + "ram": 8096 }, "registry_version": 3, "status": "stable", "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set.", + "usage": "First boot will take some time without console output. Default username is admin, no password is set.", "vendor_name": "Fortinet", "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "hda_disk_image": "FMG_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v300-build0029-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "6.0.0" + "name": "3.0.1" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.6.2" + "name": "2.5.2" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0329-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.6.1" + "name": "2.5.1" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0261-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.6.0" + "name": "2.4.1" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0252-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.4.4" + "name": "2.4.0" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0205-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.4.3" + "name": "2.3.3" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_KVM-v200-build0195-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.4.2" + "name": "2.3.2" }, { "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "FSA_VM-v200-build0183-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FSA-datadrive.qcow2" }, - "name": "5.4.1" + "name": "2.3.0" + } + ] + }, + { + "builtin": true, + "category": "firewall", + "description": "Sophos Free Home Use Firewall is a fully equipped software version of the Sophos UTM firewall, available at no cost for home users \u2013 no strings attached. It features full Network, Web, Mail and Web Application Security with VPN functionality and protects up to 50 IP addresses. The Sophos UTM Free Home Use firewall contains its own operating system and will overwrite all data on the computer during the installation process. Therefore, a separate, dedicated computer or VM is needed, which will change into a fully functional security appliance.", + "documentation_url": "https://community.sophos.com/products/unified-threat-management/", + "images": [ + { + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.510-5.1.iso", + "filesize": 871266304, + "md5sum": "ae21f96686f238c25941fd3240c7da5b", + "version": "9.510-5.1" }, { - "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.0" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.506-2.1.iso", + "filesize": 1006057472, + "md5sum": "6b4374f8c5ee66ccdf9683f7349f59cb", + "version": "9.506-2.1" }, { - "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.2.10" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.500-9.1.iso", + "filesize": 981612544, + "md5sum": "8531349cdb7f07c94596b19f8e08081a", + "version": "9.500-9.1" }, { - "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.2.9" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.415-1.1.iso", + "filesize": 961087488, + "md5sum": "505004bf5a5d5f2234b2056ec7b553d8", + "version": "9.415-1.1" }, { - "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.2.8" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.413-4.1.iso", + "filesize": 965146624, + "md5sum": "decdccf0fbb1c809c0d3ad1dd322ca5d", + "version": "9.413-4.1" }, { - "images": { - "hda_disk_image": "FMG_VM64_KVM-v5-build0757-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.2.7" - } - ] - }, - { - "builtin": true, - "category": "multilayer_switch", - "description": "The Open Network Operating System (ONOS) is a software defined networking (SDN) OS for service providers that has scalability, high availability, high performance and abstractions to make it easy to create apps and services. The platform is based on a solid architecture and has quickly matured to be feature rich and production ready. The community has grown to include over 50 partners and collaborators that contribute to all aspects of the project including interesting use cases such as CORD", - "docker": { - "adapters": 1, - "image": "onosproject/onos:latest" - }, - "documentation_url": "https://wiki.onosproject.org", - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Onos", - "product_name": "Onos", - "product_url": "http://onosproject.org/", - "registry_version": 3, - "status": "stable", - "vendor_name": "Onos", - "vendor_url": "http://onosproject.org/" - }, - { - "builtin": true, - "category": "guest", - "description": "vRIN is a VM appliance capable to inject high number of routes into a network. It was tested on GNS3 topologies using VirtualBox and Qemu with up to 1M BGP routes. Runs Quagga. Supported protocols: BGP (IPv4/6), OSPF, OSPFv3, RIP v2, RIPng", - "images": [ + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.411-3.1.iso", + "filesize": 947019776, + "md5sum": "0940197daccb5993a419b667c71fb341", + "version": "9.411-3.1" + }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.2.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.9.2.qcow2", - "filesize": 957087744, - "md5sum": "40afad2f5136e56f0cb45466847eae63", - "version": "0.9.2" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.409-9.1.iso", + "filesize": 910178304, + "md5sum": "71e9261ac77d230f85d8066f8efef710", + "version": "9.409-9.1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.1.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.9.1.qcow2", - "filesize": 1008926720, - "md5sum": "9f09f104917e19649598d9e2a5a3476b", - "version": "0.9.1" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.408-4.1.iso", + "filesize": 892516352, + "md5sum": "b10aab2d3dd4d7f6424b9c64a075e550", + "version": "9.408-4.1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.9.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.9.qcow2", - "filesize": 922943488, - "md5sum": "b9ec187d7a4743bb02339cf262767959", - "version": "0.9" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.407-3.1.iso", + "filesize": 879738880, + "md5sum": "19f736d0766a960a1d37edf98daaf01d", + "version": "9.407-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.8.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.8.qcow2", - "filesize": 625999872, - "md5sum": "38eb48d098d3e465422347f7983b9d86", - "version": "0.8" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.406-3.1.iso", + "filesize": 873408512, + "md5sum": "b79fb0fd04654068897961ab0594297c", + "version": "9.406-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.7.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.7.qcow2", - "filesize": 614268928, - "md5sum": "2e9802c403e34a91871922b9a26592ad", - "version": "0.7" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.405-5.1.iso", + "filesize": 864020480, + "md5sum": "cc1687ea73dd7363212c0db5ad784bc6", + "version": "9.405-5.1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/vrin/files/vRIN-0.6.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/vrin/files", - "filename": "vRIN-0.6.qcow2", - "filesize": 609681408, - "md5sum": "6c763f609c05b5b9a3b1d422ab89dbac", - "version": "0.6" + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.403-4.1.iso", + "filesize": 850329600, + "md5sum": "631f2a017deb284705d653905de51604", + "version": "9.403-4.1" + }, + { + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.358-3.1.iso", + "filesize": 868235264, + "md5sum": "883176415be49e12ab63b46ca749c7b2", + "version": "9.358-3.1" + }, + { + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.357-1.1.iso", + "filesize": 848300032, + "md5sum": "c34061e770f26a994b725b4b92fe56dc", + "version": "9.357-1.1" + }, + { + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.356-3.1.iso", + "filesize": 820531200, + "md5sum": "bd155ed98a477d1182367b302bb480f3", + "version": "9.356-3.1" + }, + { + "download_url": "https://www.sophos.com/en-us/support/utm-downloads.aspx", + "filename": "asg-9.217-3.1.iso", + "filesize": 747606016, + "md5sum": "77bae7dcad422dac428984417573acad", + "version": "9.217-3.1" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" } ], - "maintainer": "Andras Dosztal", + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "vRIN", - "product_name": "vRIN", + "name": "Sophos UTM Home Edition", + "port_name_format": "eth{0}", + "product_name": "Sophos UTM Home Edition", + "product_url": "https://www.sophos.com/en-us/products/free-tools/sophos-utm-home-edition.aspx", "qemu": { - "adapter_type": "e1000", - "adapters": 1, + "adapter_type": "virtio-net-pci", + "adapters": 4, "arch": "x86_64", - "console_type": "telnet", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "virtio", "kvm": "allow", - "ram": 256 + "ram": 2048 }, "registry_version": 3, "status": "stable", - "symbol": "vRIN.svg", - "usage": "Connect eth0 to the network where you want vRIN to inject routes into then start the VM. You can either run the VM in normal or headless mode; in the latter case you can access vRIN through serial console. User input is not checked; it's your responsibility to enter valid information.\n\nAfter generating the routes, each Quagga process can be reached through eth0 using their default ports:\n - zebra: 2601\n - rip: 2602\n - ripng: 2603\n - ospf: 2604\n - bgp: 2605\n - ospf6d: 2606\nVTY password: vrin\n\nNotes:\n\n - Route generation may take a while when creating lots of routes (i.e. 10k+).\n - Login (serial / VM window): root / vrin", - "vendor_name": "Andras Dosztal", - "vendor_url": "https://sourceforge.net/projects/vrin/", + "usage": "Connect to VNC console for installation, everything else can be set on the WebUI.", + "vendor_name": "Sophos Ltd.", + "vendor_url": "https://www.sophos.com/", "versions": [ { "images": { - "hda_disk_image": "vRIN-0.9.2.qcow2" + "cdrom_image": "asg-9.510-5.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.9.2" + "name": "9.510-5.1" }, { "images": { - "hda_disk_image": "vRIN-0.9.1.qcow2" + "cdrom_image": "asg-9.506-2.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.9.1" + "name": "9.506-2.1" }, { "images": { - "hda_disk_image": "vRIN-0.9.qcow2" + "cdrom_image": "asg-9.500-9.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.9" + "name": "9.500-9.1" }, { "images": { - "hda_disk_image": "vRIN-0.8.qcow2" + "cdrom_image": "asg-9.415-1.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.8" + "name": "9.415-1.1" }, { "images": { - "hda_disk_image": "vRIN-0.7.qcow2" + "cdrom_image": "asg-9.413-4.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.7" + "name": "9.413-4.1" }, { "images": { - "hda_disk_image": "vRIN-0.6.qcow2" + "cdrom_image": "asg-9.411-3.1.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "0.6" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "Container with integrated Python 2 & 3, Perl, PHP, and PHP7.0 interpreters, and a Go compiler.", - "docker": { - "adapters": 1, - "image": "adosztal/python-go-perl-php:latest" - }, - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Python, Go, Perl, PHP", - "product_name": "Python, Go, Perl, PHP", - "registry_version": 3, - "status": "stable", - "vendor_name": "GNS3 Team", - "vendor_url": "https://www.gns3.com" - }, - { - "builtin": true, - "category": "guest", - "description": "CoreOS is designed for security, consistency, and reliability. Instead of installing packages via yum or apt, CoreOS uses Linux containers to manage your services at a higher level of abstraction. A single service's code and all dependencies are packaged within a container that can be run on one or many CoreOS machines.", - "documentation_url": "https://coreos.com/docs/", - "images": [ + "name": "9.411-3.1" + }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1688.5.3/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1688.5.3/", - "filename": "coreos_production_qemu_image.1688.5.3.img", - "filesize": 867368960, - "md5sum": "f1015a9573fb6e378d2a5e86b4243acd", - "version": "1688.5.3" + "images": { + "cdrom_image": "asg-9.409-9.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.409-9.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1632.2.1/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1632.2.1/", - "filename": "coreos_production_qemu_image.1632.2.1.img", - "filesize": 885719040, - "md5sum": "facd05ca85eb87e2dc6aefd6779f6806", - "version": "1632.2.1" + "images": { + "cdrom_image": "asg-9.408-4.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.408-4.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1576.4.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1576.4.0/", - "filename": "coreos_production_qemu_image.1576.4.0.img", - "filesize": 849739776, - "md5sum": "7d3c647807afe1f18fd0c76730e612b4", - "version": "1576.4.0" + "images": { + "cdrom_image": "asg-9.407-3.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.407-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1520.8.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1520.8.0/", - "filename": "coreos_production_qemu_image.1520.8.0.img", - "filesize": 842661888, - "md5sum": "a69fb2cd3ae475f9afbc268f7d391e83", - "version": "1520.8.0" - }, - { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1465.7.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1465.7.0/", - "filename": "coreos_production_qemu_image.1465.7.0.img", - "filesize": 796590080, - "md5sum": "1db77d47e76d3d9082846584e0f4b4bc", - "version": "1465.7.0" + "images": { + "cdrom_image": "asg-9.406-3.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.406-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1409.7.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1409.7.0/", - "filename": "coreos_production_qemu_image.1409.7.0.img", - "filesize": 812187648, - "md5sum": "b8db4a07bac71468ed47bd09bedc1bdf", - "version": "1409.7.0" + "images": { + "cdrom_image": "asg-9.405-5.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.405-5.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1353.8.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1353.8.0/", - "filename": "coreos_production_qemu_image.1353.8.0.img", - "filesize": 795934720, - "md5sum": "f84bf924d7b30190539a14e14d94d4f8", - "version": "1353.8.0" + "images": { + "cdrom_image": "asg-9.403-4.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.403-4.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1353.7.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1353.7.0/", - "filename": "coreos_production_qemu_image.1353.7.0.img", - "filesize": 796852224, - "md5sum": "2d4ecc377b41ee5b1ffd90090548ebc0", - "version": "1353.7.0" + "images": { + "cdrom_image": "asg-9.358-3.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.358-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.9.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1235.9.0/", - "filename": "coreos_production_qemu_image.1235.9.0.img", - "filesize": 795869184, - "md5sum": "77a256ceaa0da6960391c03ebfe5388c", - "version": "1235.9.0" + "images": { + "cdrom_image": "asg-9.357-1.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.357-1.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.8.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1235.8.0/", - "filename": "coreos_production_qemu_image.1235.8.0.img", - "filesize": 785252352, - "md5sum": "0eec78690fd9f6d3b9e8d8ff41bc10b5", - "version": "1235.8.0" + "images": { + "cdrom_image": "asg-9.356-3.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.356-3.1" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.6.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1235.6.0/", - "filename": "coreos_production_qemu_image.1235.6.0.img", - "filesize": 784990208, - "md5sum": "2ff81c223be4bfa40c9ef765bb0d7f26", - "version": "1235.6.0" - }, + "images": { + "cdrom_image": "asg-9.217-3.1.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "9.217-3.1" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more. This appliance provide python 2.7.", + "docker": { + "adapters": 1, + "console_http_path": "/", + "console_http_port": 8888, + "console_type": "http", + "image": "gns3/jupyter27:v2" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Jupyter 2.7", + "product_name": "Jupyter", + "registry_version": 3, + "status": "stable", + "vendor_name": "Project Jupyter", + "vendor_url": "http://jupyter.org/" + }, + { + "builtin": true, + "category": "guest", + "description": "ipterm is a debian based networking toolbox.\nIt contains the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump and the multicast testing tools msend/mreceive.", + "docker": { + "adapters": 1, + "image": "gns3/ipterm:latest" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "ipterm", + "product_name": "ipterm", + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "usage": "The /root directory is persistent.", + "vendor_name": "ipterm", + "vendor_url": "https://www.debian.org" + }, + { + "builtin": true, + "category": "firewall", + "description": "ClearOS is an operating system for your Server, Network, and Gateway systems. It is designed for homes, small to medium businesses, and distributed environments. ClearOS is commonly known as the Next Generation Small Business Server, while including indispensable Gateway and Networking functionality. It delivers a powerful IT solution with an elegant user interface that is completely web-based. Simply put.. ClearOS is the new way of delivering IT.", + "documentation_url": "https://www.clearos.com/resources/documentation/clearos-7-documentation-overview", + "images": [ { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.5.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1235.5.0/", - "filename": "coreos_production_qemu_image.1235.5.0.img", - "filesize": 792592384, - "md5sum": "11aa05a27654b66a4e6dfb1e9f1c7ff9", - "version": "1235.5.0" + "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", + "filename": "ClearOS-7.5-DVD-x86_64.iso", + "filesize": 1146093568, + "md5sum": "1e23c5f73a6c996420d8e0e70b000bf9", + "version": "7.5" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1235.4.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1235.4.0/", - "filename": "coreos_production_qemu_image.1235.4.0.img", - "filesize": 787415040, - "md5sum": "c59930b3b1ad0716c91a62ac56234d97", - "version": "1235.4.0" + "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", + "filename": "ClearOS-7.4-DVD-x86_64.iso", + "filesize": 1029701632, + "md5sum": "826da592f9cd4b59f5fc996ff2d569f1", + "version": "7.4" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1185.5.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1185.5.0/", - "filename": "coreos_production_qemu_image.1185.5.0.img", - "filesize": 754843648, - "md5sum": "97b6eaa9857c68c67e56d7b742d43f5e", - "version": "1185.5.0" + "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", + "filename": "ClearOS-7.3-DVD-x86_64.iso", + "filesize": 884998144, + "md5sum": "1bae8b2d7abe1bc72665a270f10a5149", + "version": "7.3" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/1185.3.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/1185.3.0/", - "filename": "coreos_production_qemu_image.1185.3.0.img", - "filesize": 753926144, - "md5sum": "a1b6b69e5a58a1900b145b024340eff0", - "version": "1185.3.0" + "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", + "filename": "ClearOS-7.2-DVD-x86_64.iso", + "filesize": 855638016, + "md5sum": "a094763e6ed5d9b073fd4e651f9a48f1", + "version": "7.2" }, { - "compression": "bzip2", - "direct_download_url": "http://stable.release.core-os.net/amd64-usr/835.9.0/coreos_production_qemu_image.img.bz2", - "download_url": "http://stable.release.core-os.net/amd64-usr/835.9.0/", - "filename": "coreos_production_qemu_image.835.9.img", - "filesize": 635633664, - "md5sum": "768a5df35784a014ba06609da88f5158", - "version": "835.9.0" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "CoreOS", - "product_name": "CoreOS", + "name": "ClearOS CE", + "product_name": "ClearOS CE", + "product_url": "https://www.clearos.com/clearfoundation/software/clearos-7-community", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 1, + "adapters": 3, "arch": "x86_64", - "console_type": "telnet", + "console_type": "vnc", "hda_disk_interface": "virtio", - "hdd_disk_interface": "ide", - "kvm": "allow", + "kvm": "require", "ram": 1024 }, "registry_version": 3, "status": "stable", - "vendor_name": "CoreOS, Inc", - "vendor_url": "https://coreos.com/", + "usage": "Follow the installer.", + "vendor_name": "ClearCenter, Corp.", + "vendor_url": "https://www.clearos.com/", "versions": [ { "images": { - "hda_disk_image": "coreos_production_qemu_image.1688.5.3.img" - }, - "name": "1688.5.3" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1632.2.1.img" - }, - "name": "1632.2.1" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1576.4.0.img" - }, - "name": "1576.4.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1520.8.0.img" + "cdrom_image": "ClearOS-7.5-DVD-x86_64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "1520.8.0" + "name": "7.5" }, { "images": { - "hda_disk_image": "coreos_production_qemu_image.1465.7.0.img" + "cdrom_image": "ClearOS-7.4-DVD-x86_64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "1465.7.0" + "name": "7.4" }, { "images": { - "hda_disk_image": "coreos_production_qemu_image.1409.7.0.img" + "cdrom_image": "ClearOS-7.3-DVD-x86_64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "1409.7.0" + "name": "7.3" }, { "images": { - "hda_disk_image": "coreos_production_qemu_image.1353.8.0.img" + "cdrom_image": "ClearOS-7.2-DVD-x86_64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "1353.8.0" - }, + "name": "7.2" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "Big Cloud Fabric\u2122 is the industry\u2019s first data center fabric built using whitebox or britebox switches and SDN controller technology. Embracing hyperscale data center design principles, Big Cloud Fabric solution enables rapid innovation, ease of provisioning and management, while reducing overall costs, making it ideal for current and next generation data centers. Big Cloud Fabric is designed from the ground up to satisfy the requirements of physical, virtual, containerized, or a combination of such workloads. Some of the typical OpenStack or VMware data center workloads include NFV, High Performance Computing, Big Data and Software Defined Storage deployments.", + "documentation_url": "http://www.bigswitch.com/support", + "images": [ { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1353.7.0.img" - }, - "name": "1353.7.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1235.9.0.img" - }, - "name": "1235.9.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1235.8.0.img" - }, - "name": "1235.8.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1235.6.0.img" - }, - "name": "1235.6.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1235.5.0.img" - }, - "name": "1235.5.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1235.4.0.img" - }, - "name": "1235.4.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1185.5.0.img" - }, - "name": "1185.5.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.1185.3.0.img" - }, - "name": "1185.3.0" - }, - { - "images": { - "hda_disk_image": "coreos_production_qemu_image.835.9.img" - }, - "name": "835.9.0" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "Dell Networking OS10 combines the best of Linux, open computing and networking to advance open networking disaggregation. Dell Networking OS10 is a transformational software platform that provides networking hardware abstraction through a common set of APIs. Enable consistency across compute and network resources for your system operators (SysOps) groups that require server-like manageability. Easily leverage your existing network configuration. Dell Networking OS10 incorporates traditional networking integration. Enhance the integration and control you allow your development and operations (DevOps) teams, down to identifying an object as an individual, manageable entity within the platform.", - "first_port_name": "Management0/0", - "images": [ - { - "compression": "zip", - "download_url": "https://www.force10networks.com/csportal20/Software/Downloads.aspx", - "filename": "FTOS-SI-9.8.0.0.iso", - "filesize": 108115968, - "md5sum": "b9b50eda0a73407dc381792ff7975e24", - "version": "9.8.0" - }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "download_url": "http://www.bigswitch.com/community-edition", + "filename": "BCF-Controller-BCF-CE-3.5.0-2016-01-22.qcow2", + "filesize": 2860253184, + "md5sum": "d1c2ecf0db8101f6b6d311470697545a", + "version": "3.5.0-2016-01-22" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Dell FTOS", - "port_name_format": "fortyGigE0/{0}", - "product_name": "Dell FTOS", - "product_url": "http://www.dell.com/us/business/p/open-platform-software/pd", + "name": "Big Cloud Fabric", + "product_name": "Big Cloud Fabric", + "product_url": "http://www.bigswitch.com/sdn-products/big-cloud-fabrictm", "qemu": { "adapter_type": "e1000", - "adapters": 6, - "arch": "i386", - "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "ide", + "adapters": 8, + "arch": "x86_64", + "console_type": "telnet", "kvm": "require", - "ram": 512 + "ram": 256 }, "registry_version": 3, "status": "experimental", - "usage": "Abort the BCM process and format the flash after first boot by entering these commands:\nen\nformat flash:\n\nSometimes the flash device is not available after boot.", - "vendor_name": "Dell Inc.", - "vendor_url": "http://www.dell.com/", + "usage": "Login is admin", + "vendor_name": "Big Switch Networks", + "vendor_url": "http://www.bigswitch.com/", "versions": [ { "images": { - "cdrom_image": "FTOS-SI-9.8.0.0.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "BCF-Controller-BCF-CE-3.5.0-2016-01-22.qcow2" }, - "name": "9.8.0" + "name": "3.5" } ] }, { "builtin": true, "category": "router", - "description": "The Alcatel-Lucent 7750 Service Router (SR) portfolio is a suite of multiservice edge routing platforms that deliver high performance, service richness, and creates exceptional value for networking in the cloud era. It is designed for the concurrent delivery of advanced residential, business and wireless broadband IP services, and provides cloud, data center and branch office connectivity for enterprise networking on a common IP edge routing platform.", - "documentation_url": "https://www.alcatel-lucent.com/support", - "first_port_name": "A/1", + "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.", + "documentation_url": "http://www.gns3.com", "images": [ { - "compression": "zip", - "download_url": "https://www.alcatel-lucent.com/support", - "filename": "TiMOS-SR-13.0.R4-vm.qcow2", - "filesize": 368508928, - "md5sum": "d7a3609e506acdcb55f6db5328dba8ed", - "version": "13.0.R4" - }, - { - "compression": "zip", - "download_url": "https://www.alcatel-lucent.com/support", - "filename": "TiMOS-SR-12.0.R6-vm.qcow2", - "filesize": 221511680, - "md5sum": "7d84d97a5664af2e3546bfa832fc1848", - "version": "12.0.R6" - }, - { - "compression": "zip", - "download_url": "https://www.alcatel-lucent.com/support", - "filename": "TiMOS-SR-12.0.R18.qcow2", - "filesize": 223870976, - "md5sum": "d0bba5feaaf09fd02185f25898a6afc7", - "version": "12.0.R18" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/core-linux-6.4-internet-0.1.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "core-linux-6.4-internet-0.1.img", + "filesize": 16711680, + "md5sum": "8ebc5a6ec53a1c05b7aa101b5ceefe31", + "version": "0.1" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Alcatel 7750", - "port_name_format": "1/1/{port1}", - "product_name": "Alcatel 7750", - "product_url": "https://www.alcatel-lucent.com/products/7750-service-router", + "name": "Internet", + "product_name": "Internet", "qemu": { "adapter_type": "e1000", - "adapters": 6, - "arch": "x86_64", + "adapters": 1, + "arch": "i386", "console_type": "telnet", - "kvm": "require", - "options": "", - "ram": 2048 + "kvm": "allow", + "options": "-device e1000,netdev=internet0 -netdev vde,sock=/var/run/vde2/qemu0.ctl,id=internet0", + "ram": 64 }, "registry_version": 3, - "status": "experimental", - "usage": "Login is admin and password is admin", - "vendor_name": "Alcatel", - "vendor_url": "https://www.alcatel-lucent.com/", - "versions": [ - { - "images": { - "hda_disk_image": "TiMOS-SR-13.0.R4-vm.qcow2" - }, - "name": "13.0.R4" - }, - { - "images": { - "hda_disk_image": "TiMOS-SR-12.0.R6-vm.qcow2" - }, - "name": "12.0.R6" - }, - { - "images": { - "hda_disk_image": "TiMOS-SR-12.0.R18.qcow2" - }, - "name": "12.0.R18" - } - ] - }, - { - "availability": "free", - "builtin": true, - "category": "guest", - "description": "openSUSE is a free and Linux-based operating system for PC, Laptop or Server. The openSUSE project is a community program sponsored by Novell. It is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE and a number of other companies.", - "documentation_url": "https://en.opensuse.org/Main_Page", - "images": [ - { - "download_url": "http://www.osboxes.org/opensuse/", - "filename": "openSUSE_42.3-Leap-VM-64bit.vmdk", - "filesize": 5891293184, - "md5sum": "ab777cf90557460ff35aedfbf2befc5d", - "version": "Leap 42.3" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "openSUSE", - "port_name_format": "eth{0}", - "product_name": "openSUSE", - "product_url": "https://www.opensuse.org/#Leap", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "sata", - "kvm": "require", - "options": "-vga virtio", - "ram": 1024 - }, - "registry_version": 4, "status": "stable", - "usage": "Username: osboxes\nPassword: osboxes.org\n\nroot password: osboxes.org", - "vendor_name": "SUSE LLC.", - "vendor_url": "https://www.opensuse.org/", + "symbol": ":/symbols/cloud.svg", + "usage": "Just connect stuff to the appliance. Everything is automated.", + "vendor_name": "GNS3", + "vendor_url": "http://www.gns3.com", "versions": [ { "images": { - "hda_disk_image": "openSUSE_42.3-Leap-VM-64bit.vmdk" + "hda_disk_image": "core-linux-6.4-internet-0.1.img" }, - "name": "Leap 42.3" + "name": "0.1" } ] }, { "builtin": true, "category": "guest", - "description": "FortiMail is a complete Secure Email Gateway offering suitable for any size organization. It provides a single solution to protect against inbound attacks - including advanced malware -, as well as outbound threats and data loss with a wide range of top-rated security capabilities.", - "documentation_url": "http://docs.fortinet.com/fortimail/admin-guides", + "description": "PacketFence is a fully supported, trusted, Free and Open Source network access control (NAC) solution. Boasting an impressive feature set including a captive-portal for registration and remediation, centralized wired and wireless management, 802.1X support, layer-2 isolation of problematic devices, integration with the Snort IDS and the Nessus vulnerability scanner; PacketFence can be used to effectively secure networks - from small to very large heterogeneous networks.", + "documentation_url": "https://packetfence.org/support/index.html#/documentation", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0719-FORTINET.out.kvm.qcow2", - "filesize": 97255424, - "md5sum": "e2f202efd28039a6f1f4ebb7ee69e214", - "version": "5.4.5" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0714-FORTINET.out.kvm.qcow2", - "filesize": 93519872, - "md5sum": "6a3155d9cee6af3ecb016e59c0a0765f", - "version": "5.4.4" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/8.1.0/PacketFenceZEN_USB-8.1.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-8.1.0.img", + "filesize": 3221225472, + "md5sum": "f326f0e70b35d598c8b84ee3fc9c611f", + "version": "8.1.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0712-FORTINET.out.kvm.qcow2", - "filesize": 93454336, - "md5sum": "977effe7b885ca5cedec7740a2a637aa", - "version": "5.4.3" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.4.0/PacketFenceZEN_USB-7.4.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-7.4.0.img", + "filesize": 3221225472, + "md5sum": "83951211540f16dd5813c26955c52429", + "version": "7.4.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0707-FORTINET.out.kvm.qcow2", - "filesize": 92864512, - "md5sum": "b51260cc3e408bf1352a204b8370254b", - "version": "5.4.2" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0704-FORTINET.out.kvm.qcow2", - "filesize": 94568448, - "md5sum": "1f6553e182512cc87e20f47cc2b65abf", - "version": "5.4.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v54-build0692-FORTINET.out.kvm.qcow2", - "filesize": 101253120, - "md5sum": "c9e0885cab65e52ab01d8143ed466b01", - "version": "5.4.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0653-FORTINET.out.kvm.qcow2", - "filesize": 89980928, - "md5sum": "aed4dcb17de047860736d8742362a754", - "version": "5.3.12" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0648-FORTINET.out.kvm.qcow2", - "filesize": 88670208, - "md5sum": "bd34a81c1bb6772c7e4919620027a5d4", - "version": "5.3.11" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0643-FORTINET.out.kvm.qcow2", - "filesize": 88801280, - "md5sum": "08f3258533ac2b4f15e86ca3973be17e", - "version": "5.3.10" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0634-FORTINET.out.kvm.qcow2", - "filesize": 86376448, - "md5sum": "a66b82f0713ba4ea418bd959d0cb5732", - "version": "5.3.9" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0627-FORTINET.out.kvm.qcow2", - "filesize": 86769664, - "md5sum": "83108e5cb68bad681b68ec1ef7e29f25", - "version": "5.3.8" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.3.0/PacketFenceZEN_USB-7.3.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-7.3.0.img", + "filesize": 3221225472, + "md5sum": "dfeb8a97bba2e475ce418b02327c0ea1", + "version": "7.3.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0623-FORTINET.out.kvm.qcow2", - "filesize": 86573056, - "md5sum": "7e208d04c3f9bc4dedcf6d45e8d99a76", - "version": "5.3.7" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.1.0/PacketFenceZEN_USB-7.1.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-7.1.0.img", + "filesize": 3221225472, + "md5sum": "3811099f4e1eba164245e94cfa09d26f", + "version": "7.1.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0621-FORTINET.out.kvm.qcow2", - "filesize": 86638592, - "md5sum": "3fe1521b73af886359d78eb4c1509466", - "version": "5.3.6" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.0.0/PacketFenceZEN_USB-7.0.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-7.0.0.img", + "filesize": 3221225472, + "md5sum": "f5d7f81b279ad286e09f3ddf29dd06c3", + "version": "7.0.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0618-FORTINET.out.kvm.qcow2", - "filesize": 86376448, - "md5sum": "5f4159956b87538c008654c030e00e37", - "version": "5.3.5" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.5.1/PacketFenceZEN_USB-6.5.1.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-6.5.1.img", + "filesize": 3221225472, + "md5sum": "937c02640bd487889b7071e8f094a62a", + "version": "6.5.1" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0608-FORTINET.out.kvm.qcow2", - "filesize": 86048768, - "md5sum": "b78f647148923e1bddfa2dcfbcc0c85c", - "version": "5.3.4" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.5.0/PacketFenceZEN_USB-6.5.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-6.5.0.img", + "filesize": 3221225472, + "md5sum": "5d5ff015f115e9dbcfd355f1bb22f5d9", + "version": "6.5.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0599-FORTINET.out.kvm.qcow2", - "filesize": 84606976, - "md5sum": "f1f3ae5593029d4fc0a5024bcf786cc7", - "version": "5.3.3" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.4.0/PacketFenceZEN_USB-6.4.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-6.4.0.img", + "filesize": 3221225472, + "md5sum": "7f2bea58421d094152ea71f49cc3084a", + "version": "6.4.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FML_VMKV-64-v53-build0593-FORTINET.out.kvm.qcow2", - "filesize": 84541440, - "md5sum": "0447819ed4aa382ea6871c0cb913b592", - "version": "5.3.2" + "compression": "bzip2", + "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.3.0/PacketFenceZEN_USB-6.3.0.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-6.3.0.img", + "filesize": 3221225472, + "md5sum": "94e19349faedf292743fdc0ab48f8466", + "version": "6.3.0" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "compression": "bzip2", + "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.2.1/PacketFenceZEN_USB-6.2.1.tar.bz2/download", + "download_url": "https://packetfence.org/download.html#/zen", + "filename": "PacketFenceZEN_USB-6.2.1.img", + "filesize": 3221225472, + "md5sum": "f212be7c8621b90d973f500f00ef1277", + "version": "6.2.1" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiMail", - "port_name_format": "Port{port1}", - "product_name": "FortiMail", - "product_url": "http://www.fortinet.com/products/fortimail/index.html", + "name": "PacketFence ZEN", + "product_name": "PacketFence ZEN", + "product_url": "https://packetfence.org/about.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapters": 2, "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", + "console_type": "vnc", "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 + "kvm": "require", + "ram": 8192 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "First boot takes a few minutes. Admin URL is https://x.x.x.x/admin, default username is admin, no password is set.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "usage": "Boot the live CD", + "vendor_name": "Inverse inc.", + "vendor_url": "https://packetfence.org/", "versions": [ { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0719-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-8.1.0.img" }, - "name": "5.4.5" + "name": "8.1.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0714-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-7.4.0.img" }, - "name": "5.4.4" + "name": "7.4.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0712-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-7.3.0.img" }, - "name": "5.4.3" + "name": "7.3.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0707-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-7.1.0.img" }, - "name": "5.4.2" + "name": "7.1.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0704-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-7.0.0.img" }, - "name": "5.4.1" + "name": "7.0.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v54-build0692-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-6.5.1.img" }, - "name": "5.4.0" + "name": "6.5.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0653-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-6.5.0.img" }, - "name": "5.3.12" + "name": "6.5.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0648-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-6.4.0.img" }, - "name": "5.3.11" + "name": "6.4.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0643-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-6.3.0.img" }, - "name": "5.3.10" + "name": "6.3.0" }, { "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0634-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "PacketFenceZEN_USB-6.2.1.img" }, - "name": "5.3.9" - }, + "name": "6.2.1" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "FortiAuthenticator user identity management appliances strengthen enterprise security by simplifying and centralizing the management and storage of user identity information.", + "documentation_url": "http://docs.fortinet.com/fortiauthenticator/admin-guides", + "images": [ { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0627-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.8" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v5-build0297-FORTINET.out.kvm.qcow2", + "filesize": 72617984, + "md5sum": "e63bcaae040f903f9de315f582702619", + "version": "5.4.1" }, { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0623-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.7" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v5-build0163-FORTINET.out.kvm.qcow2", + "filesize": 71565312, + "md5sum": "e746b3c6c29b0356ec6b90ed14d4b098", + "version": "5.2.2" }, { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0621-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.6" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-build0161-FORTINET.out.kvm.qcow2", + "filesize": 72536064, + "md5sum": "c46ad2de4a20296ebd35b3fcc2d81a1d", + "version": "5.2.1" }, { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0618-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.5" - }, - { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0608-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v5-build0155-FORTINET.out.kvm.qcow2", + "filesize": 71782400, + "md5sum": "69b55ce7c8094ccd736bbfe8a3262b31", + "version": "5.2.0" }, { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0599-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-build0091-FORTINET.out.kvm.qcow2", + "filesize": 71135232, + "md5sum": "7bdafd32db552954c4c7fe60296fc600", + "version": "5.1.2" }, { - "images": { - "hda_disk_image": "FML_VMKV-64-v53-build0593-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.3.2" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "Cisco Virtual IOS allows user to run IOS on a standard computer.", - "images": [ - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Qemu Appliances/IOSv_startup_config.img/download", - "download_url": "https://sourceforge.net/projects/gns-3/files", - "filename": "IOSv_startup_config.img", - "filesize": 1048576, - "md5sum": "bc605651c4688276f81fd59dcf5cc786", - "version": "1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-build0086-FORTINET.out.kvm.qcow2", + "filesize": 71819264, + "md5sum": "960017582fe16e7ce7ab9602600e65fe", + "version": "5.1.1" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "vios-adventerprisek9-m.vmdk.SPA.156-2.T", - "filesize": 128450560, - "md5sum": "83707e3cc93646da58ee6563a68002b5", - "version": "15.6(2)T" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-build0083-FORTINET.out.kvm.qcow2", + "filesize": 72495104, + "md5sum": "eec53c2dbe5d00c8ce2a7ca50226325a", + "version": "5.1.0" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "vios-adventerprisek9-m.vmdk.SPA.156-1.T", - "filesize": 128122880, - "md5sum": "e7cb1bbd0c59280dd946feefa68fa270", - "version": "15.6(1)T" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-build0012-FORTINET.out.kvm.qcow2", + "filesize": 62771200, + "md5sum": "2af90bdad68a37f38fda39ee04cf2fba", + "version": "5.0.0" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "vios-adventerprisek9-m.vmdk.SPA.155-3.M", - "filesize": 127926272, - "md5sum": "79f613ac3b179d5a64520730925130b2", - "version": "15.5(3)M" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FAC_VM_KVM-v500-DATADRIVE.qcow2", + "filesize": 258048, + "md5sum": "09bad6cfe6301930adbc829eb8a67149", + "version": "5.x.x" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco IOSv", - "port_name_format": "Gi0/{0}", - "product_name": "IOSv", - "product_url": "http://virl.cisco.com/", + "name": "FortiAuthenticator", + "port_name_format": "Port{port1}", + "product_name": "FortiAuthenticator", + "product_url": "https://www.fortinet.com/products/identity-access-management/fortiauthenticator.html", "qemu": { - "adapter_type": "e1000", + "adapter_type": "virtio-net-pci", "adapters": 4, "arch": "x86_64", + "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", "hdb_disk_interface": "virtio", - "kvm": "require", - "ram": 512 + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "usage": "There is no default password and enable password. There is no default configuration present.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set. First book takes longer.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.156-2.T", - "hdb_disk_image": "IOSv_startup_config.img" + "hda_disk_image": "FAC_VM_KVM-v5-build0297-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "15.6(2)T" + "name": "5.4.1" }, { "images": { - "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.156-1.T", - "hdb_disk_image": "IOSv_startup_config.img" + "hda_disk_image": "FAC_VM_KVM-v5-build0163-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "15.6(1)T" + "name": "5.2.2" }, { "images": { - "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.155-3.M", - "hdb_disk_image": "IOSv_startup_config.img" + "hda_disk_image": "FAC_VM_KVM-v500-build0161-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "15.5(3)M" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "The Virtual Wireless Controller can cost-effectively manage, secure, and optimize the performance of local and branch wireless networks. Ideal for small and medium-sized businesses, the Virtual Wireless Controller facilitates server consolidation and improves business continuity in the face of outages.", - "documentation_url": "http://www.cisco.com/c/en/us/products/wireless/wireless-lan-controller/index.html", - "first_port_name": "ServicePort", - "images": [ - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=7.3.101.0", - "filename": "Cisco-vWLC-AIR-CTVM-7-3-101-0-file1.iso", - "filesize": 157900800, - "md5sum": "6bf17dceaf46e57aab0fb0d43eb6ea06", - "version": "7.3.101.0" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=7.6.110.0", - "filename": "AIR-CTVM-7-6-110-0-file1.iso", - "filesize": 185561088, - "md5sum": "7acbd88120f008a25d849b72b7207e92", - "version": "7.6.110.0" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.1.120.0", - "filename": "AIR-CTVM-k9-8-1-120.0.iso", - "filesize": 302104576, - "md5sum": "477363f88f07f64499bb4ab80ffa9d2f", - "version": "8.1.120.0" + "name": "5.2.1" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.2.141.0", - "filename": "MFG_CTVM_8_2_141_0.iso", - "filesize": 351156224, - "md5sum": "29483229ce7844df55a90564b077c958", - "version": "8.2.141.0" + "images": { + "hda_disk_image": "FAC_VM_KVM-v5-build0155-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + }, + "name": "5.2.0" }, { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.3.102.0", - "filename": "MFG_CTVM_8_3_102_0.iso", - "filesize": 365996032, - "md5sum": "7f6b7968b5bed04b5ecc119b6ba4e41c", - "version": "8.3.102.0" + "images": { + "hda_disk_image": "FAC_VM_KVM-v500-build0091-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" + }, + "name": "5.1.2" }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty8G.qcow2", - "filesize": 197120, - "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco vWLC", - "port_name_format": "Management{port1}", - "product_name": "Virtual Wireless LAN Controller", - "product_url": "http://www.cisco.com/c/en/us/support/wireless/virtual-wireless-controller/tsd-products-support-series-home.html", - "qemu": { - "adapter_type": "e1000", - "adapters": 2, - "arch": "x86_64", - "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "ide", - "kvm": "require", - "options": "", - "ram": 2048 - }, - "registry_version": 3, - "status": "experimental", - "symbol": ":/symbols/wlan_controller.svg", - "usage": "Starting vWLC will start an installation of vWLC onto a blank 8GB Drive.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", - "versions": [ { "images": { - "cdrom_image": "AIR-CTVM-k9-8-1-120.0.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "FAC_VM_KVM-v500-build0086-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "8.1.120.0" + "name": "5.1.1" }, { "images": { - "cdrom_image": "MFG_CTVM_8_2_141_0.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "FAC_VM_KVM-v500-build0083-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "8.2.141.0" + "name": "5.1.0" }, { "images": { - "cdrom_image": "MFG_CTVM_8_3_102_0.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "FAC_VM_KVM-v500-build0012-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "FAC_VM_KVM-v500-DATADRIVE.qcow2" }, - "name": "8.3.102.0" + "name": "5.0.0" } ] }, { "builtin": true, - "category": "router", - "description": "The BIRD project aims to develop a fully functional dynamic IP routing daemon primarily targeted on (but not limited to) Linux, FreeBSD and other UNIX-like systems and distributed under the GNU General Public License.", - "documentation_url": "http://bird.network.cz/?get_doc&f=bird.html", + "category": "firewall", + "description": "The Cisco WSA was one of the first secure web gateways to combine leading protections to help organizations address the growing challenges of securing and controlling web traffic. It enables simpler, faster deployment with fewer maintenance requirements, reduced latency, and lower operating costs. \u201cSet and forget\u201d technology frees staff after initial automated policy settings go live, and automatic security updates are pushed to network devices every 3 to 5 minutes. Flexible deployment options and integration with your existing security infrastructure help you meet quickly evolving security requirements.", + "documentation_url": "http://www.cisco.com/c/en/us/support/security/web-security-appliance/tsd-products-support-series-home.html", "images": [ { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/bird-tinycore64-1.5.0.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "bird-tinycore64-1.5.0.img", - "filesize": 22413312, - "md5sum": "08d50ba2b1b262e2e03e4babf90abf69", - "version": "1.5.0" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284806698&flowid=41610&softwareid=282975114&release=9.0.1&relind=AVAILABLE&rellifecycle=LD&reltype=latest", + "filename": "coeus-9-0-1-162-S000V.qcow2", + "filesize": 4753719296, + "md5sum": "3561a6dd9e1b0481e6e68f7e0235fa9b", + "version": "9.0.1" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "BIRD", - "product_name": "BIRD internet routing daemon", + "name": "Web Security Virtual Appliance", + "port_name_format": "nic{0}", + "product_name": "Web Security Virtual Appliance", + "product_url": "http://www.cisco.com/c/en/us/products/security/web-security-appliance/index.html", "qemu": { - "adapter_type": "e1000", - "adapters": 4, + "adapter_type": "virtio-net-pci", + "adapters": 5, "arch": "x86_64", + "boot_priority": "c", "console_type": "telnet", - "kvm": "allow", - "ram": 128 + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 4096 }, "registry_version": 3, "status": "stable", - "usage": "Configure interfaces in /opt/bootlocal.sh, BIRD configuration is done in /usr/local/etc/bird", - "vendor_name": "CZ.NIC Labs", - "vendor_url": "http://bird.network.cz/", + "usage": "Boot takes some time. NIC0 is the management port, it gets its initial address using DHCP. Default credentials: admin / ironport", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "bird-tinycore64-1.5.0.img" + "hda_disk_image": "coeus-9-0-1-162-S000V.qcow2" }, - "name": "1.5.0" + "name": "9.0.1" } ] }, { "builtin": true, - "category": "firewall", - "description": "The VM-Series combines next-generation firewall security and advanced threat prevention to protect your virtualized environments from advanced cyberthreats. The VM-Series natively analyzes all traffic in a single pass to determine the application identity, the content within, and the user identity.", - "documentation_url": "https://www.paloaltonetworks.com/documentation/80/virtualization/virtualization", - "first_port_name": "management", + "category": "router", + "description": "KEMP Technologies free LoadMaster Application Load Balancer is a fully featured member of our award winning and industry leading Load Balancer family. It can be used without charge in production environments with throughput requirements that don\u2019t exceed 20 Mbps, and for services that do not directly generate revenue. It is an ideal choice for low traffic web sites and applications, DevOps testing environments, technical training environments, and for any other deployments that suit your non-commercial needs.", + "documentation_url": "https://support.kemptechnologies.com/hc/en-us/articles/204427785", "images": [ { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-ESX-8.1.0-disk1.vmdk", - "filesize": 2281454080, - "md5sum": "49af8e8225c2e90414bde0be15eaf421", - "version": "8.1.0" - }, - { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-KVM-8.1.0.qcow2", - "filesize": 2260467712, - "md5sum": "459558515b965b2e43fde2842abbae66", - "version": "8.1.0" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.2.44.0.16685.RELEASE-Linux-KVM-XEN-FREE.disk", + "filesize": 17179869185, + "md5sum": "90d2f84fcabe0ba530c84cf12fab87f1", + "version": "7.2.44.0" }, { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-ESX-8.0.0-disk1.vmdk", - "filesize": 2002713088, - "md5sum": "a505fb1dbcc855ecf98630fd5d329f9a", - "version": "8.0.0" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.2.40.0.15707.RELEASE-Linux-KVM-XEN-FREE.disk", + "filesize": 17179869185, + "md5sum": "4284a80141f7974d082a2eed91ec6216", + "version": "7.2.40.0" }, { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-KVM-8.0.0.qcow2", - "filesize": 1987444736, - "md5sum": "b6a1ddc8552aff87f05f9c0d4cb54dc3", - "version": "8.0.0" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.2.38.0.14750.RELEASE-Linux-KVM-XEN.disk", + "filesize": 17179869185, + "md5sum": "f51f17640793b31a7eab70b53f6ae3ae", + "version": "7.2.38.0" }, { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-ESX-7.1.0-disk1.vmdk", - "filesize": 1871149056, - "md5sum": "e044dc649b7146ee4f619edb0e5f6675", - "version": "7.1.0 (ESX)" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.2.36.2.14271.RELEASE-Linux-KVM-XEN-FREE.disk", + "filesize": 17179869185, + "md5sum": "eebfc96bd6c1c50827d00647206b59dd", + "version": "7.1.36.2" }, { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-KVM-7.1.0.qcow2", - "filesize": 1858797568, - "md5sum": "da300253709740068927408239c2e321", - "version": "7.1.0" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.1.35.0.13244.RELEASE-Linux-KVM-XEN-FREE.disk", + "filesize": 17179869185, + "md5sum": "f72e8dffa201c8ec92767872593a52a1", + "version": "7.1.35.0" }, { - "download_url": "https://support.paloaltonetworks.com/Updates/SoftwareUpdates/", - "filename": "PA-VM-ESX-6.1.0-disk1.vmdk", - "filesize": 2959736832, - "md5sum": "64b1e81cd54008318235832ea6d71424", - "version": "6.1.0 (ESX)" + "download_url": "http://freeloadbalancer.com/download/", + "filename": "LoadMaster-VLM-7.1.34.1.12802.RELEASE-Linux-KVM-XEN-FREE.disk", + "filesize": 17179869185, + "md5sum": "157b36233bbd9d9dfa18363958b34fd1", + "version": "7.1.34.1" } ], - "maintainer": "Community", - "maintainer_email": "", - "name": "PA-VM", - "port_name_format": "ethernet1/{port1}", - "product_name": "PAN VM-Series Firewall", - "product_url": "https://www.paloaltonetworks.com/products/secure-the-network/virtualized-next-generation-firewall/vm-series", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "KEMP Free VLM", + "port_name_format": "eth{0}", + "product_name": "KEMP Free VLM", + "product_url": "http://freeloadbalancer.com/#about", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 25, + "adapters": 2, "arch": "x86_64", - "console_type": "telnet", + "boot_priority": "c", + "console_type": "vnc", "hda_disk_interface": "virtio", - "kvm": "require", + "kvm": "allow", "options": "-smp 2", - "ram": 4096 + "ram": 2048 }, "registry_version": 3, - "status": "experimental", - "symbol": "pan-vm-fw.svg", - "usage": "Default Username: admin\r\nDefault Password: admin\r\nPAN-VM goes through several iterations of host prompts during boot. This is normal and expected.\r\nLogin is available when prompt is PA-VM login:\r\n\r\nGetting Started:\r\nTo configure a static IP address at the console enter the following commands:\r\n\r\nconfigure\r\nset deviceconfig system ip-address netmask default-gateway type static\r\nset deviceconfig system dns-setting servers primary secondary \r\ncommit\r\n", - "vendor_name": "Palo Alto Networks", - "vendor_url": "http://www.paloaltonetworks.com/", + "status": "stable", + "symbol": "loadbalancer.svg", + "usage": "Credentials: bal / 1fourall", + "vendor_name": "KEMP", + "vendor_url": "http://freeloadbalancer.com/", "versions": [ { "images": { - "hda_disk_image": "PA-VM-ESX-8.1.0-disk1.vmdk" - }, - "name": "8.1.0 (ESX)" - }, - { - "images": { - "hda_disk_image": "PA-VM-KVM-8.1.0.qcow2" + "hda_disk_image": "LoadMaster-VLM-7.2.44.0.16685.RELEASE-Linux-KVM-XEN-FREE.disk" }, - "name": "8.1.0" + "name": "7.2.44.0" }, { "images": { - "hda_disk_image": "PA-VM-ESX-8.0.0-disk1.vmdk" + "hda_disk_image": "LoadMaster-VLM-7.2.40.0.15707.RELEASE-Linux-KVM-XEN-FREE.disk" }, - "name": "8.0.0 (ESX)" + "name": "7.2.40.0" }, { "images": { - "hda_disk_image": "PA-VM-KVM-8.0.0.qcow2" + "hda_disk_image": "LoadMaster-VLM-7.2.38.0.14750.RELEASE-Linux-KVM-XEN.disk" }, - "name": "8.0.0" + "name": "7.2.38.0" }, { "images": { - "hda_disk_image": "PA-VM-ESX-7.1.0-disk1.vmdk" + "hda_disk_image": "LoadMaster-VLM-7.2.36.2.14271.RELEASE-Linux-KVM-XEN-FREE.disk" }, - "name": "7.1.0 (ESX)" + "name": "7.2.36.2" }, { "images": { - "hda_disk_image": "PA-VM-KVM-7.1.0.qcow2" + "hda_disk_image": "LoadMaster-VLM-7.1.35.0.13244.RELEASE-Linux-KVM-XEN-FREE.disk" }, - "name": "7.1.0" + "name": "7.1.35.0" }, { "images": { - "hda_disk_image": "PA-VM-ESX-6.1.0-disk1.vmdk" + "hda_disk_image": "LoadMaster-VLM-7.1.34.1.12802.RELEASE-Linux-KVM-XEN-FREE.disk" }, - "name": "6.1.0 (ESX)" + "name": "7.1.34.1" } ] }, { "builtin": true, - "category": "guest", - "description": "Security Onion is a Linux distro for intrusion detection, network security monitoring, and log management. It\u2019s based on Ubuntu and contains Snort, Suricata, Bro, OSSEC, Sguil, Squert, ELSA, Xplico, NetworkMiner, and many other security tools. The easy-to-use Setup wizard allows you to build an army of distributed sensors for your enterprise in minutes!", - "documentation_url": "https://github.com/Security-Onion-Solutions/security-onion/wiki", + "category": "firewall", + "description": "FortiGate Virtual Appliance offers the same level of advanced threat prevention features like the physical appliances in private, hybrid and public cloud deployment.", + "documentation_url": "http://docs.fortinet.com/p/inside-fortios", "images": [ { - "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.4.iso", - "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.4.iso", - "filename": "securityonion-14.04.5.4.iso", - "filesize": 1874853888, - "md5sum": "9c7cab756b675beb10de4274a3ad3bc6", - "version": "14.04.5.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v6-build0200-FORTINET.out.kvm.qcow2", + "filesize": 51552256, + "md5sum": "be6f74ea13da09cf0b68e87234e2d8d5", + "version": "6.0.3" }, { - "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.3.iso", - "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.3.iso", - "filename": "securityonion-14.04.5.3.iso", - "filesize": 1889533952, - "md5sum": "fb80ccb2d3c0f3f511823fa5858f87d1", - "version": "14.04.5.3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v6-build0076-FORTINET.out.kvm.qcow2", + "filesize": 46104576, + "md5sum": "161728b413e097954bd640ade89dfeb1", + "version": "6.0.0" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%30disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" - } - ], - "maintainer": "Brent Stewart", - "maintainer_email": "brent@stewart.tc", - "name": "Security Onion", - "product_name": "Security Onion", - "product_url": "https://securityonion.net/", - "qemu": { - "adapter_type": "e1000", - "adapters": 2, - "arch": "i386", - "console_type": "telnet", - "kvm": "allow", - "ram": 3072 - }, - "registry_version": 3, - "status": "stable", - "symbol": "securityonion-logo.png", - "usage": "Your default account will have sudo priviledges. Squil and Squert username and password are configured in the Setup wizard. MySQL root is set to null. For more info see https://github.com/Security-Onion-Solutions/security-onion/wiki/Passwords.", - "vendor_name": "Security Onion Solutions, LLC", - "vendor_url": "https://securityonion.net/", - "versions": [ - { - "images": { - "cdrom_image": "securityonion-14.04.5.4.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "14.04.5.4" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1575-FORTINET.out.kvm.qcow2", + "filesize": 41594880, + "md5sum": "c312ea8ec1afffb73858fb1b15c095ef", + "version": "5.6.4" }, { - "images": { - "cdrom_image": "securityonion-14.04.5.3.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "14.04.5.3" - } - ] - }, - { - "builtin": true, - "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.", - "documentation_url": "http://www.gns3.com", - "images": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1547-FORTINET.out.kvm.qcow2", + "filesize": 40939520, + "md5sum": "a908f8620e8bbccce8794733f3637e13", + "version": "5.6.3" + }, { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/core-linux-6.4-internet-0.1.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "core-linux-6.4-internet-0.1.img", - "filesize": 16711680, - "md5sum": "8ebc5a6ec53a1c05b7aa101b5ceefe31", - "version": "0.1" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Internet", - "product_name": "Internet", - "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "i386", - "console_type": "telnet", - "kvm": "allow", - "options": "-device e1000,netdev=internet0 -netdev vde,sock=/var/run/vde2/qemu0.ctl,id=internet0", - "ram": 64 - }, - "registry_version": 3, - "status": "stable", - "symbol": ":/symbols/cloud.svg", - "usage": "Just connect stuff to the appliance. Everything is automated.", - "vendor_name": "GNS3", - "vendor_url": "http://www.gns3.com", - "versions": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1486-FORTINET.out.kvm.qcow2", + "filesize": 39231488, + "md5sum": "afb9f237de2545db8663f4a2c5805355", + "version": "5.6.2" + }, { - "images": { - "hda_disk_image": "core-linux-6.4-internet-0.1.img" - }, - "name": "0.1" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which includes protocol daemons for BGP, IS-IS, LDP, OSPF, PIM, and RIP.\n\nFRR\u2019s seamless integration with the native Linux/Unix IP networking stacks makes it applicable to a wide variety of use cases including connecting hosts/VMs/containers to the network, advertising network services, LAN switching and routing, Internet access routers, and Internet peering.\n\nThis is an unofficial VM or FRR.", - "images": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1484-FORTINET.out.kvm.qcow2", + "filesize": 39227392, + "md5sum": "6f76d1207b9f6cb724f8034f57711705", + "version": "5.6.1" + }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/frr/files/frr4.0-vm0.1.qcow2.bz2/download", - "download_url": "https://sourceforge.net/projects/frr/files/", - "filename": "frr4.0-vm0.1.qcow2", - "filesize": 1670643712, - "md5sum": "e1dc58cbb2b71c58051538c07d412493", - "version": "FRR4.0 - VM0.1" - } - ], - "maintainer": "Andras Dosztal", - "maintainer_email": "developers@gns3.net", - "name": "FRR", - "port_name_format": "ens{port3}", - "product_name": "FRR", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 8, - "arch": "x86_64", - "console_type": "telnet", - "kvm": "require", - "ram": 256 - }, - "registry_version": 3, - "status": "stable", - "usage": "Credentials: frr / frr\nIf you exit from the router CLI, you can get back by typing 'vtysh' to the console.", - "vendor_name": "FRRouting Project", - "vendor_url": "https://frrouting.org", - "versions": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1449-FORTINET.out.kvm.qcow2", + "filesize": 38760448, + "md5sum": "17ee2cc8c76c4928a68a2d016aa83ace", + "version": "5.6.0" + }, { - "images": { - "hda_disk_image": "frr4.0-vm0.1.qcow2" - }, - "name": "FRR4.0 - VM0.1" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "This appliance provides DNS using dnsmasq with the local domain set to \"lab\".", - "docker": { - "adapters": 1, - "console_type": "telnet", - "image": "adosztal/dns:latest" - }, - "maintainer": "Andras Dosztal", - "maintainer_email": "developers@gns3.net", - "name": "DNS", - "product_name": "DNS", - "registry_version": 3, - "status": "stable", - "symbol": "linux_guest.svg", - "usage": "You can add records by adding entries to the /etc/hosts file in the following format:\n%IP_ADDRESS% %HOSTNAME%.lab %HOSTNAME%\n\nExample:\n192.168.123.10 router1.lab router1", - "vendor_name": "Ubuntu", - "vendor_url": "https://www.ubuntu.com/" - }, - { - "builtin": true, - "category": "router", - "description": "With proven ultra-high performance and scalability, the Brocade vRouter is the networking industry leader in software innovation. The Brocade vRouter has set a the benchmark for all software-based routers, while offering easy scalability, a broad set of capabilities, and the peace of mind that comes with rock solid reliability.", - "documentation_url": "http://www.brocade.com/en/products-services/software-networking/network-functions-virtualization/vrouter.html", - "images": [ + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1183-FORTINET.out.kvm.qcow2", + "filesize": 38608896, + "md5sum": "c1eb02996a0919c934785d5f48df9507", + "version": "5.4.8" + }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "vyatta-vrouter-17.1.1_B_amd64.iso", - "filesize": 347078656, - "md5sum": "914c9ca9d51a33fc54f718020f862df2", - "version": "17.1.1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build6446-FORTINET.out.kvm.qcow2", + "filesize": 38715392, + "md5sum": "17d3dfebd4b222569cf10cfab83e0e56", + "version": "5.4.7" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "vyatta-vrouter-17.1.0_B_amd64.iso", - "filesize": 346030080, - "md5sum": "ff524e06fda6d982b9b66f25940fe63b", - "version": "17.1.0" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1165-FORTINET.out.kvm.qcow2", + "filesize": 38457344, + "md5sum": "4429f1f0f2cce4a8781354a9eb745c61", + "version": "5.4.6" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "vyatta-vrouter-5.2R2_B_amd64.iso", - "filesize": 344981504, - "md5sum": "6b7dcc152a18187ad151483c139fb82c", - "version": "5.2R2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1138-FORTINET.out.kvm.qcow2", + "filesize": 38096896, + "md5sum": "66c6f6a4b12f0223dd2997b199067e67", + "version": "5.4.5" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "vyatta-vrouter-5.1R1_B_amd64.iso", - "filesize": 344981504, - "md5sum": "e374b8bae9eecd52ee841f5e262b3a16", - "version": "5.1R1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build7605-FORTINET.out.kvm.qcow2", + "filesize": 37761024, + "md5sum": "2602fd0c79dd1a69c14b0b46121c875e", + "version": "5.4.4" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "livecd-VR5600_5.0R2_B_amd64.iso", - "filesize": 340787200, - "md5sum": "ce47dba6f89ef1175ef8850110521104", - "version": "5.0R2" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1111-FORTINET.out.kvm.qcow2", + "filesize": 38141952, + "md5sum": "576f95dd7809dd24440fee147252177f", + "version": "5.4.3" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "livecd-VR5600_4.2R1_B_amd64.iso", - "filesize": 326107136, - "md5sum": "5e3023c64dc409ae01d5bcb1b6732593", - "version": "4.2R1" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1100-FORTINET.out.kvm.qcow2", + "filesize": 37789696, + "md5sum": "9ec360c4ffc0811cdecf3d74b152bc14", + "version": "5.4.2" }, { - "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", - "filename": "vyatta-livecd_3.5R3T60_amd64.iso", - "filesize": 288358400, - "md5sum": "90360273f818a3dba83fa93ef6da938b", - "version": "3.5R3" + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1064-FORTINET.out.kvm.qcow2", + "filesize": 37715968, + "md5sum": "441ca5fae1aff9a42fdcaaf8aceb731c", + "version": "5.4.1" }, { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build1011-FORTINET.out.kvm.qcow2", + "filesize": 35373056, + "md5sum": "22fc2bdca456dfe3027ad48dff370352", + "version": "5.4.0" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0762-FORTINET.out.kvm.qcow2", + "filesize": 38776832, + "md5sum": "78df232e516a863f233de88ffba5bc4b", + "version": "5.2.13" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", + "filesize": 38363136, + "md5sum": "2efa0c110abed83b71927145d1e87805", + "version": "5.2.12" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0754-FORTINET.out.kvm.qcow2", + "filesize": 35069952, + "md5sum": "b6cdab6a8240e89f50c0448cf0b711ea", + "version": "5.2.11" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0742-FORTINET.out.kvm.qcow2", + "filesize": 34779136, + "md5sum": "21fc2bab23a42faa9dc6dcb1a4b180aa", + "version": "5.2.10" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0736-FORTINET.out.kvm.qcow2", + "filesize": 34590720, + "md5sum": "89cd0883798beed4841dd300f69e462a", + "version": "5.2.9" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0727-FORTINET.out.kvm.qcow2", + "filesize": 34508800, + "md5sum": "ae7597450893bc60722ef7a787f0a925", + "version": "5.2.8" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0718-FORTINET.out.kvm.qcow2", + "filesize": 34439168, + "md5sum": "1c59a521885c465004456f74d003726c", + "version": "5.2.7" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FGT_VM64_KVM-v5-build0701-FORTINET.out.kvm.qcow2", + "filesize": 33902592, + "md5sum": "c4d2cbe51669796e48623e006782f7dc", + "version": "5.2.5" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty8G.qcow2", + "filename": "empty30G.qcow2", "filesize": 197120, - "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "md5sum": "3411a599e822f2ac6be560a26405821a", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "vRouter", - "port_name_format": "eth{0}", - "product_name": "vRouter", - "product_url": "http://www.brocade.com/en/products-services/software-networking/network-functions-virtualization/vrouter.html", + "name": "FortiGate", + "port_name_format": "Port{port1}", + "product_name": "FortiGate", + "product_url": "http://www.fortinet.com/products/fortigate/virtual-appliances.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 8, + "adapters": 10, "arch": "x86_64", - "boot_priority": "cd", + "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", - "kvm": "require", - "options": "-smp 4 -cpu host", - "ram": 4096 + "hdb_disk_interface": "virtio", + "kvm": "allow", + "ram": 1024 }, "registry_version": 3, "status": "stable", - "usage": "60 days evaluation. The Brocade vRouter must be on-line and have public connectivity in order to communicate with the Brocade licensing server for automated license key generation. Please note that the evaluation software will only run for 24 hours after installation without the activation code being entered into the system. You must enter your activation code in order to retrieve your licensing key after you install the Brocade vRouter software. Default credentials: vyatta / vyatta", - "vendor_name": "Brocade", - "vendor_url": "http://www.brocade.com/", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "cdrom_image": "vyatta-vrouter-17.1.1_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "FGT_VM64_KVM-v6-build0200-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.3" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v6-build0076-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.0" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1575-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.4" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1547-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.3" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1486-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.2" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1484-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.1" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1449-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.0" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1183-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.8" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build6446-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.7" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1165-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.6" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1138-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.5" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build7605-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.4" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1111-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.3" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1100-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.2" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1064-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.1" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build1011-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.0" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0762-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.13" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.12" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0754-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.11" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0742-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.10" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0736-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.9" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0727-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.8" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0718-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.7" + }, + { + "images": { + "hda_disk_image": "FGT_VM64_KVM-v5-build0701-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.5" + } + ] + }, + { + "builtin": true, + "category": "firewall", + "description": "The Brocade Virtual ADX (vADX\u2122) is a full-fledged Application Delivery Controller (ADC) platform with a virtual footprint that leverages Intel advanced technology to deliver remarkable performance. The software is designed to run on standardsbased hypervisors, hosted on Intel x86 COTS hardware. It offers a complete suite of Layer 4 and Layer 7 server load balancing capabilities and application security services with extensible management via rich SOAP/XML APIs.", + "first_port_name": "mgmt1", + "images": [ + { + "download_url": "http://www1.brocade.com/forms/jsp/virtual-adx-download/index.jsp", + "filename": "SSR03100KVM.qcow2", + "filesize": 3327066112, + "md5sum": "40e5717463fb2f5d1bb7c4de7df15c5c", + "version": "03100" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Brocade Virtual ADX", + "port_name_format": "Port {port1}", + "product_name": "Virtual ADX", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 8, + "arch": "x86_64", + "console_type": "vnc", + "kvm": "require", + "options": "-smp 2", + "ram": 2048 + }, + "registry_version": 3, + "status": "experimental", + "usage": "Login is root, type vadx-console to access to the console", + "vendor_name": "Brocade", + "vendor_url": "https://www.brocade.com", + "versions": [ + { + "images": { + "hda_disk_image": "SSR03100KVM.qcow2" + }, + "name": "03100" + } + ] + }, + { + "builtin": true, + "category": "firewall", + "description": "The pfSense project is a free network firewall distribution, based on the FreeBSD operating system with a custom kernel and including third party free software packages for additional functionality. pfSense software, with the help of the package system, is able to provide the same functionality or more of common commercial firewalls, without any of the artificial limitations. It has successfully replaced every big name commercial firewall you can imagine in numerous installations around the world, including Check Point, Cisco PIX, Cisco ASA, Juniper, Sonicwall, Netgear, Watchguard, Astaro, and more.", + "documentation_url": "https://doc.pfsense.org/index.php/Main_Page", + "images": [ + { + "download_url": "https://www.pfsense.org/download/mirror.php?section=downloads", + "filename": "pfSense-CE-memstick-2.4.3-RELEASE-amd64.img", + "filesize": 650392576, + "md5sum": "b754d7e75dece5e756b6539c95714a74", + "version": "2.4.3" + }, + { + "download_url": "https://www.pfsense.org/download/mirror.php?section=downloads", + "filename": "pfSense-CE-2.3.5-RELEASE-2g-amd64-nanobsd.img", + "filesize": 1989969408, + "md5sum": "b6cb76adba3e1113892f84ea01894228", + "version": "2.3.5" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "pfSense", + "port_name_format": "em{0}", + "product_name": "pfSense", + "qemu": { + "adapter_type": "e1000", + "adapters": 6, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "allow", + "process_priority": "normal", + "ram": 2048 + }, + "registry_version": 3, + "status": "stable", + "vendor_name": "Electric Sheep Fencing LLC", + "vendor_url": "https://www.pfsense.org", + "versions": [ + { + "images": { + "hda_disk_image": "pfSense-CE-memstick-2.4.3-RELEASE-amd64.img" + }, + "name": "2.4.3" + }, + { + "images": { + "hda_disk_image": "pfSense-CE-2.3.5-RELEASE-2g-amd64-nanobsd.img" + }, + "name": "2.3.5" + } + ] + }, + { + "availability": "free", + "builtin": true, + "category": "guest", + "description": "openSUSE is a free and Linux-based operating system for PC, Laptop or Server. The openSUSE project is a community program sponsored by Novell. It is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE and a number of other companies.", + "documentation_url": "https://en.opensuse.org/Main_Page", + "images": [ + { + "download_url": "http://www.osboxes.org/opensuse/", + "filename": "openSUSE_42.3-Leap-VM-64bit.vmdk", + "filesize": 5891293184, + "md5sum": "ab777cf90557460ff35aedfbf2befc5d", + "version": "Leap 42.3" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "openSUSE", + "port_name_format": "eth{0}", + "product_name": "openSUSE", + "product_url": "https://www.opensuse.org/#Leap", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "vnc", + "hda_disk_interface": "sata", + "kvm": "require", + "options": "-vga virtio", + "ram": 1024 + }, + "registry_version": 4, + "status": "stable", + "usage": "Username: osboxes\nPassword: osboxes.org\n\nroot password: osboxes.org", + "vendor_name": "SUSE LLC.", + "vendor_url": "https://www.opensuse.org/", + "versions": [ + { + "images": { + "hda_disk_image": "openSUSE_42.3-Leap-VM-64bit.vmdk" + }, + "name": "Leap 42.3" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "TacacsGUI Free Access Control Server for Your Network Devices. GUI for powerful daemon. The project of Alexey Mochalin, based on tacacs daemon by Marc Huber", + "documentation_url": "https://tacacsgui.com/documentation/", + "images": [ + { + "download_url": "https://drive.google.com/open?id=1U8tbj14NqEyCmarayhZm54qTyjgsJm4B", + "filename": "tac_plus.qcow2", + "filesize": 160301056, + "md5sum": "6b5e66590051124dae586b8640b2eb11", + "version": "201710201114" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "TacacsGUI", + "port_name_format": "Port{port1}", + "product_name": "TacacsGUI", + "product_url": "https://drive.google.com/open?id=1U8tbj14NqEyCmarayhZm54qTyjgsJm4B", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "ide", + "kvm": "allow", + "ram": 1024 + }, + "registry_version": 3, + "status": "stable", + "usage": "Credentials: SSH ---> username: root ---> password: 1234 MySQL DB: ---> username: root --> password: tacacs Web interface: ---> username: tacgui ---> password: abc123", + "vendor_name": "TacacsGUI", + "vendor_url": "https://tacacsgui.com/", + "versions": [ + { + "images": { + "hda_disk_image": "tac_plus.qcow2" + }, + "name": "201710201114" + } + ] + }, + { + "availability": "service-contract", + "builtin": true, + "category": "multilayer_switch", + "description": "The NX-OSv 9000 is a virtual platform that is designed to simulate the control plane aspects of a network element running Cisco Nexus 9000 software. The NX-OSv 9000 shares the same software image running on Cisco Nexus 9000 hardware platform although no specific hardware emulation is implemented. When the software runs as a virtual machine, line card (LC) ASIC provisioning or any interaction from the control plane to hardware ASIC is handled by the NX-OSv 9000 software data plane.\nThe NX-OSv 9000 for the Cisco Nexus 9000 Series provides a useful tool to enable the devops model and rapidly test changes to the infrastructure or to infrastructure automation tools. This enables network simulations in large scale for customers to validate configuration changes on a simulated network prior to applying them on a production network. Some users have also expressed interest in using the simulation system for feature test ,verification, and automation tooling development and test simualtion prior to deployment. NX-OSv 9000 can be used as a programmability vehicle to validate software defined networks (SDNs) and Network Function Virtualization (NFV) based solutions.", + "documentation_url": "http://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/7-x/nx-osv/configuration/guide/b_NX-OSv_9000/b_NX-OSv_chapter_01.html", + "first_port_name": "mgmt0", + "images": [ + { + "download_url": "https://software.cisco.com/download/home/286312239/type/282088129/release/9.2%25281%2529", + "filename": "nxosv-final.9.2.1.qcow2", + "filesize": 1330315264, + "md5sum": "1d7fa4654602d7ffbf62544edfe71986", + "version": "9.2.1" + }, + { + "download_url": "https://software.cisco.com/download/home/286312239/type/282088129/release/7.0%25283%2529I7%25285%2529", + "filename": "nxosv-final.7.0.3.I7.5.qcow2", + "filesize": 1027670016, + "md5sum": "68a4008e189c8a35ccb8ee58db9608bb", + "version": "7.0.3.I7.5" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I7.4.qcow2", + "filesize": 985792512, + "md5sum": "1e980c95ca47045ae45ded6e07fabfb8", + "version": "7.0.3.I7.4" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I7.3.qcow2", + "filesize": 983629824, + "md5sum": "9d7a20367bf681a239f14097bbce470a", + "version": "7.0.3.I7.3" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I7.2.qcow2", + "filesize": 906231808, + "md5sum": "17295efb13e83b24a439148449bfd5ab", + "version": "7.0.3.I7.2" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I7.1.qcow2", + "filesize": 903151616, + "md5sum": "3c122f27d0c3684c63657207eadf4d06", + "version": "7.0.3.I7.1" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I6.1.qcow2", + "filesize": 780402688, + "md5sum": "18bb991b814a508d1190575f99deed99", + "version": "7.0.3.I6.1" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I5.2.qcow2", + "filesize": 777715712, + "md5sum": "c06aaa02f758a64fd8fee9406756f1da", + "version": "7.0.3.I5.2" + }, + { + "download_url": "https://software.cisco.com/download/", + "filename": "nxosv-final.7.0.3.I5.1.qcow2", + "filesize": 784990208, + "md5sum": "201ea658fa4c57452ee4b2aa4f5262a7", + "version": "7.0.3.I5.1" + }, + { + "compression": "zip", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/OVMF-20160813.fd.zip/download", + "download_url": "", + "filename": "OVMF-20160813.fd", + "filesize": 2097152, + "md5sum": "8ff0ef1ec56345db5b6bda1a8630e3c6", + "version": "16.08.13" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco NX-OSv 9000", + "port_name_format": "Ethernet1/{port1}", + "product_name": "NX-OSv 9000", + "qemu": { + "adapter_type": "e1000", + "adapters": 10, + "arch": "x86_64", + "console_type": "telnet", + "cpus": 2, + "hda_disk_interface": "sata", + "kvm": "require", + "ram": 8096 + }, + "registry_version": 4, + "status": "stable", + "usage": "The old (I5) versions might require 8192 MB of RAM; adjust it if necessary.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", + "versions": [ + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.9.2.1.qcow2" + }, + "name": "9.2.1" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.5.qcow2" + }, + "name": "7.0.3.I7.5" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.4.qcow2" + }, + "name": "7.0.3.I7.4" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.3.qcow2" + }, + "name": "7.0.3.I7.3" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.2.qcow2" + }, + "name": "7.0.3.I7.2" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I7.1.qcow2" + }, + "name": "7.0.3.I7.1" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I6.1.qcow2" + }, + "name": "7.0.3.I6.1" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I5.2.qcow2" + }, + "name": "7.0.3.I5.2" + }, + { + "images": { + "bios_image": "OVMF-20160813.fd", + "hda_disk_image": "nxosv-final.7.0.3.I5.1.qcow2" + }, + "name": "7.0.3.I5.1" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Control Plane (vCP) VM and is meant to be paired with the Virtual Forwarding Plane (vFP) VM.", + "documentation_url": "http://www.juniper.net/techpubs/", + "first_port_name": "fxp0", + "images": [ + { + "filename": "junos-vmx-x86-64-17.4R1.16.qcow2", + "filesize": 1325400064, + "md5sum": "85239193e852d643dfd9d5c257240bdf", + "version": "17.4R1.16-KVM" + }, + { + "filename": "vmxhdd-17.4R1.16.img", + "filesize": 108986368, + "md5sum": "69e9821ebc59367527336d8bcecd171c", + "version": "17.4R1.16-KVM" + }, + { + "filename": "metadata-usb-re-17.4R1.16.img", + "filesize": 16777216, + "md5sum": "a5b125822b798c7167c35966ea00229a", + "version": "17.4R1.16-KVM" + }, + { + "filename": "junos-vmx-x86-64-17.3R2.10.qcow2", + "filesize": 1298137088, + "md5sum": "11984eb87b471e8cc2677212c4277959", + "version": "17.3R2.10-KVM" + }, + { + "filename": "vmxhdd-17.3R2.10.img", + "filesize": 108986368, + "md5sum": "9d843e5493d5e86d37853a72885d84c8", + "version": "17.3R2.10-KVM" + }, + { + "filename": "metadata-usb-re-17.3R2.10.img", + "filesize": 16777216, + "md5sum": "564ca5b7c03ed39680d2d42464d9489b", + "version": "17.3R2.10-KVM" + }, + { + "filename": "vcp_17.1R1.8-disk1.vmdk", + "filesize": 1065513984, + "md5sum": "2dba6dff363c0619903f85c3dedce8d8", + "version": "17.1R1.8-ESXi" + }, + { + "filename": "vcp_17.1R1.8-disk2.vmdk", + "filesize": 5928448, + "md5sum": "df7016f8b0fd456044425fa92566c129", + "version": "17.1R1.8-ESXi" + }, + { + "filename": "vcp_17.1R1.8-disk3.vmdk", + "filesize": 71680, + "md5sum": "e9460158e6e27f7885981ab562e60944", + "version": "17.1R1.8-ESXi" + }, + { + "filename": "junos-vmx-x86-64-17.1R1.8.qcow2", + "filesize": 1192296448, + "md5sum": "4434e70fedfec2ef205412236ae934a4", + "version": "17.1R1.8-KVM" + }, + { + "filename": "vmxhdd-17.1R1.img", + "filesize": 108986368, + "md5sum": "3634fa16219852d0dba46b2fb77d5969", + "version": "17.1R1.8-KVM" + }, + { + "filename": "metadata-usb-re-17.1R1.img", + "filesize": 16777216, + "md5sum": "e911911dc77e7fef1375e66ae98e41b8", + "version": "17.1R1.8-KVM" + }, + { + "filename": "vcp_16.2R1.6-disk1.vmdk", + "filesize": 1093272576, + "md5sum": "6407f6b448de3b45b86fccb4d586a977", + "version": "16.2R1.6-ESXi" + }, + { + "filename": "vcp_16.2R1.6-disk2.vmdk", + "filesize": 5928960, + "md5sum": "73db51629c009466d39f5d7fdf736224", + "version": "16.2R1.6-ESXi" + }, + { + "filename": "vcp_16.2R1.6-disk3.vmdk", + "filesize": 71680, + "md5sum": "6df61c10f25ea6279562e5a13342100d", + "version": "16.2R1.6-ESXi" + }, + { + "filename": "junos-vmx-x86-64-16.2R1.6.qcow2", + "filesize": 1217462272, + "md5sum": "61497595fb62a9d9805724a3e0a56fa0", + "version": "16.2R1.6-KVM" + }, + { + "filename": "vmxhdd-16.2R1.img", + "filesize": 108986368, + "md5sum": "ce75a16cf130d8744652c8f23d1d13ef", + "version": "16.2R1.6-KVM" + }, + { + "filename": "metadata-usb-re-16.2R1.img", + "filesize": 16777216, + "md5sum": "dded4a98c18ecc79daaa1d11dd0cfb2f", + "version": "16.2R1.6-KVM" + }, + { + "filename": "vcp_16.1R4.7-disk1.vmdk", + "filesize": 987702272, + "md5sum": "e438f48a34d6b8047e36994fb323a97b", + "version": "16.1R4.7-ESXi" + }, + { + "filename": "vcp_16.1R4.7-disk2.vmdk", + "filesize": 5929472, + "md5sum": "fb30d5afd182a03f36daaaf985e0d1ef", + "version": "16.1R4.7-ESXi" + }, + { + "filename": "vcp_16.1R4.7-disk3.vmdk", + "filesize": 71680, + "md5sum": "c185a44561890a4b6e84cea6b86ad92a", + "version": "16.1R4.7-ESXi" + }, + { + "filename": "junos-vmx-x86-64-16.1R4.7.qcow2", + "filesize": 1115815936, + "md5sum": "020db6733c158bd871bf28dcd7d039e9", + "version": "16.1R4.7-KVM" + }, + { + "filename": "vmxhdd-16.1R4.img", + "filesize": 108986368, + "md5sum": "97b86d9d69f9615fb97d50a8d4aecd97", + "version": "16.1R4.7-KVM" + }, + { + "filename": "metadata-usb-re-16.1R4.img", + "filesize": 16777216, + "md5sum": "fb200eec654e14201bfa0720b39a64f0", + "version": "16.1R4.7-KVM" + }, + { + "filename": "vcp_16.1R3.10-disk1.vmdk", + "filesize": 977419776, + "md5sum": "532ab7d63c1873e6e6e9b9b057eb83ec", + "version": "16.1R3.10-ESXi" + }, + { + "filename": "vcp_16.1R3.10-disk2.vmdk", + "filesize": 5928448, + "md5sum": "c563254a38c0d83c4bb9a866cae661f0", + "version": "16.1R3.10-ESXi" + }, + { + "filename": "vcp_16.1R3.10-disk3.vmdk", + "filesize": 71680, + "md5sum": "9c8f3a8f26ff418eb6a5acd4803a3ca2", + "version": "16.1R3.10-ESXi" + }, + { + "filename": "junos-vmx-x86-64-16.1R3.10.qcow2", + "filesize": 1105526784, + "md5sum": "f677c8235f579c54ee746daade5ee443", + "version": "16.1R3.10-KVM" + }, + { + "filename": "vmxhdd-16.1R3.img", + "filesize": 108986368, + "md5sum": "28626ce47bea74b7d92bb4e28fa85c93", + "version": "16.1R3.10-KVM" + }, + { + "filename": "metadata-usb-re-16.1R3.img", + "filesize": 16777216, + "md5sum": "b187253fa654a30a7dd0b331e2c6e6a4", + "version": "16.1R3.10-KVM" + }, + { + "filename": "vcp_16.1R2.11-disk1.vmdk", + "filesize": 970741248, + "md5sum": "20945c0114fa4f88cdbedd0551f62d8f", + "version": "16.1R2.11-ESXi" + }, + { + "filename": "vcp_16.1R2.11-disk2.vmdk", + "filesize": 5930496, + "md5sum": "904acd14a9eef0bdb60f18db63b8a653", + "version": "16.1R2.11-ESXi" + }, + { + "filename": "vcp_16.1R2.11-disk3.vmdk", + "filesize": 71680, + "md5sum": "f6f6c24c0f991faf93c45f1fbc2ed0ae", + "version": "16.1R2.11-ESXi" + }, + { + "filename": "junos-vmx-x86-64-16.1R2.11.qcow2", + "filesize": 1194065920, + "md5sum": "da443543eee6d7305a6851d38d0613ea", + "version": "16.1R2.11-KVM" + }, + { + "filename": "vmxhdd-16.1R2.img", + "filesize": 108986368, + "md5sum": "962c04d00d2b3272f40f3571d1305d6d", + "version": "16.1R2.11-KVM" + }, + { + "filename": "metadata-usb-re-16.1R2.img", + "filesize": 16777216, + "md5sum": "10f219a0b5d23553dbbf3a7ec1358a68", + "version": "16.1R2.11-KVM" + }, + { + "filename": "vcp_16.1R1.7-disk1.vmdk", + "filesize": 1067432448, + "md5sum": "0a97d16b7014be8e3ae270cc2028d10d", + "version": "16.1R1.7-ESXi" + }, + { + "filename": "vcp_16.1R1.7-disk2.vmdk", + "filesize": 5930496, + "md5sum": "e96972233a144b93aa9bcc321b2a215b", + "version": "16.1R1.7-ESXi" + }, + { + "filename": "vcp_16.1R1.7-disk3.vmdk", + "filesize": 71680, + "md5sum": "815af90310e6681204ba511d9659d2ad", + "version": "16.1R1.7-ESXi" + }, + { + "filename": "junos-vmx-x86-64-16.1R1.7.qcow2", + "filesize": 1194065920, + "md5sum": "f7b53cc04672a1abf7c0236a772cea51", + "version": "16.1R1.7-KVM" + }, + { + "filename": "vmxhdd-16.1R1.img", + "filesize": 108986368, + "md5sum": "c239c4de2a4cf902747c8fc300f08493", + "version": "16.1R1.7-KVM" + }, + { + "filename": "metadata-usb-re-16.1R1.img", + "filesize": 16777216, + "md5sum": "47e578bd41890272dcd5aa1e436068d4", + "version": "16.1R1.7-KVM" + }, + { + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "jinstall64-vmx-15.1F4.15-domestic.img", + "filesize": 1003945984, + "md5sum": "e6b2e1ad9cba5220aa764ae4dd008952", + "version": "15.1F4.15" + }, + { + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vmxhdd-15.1.img", + "filesize": 108986368, + "md5sum": "c3c7090ed3b1799e3de7579ac887e39d", + "version": "15.1F4.15" + }, + { + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "metadata-usb-15.1.img", + "filesize": 16777216, + "md5sum": "af48f7e03f94ffcfeecd15a59a4f1567", + "version": "15.1F4.15" + }, + { + "filename": "junos-vmx-x86-64-15.1F6.9.qcow2", + "filesize": 994181120, + "md5sum": "595f532b95d6d98590d0375a3d6d14b6", + "version": "15.1F6.9-KVM" + }, + { + "filename": "vmxhdd-15.1F6.9.img", + "filesize": 108986368, + "md5sum": "bae35d0bb72946d1e91ff9c5e7ddbf86", + "version": "15.1F6.9-KVM" + }, + { + "filename": "metadata-usb-re-15.1F6.9.img", + "filesize": 16777216, + "md5sum": "15238c3dbc987d1a641c919efe2731c5", + "version": "15.1F6.9-KVM" + } + ], + "maintainer": "none", + "maintainer_email": "developers@gns3.net", + "name": "Juniper vMX vCP", + "port_name_format": "em{port1}", + "product_name": "Juniper vMX vCP", + "product_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "qemu": { + "adapter_type": "e1000", + "adapters": 2, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "require", + "options": "-nographic -enable-kvm", + "ram": 1024 + }, + "registry_version": 3, + "status": "experimental", + "symbol": "juniper-vmx.svg", + "usage": "Initial username is root, no password.\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (fxp0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (eth1) of the vFP.", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", + "versions": [ + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-17.4R1.16.qcow2", + "hdb_disk_image": "vmxhdd-17.4R1.16.img", + "hdc_disk_image": "metadata-usb-re-17.4R1.16.img" + }, + "name": "17.4R1.16-KVM" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-17.3R2.10.qcow2", + "hdb_disk_image": "vmxhdd-17.3R2.10.img", + "hdc_disk_image": "metadata-usb-re-17.3R2.10.img" + }, + "name": "17.3R2.10-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_17.1R1.8-disk1.vmdk", + "hdb_disk_image": "vcp_17.1R1.8-disk2.vmdk", + "hdc_disk_image": "vcp_17.1R1.8-disk3.vmdk" + }, + "name": "17.1R1.8-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-17.1R1.8.qcow2", + "hdb_disk_image": "vmxhdd-17.1R1.img", + "hdc_disk_image": "metadata-usb-re-17.1R1.img" + }, + "name": "17.1R1.8-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_16.2R1.6-disk1.vmdk", + "hdb_disk_image": "vcp_16.2R1.6-disk2.vmdk", + "hdc_disk_image": "vcp_16.2R1.6-disk3.vmdk" + }, + "name": "16.2R1.6-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-16.2R1.6.qcow2", + "hdb_disk_image": "vmxhdd-16.2R1.img", + "hdc_disk_image": "metadata-usb-re-16.2R1.img" + }, + "name": "16.2R1.6-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_16.1R4.7-disk1.vmdk", + "hdb_disk_image": "vcp_16.1R4.7-disk2.vmdk", + "hdc_disk_image": "vcp_16.1R4.7-disk3.vmdk" + }, + "name": "16.1R4.7-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-16.1R4.7.qcow2", + "hdb_disk_image": "vmxhdd-16.1R4.img", + "hdc_disk_image": "metadata-usb-re-16.1R4.img" + }, + "name": "16.1R4.7-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_16.1R3.10-disk1.vmdk", + "hdb_disk_image": "vcp_16.1R3.10-disk2.vmdk", + "hdc_disk_image": "vcp_16.1R3.10-disk3.vmdk" + }, + "name": "16.1R3.10-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-16.1R3.10.qcow2", + "hdb_disk_image": "vmxhdd-16.1R3.img", + "hdc_disk_image": "metadata-usb-re-16.1R3.img" + }, + "name": "16.1R3.10-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_16.1R2.11-disk1.vmdk", + "hdb_disk_image": "vcp_16.1R2.11-disk2.vmdk", + "hdc_disk_image": "vcp_16.1R2.11-disk3.vmdk" + }, + "name": "16.1R2.11-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-16.1R2.11.qcow2", + "hdb_disk_image": "vmxhdd-16.1R2.img", + "hdc_disk_image": "metadata-usb-re-16.1R2.img" + }, + "name": "16.1R2.11-KVM" + }, + { + "images": { + "hda_disk_image": "vcp_16.1R1.7-disk1.vmdk", + "hdb_disk_image": "vcp_16.1R1.7-disk2.vmdk", + "hdc_disk_image": "vcp_16.1R1.7-disk3.vmdk" + }, + "name": "16.1R1.7-ESXi" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-16.1R1.7.qcow2", + "hdb_disk_image": "vmxhdd-16.1R1.img", + "hdc_disk_image": "metadata-usb-re-16.1R1.img" + }, + "name": "16.1R1.7-KVM" + }, + { + "images": { + "hda_disk_image": "jinstall64-vmx-15.1F4.15-domestic.img", + "hdb_disk_image": "vmxhdd-15.1.img", + "hdc_disk_image": "metadata-usb-15.1.img" + }, + "name": "15.1F4.15" + }, + { + "images": { + "hda_disk_image": "junos-vmx-x86-64-15.1F6.9.qcow2", + "hdb_disk_image": "vmxhdd-15.1F6.9.img", + "hdc_disk_image": "metadata-usb-re-15.1F6.9.img" + }, + "name": "15.1F6.9" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "When you go from managing a few boxes to managing a few dozen, your processes, logistics, and needs all change. BIG-IQ Centralized Management brings all of your devices together, so you can discover, track, upgrade, and deploy more efficiently. You can also monitor key metrics from one location, saving yourself both time and effort.\n\nCentrally manage up to 200 physical, virtual, or virtual clustered multiprocessing (vCMP) based BIG-IP devices. BIG-IQ Centralized Management also handles licensing for up to 5,000 unmanaged devices, so you can spin BIG-IP virtual editions (VEs) up or down as needed.", + "documentation_url": "https://support.f5.com/csp/#/knowledge-center/software/BIG-IQ?module=BIG-IQ%20Centralized%20Management", + "first_port_name": "mgmt", + "images": [ + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/6.0.1/english/v6.0.1.1/&sw=BIG-IQ&pro=big-iq_CM&ver=6.0.1&container=v6.0.1.1&file=BIG-IQ-6.0.1.1.0.0.9.qcow2.zip", + "filename": "BIG-IQ-6.0.1.1.0.0.9.qcow2", + "filesize": 3895787520, + "md5sum": "3ae32308fe39d5db555f7f1cdcc734dd", + "version": "6.0.1.1" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.4.0/english/virtual-edition_base-plus-hf2/&sw=BIG-IQ&pro=big-iq_CM&ver=5.4.0&container=Virtual-Edition_Base-Plus-HF2&file=BIG-IQ-5.4.0.2.24.7467.qcow2.zip", + "filename": "BIG-IQ-5.4.0.2.24.7467.qcow2", + "filesize": 3480748032, + "md5sum": "e3e6389438ba1e1676f507658f767e95", + "version": "5.4.0.2" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.4.0/english/v5.4.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.4.0&container=v5.4.0&file=BIG-IQ-5.4.0.0.0.7437.qcow2.zip", + "filename": "BIG-IQ-5.4.0.0.0.7437.qcow2", + "filesize": 3300917248, + "md5sum": "068b1f4d21048b9b2a082c0c27ef4d53", + "version": "5.4.0" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.3.0/english/v5.3.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.3.0&container=v5.3.0&file=BIG-IQ-5.3.0.0.0.1119.qcow2.zip", + "filename": "BIG-IQ-5.3.0.0.0.1119.qcow2", + "filesize": 3269263360, + "md5sum": "75f06ba59f858c3828d47dcf8caf3775", + "version": "5.3.0" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.2.0/english/v5.2.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.2.0&container=v5.2.0&file=BIG-IQ-5.2.0.0.0.5741.qcow2.zip", + "filename": "BIG-IQ-5.2.0.0.0.5741.qcow2", + "filesize": 3256352768, + "md5sum": "c40d9724fb6c15ef0ee949437a9558db", + "version": "5.2.0" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.1.0/english/v5.1.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.1.0&container=v5.1.0&file=BIG-IQ-5.1.0.0.0.631.qcow2.zip", + "filename": "BIG-IQ-5.1.0.0.0.631.qcow2", + "filesize": 2335440896, + "md5sum": "f8f52d9ef56c6bdd0a0604f1b50b81c6", + "version": "5.1.0" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.0.0/english/v5.0.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.0.0&container=v5.0.0&file=BIG-IQ-5.0.0.0.0.3026.qcow2.zip", + "filename": "BIG-IQ-5.0.0.0.0.3026.qcow2", + "filesize": 2301820928, + "md5sum": "072194d6eb052ee083cf8cef9e7a87d6", + "version": "5.0.0" + }, + { + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-iq/big-iq_cm/5.0.0/english/v5.0.0/&sw=BIG-IQ&pro=big-iq_CM&ver=5.0.0&container=v5.0.0&file=BIG-IQ-5.0.0.0.0.3026.qcow2.zip", + "filename": "BIG-IQ-5.x.DATASTOR.LTM.qcow2", + "filesize": 393216, + "md5sum": "c7f82b8834436eb67b7d619767ac7476", + "version": "5.x" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "F5 BIG-IQ CM", + "port_name_format": "1.{port1}", + "product_name": "F5 BIG-IQ CM", + "product_url": "https://f5.com/products/big-iq-centralized-management", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 2, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "hdd_disk_interface": "virtio", + "kvm": "require", + "options": "-smp 2 -cpu host", + "ram": 4096 + }, + "registry_version": 3, + "status": "stable", + "symbol": "mgmt_station.svg", + "usage": "Console credentials: root/default\nWebUI credentials: admin/admin\nThe boot process might take a few minutes without providing any output to the console. Please be patient (or set console to vnc to see tty outputs).", + "vendor_name": "F5", + "vendor_url": "http://www.f5.com/", + "versions": [ + { + "images": { + "hda_disk_image": "BIG-IQ-6.0.1.1.0.0.9.qcow2", + "hdb_disk_image": "empty100G.qcow2" + }, + "name": "6.0.1.1" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.4.0.2.24.7467.qcow2", + "hdb_disk_image": "empty100G.qcow2" + }, + "name": "5.4.0.2" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.4.0.0.0.7437.qcow2", + "hdb_disk_image": "empty100G.qcow2" + }, + "name": "5.4.0" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.3.0.0.0.1119.qcow2", + "hdb_disk_image": "empty100G.qcow2" + }, + "name": "5.3.0" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.2.0.0.0.5741.qcow2", + "hdb_disk_image": "empty100G.qcow2" + }, + "name": "5.2.0" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.1.0.0.0.631.qcow2", + "hdb_disk_image": "empty100G.qcow2", + "hdd_disk_image": "BIG-IQ-5.x.DATASTOR.LTM.qcow2" + }, + "name": "5.1.0" + }, + { + "images": { + "hda_disk_image": "BIG-IQ-5.0.0.0.0.3026.qcow2", + "hdb_disk_image": "empty100G.qcow2", + "hdd_disk_image": "BIG-IQ-5.x.DATASTOR.LTM.qcow2" + }, + "name": "5.0.0" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "Security Onion is a Linux distro for intrusion detection, network security monitoring, and log management. It\u2019s based on Ubuntu and contains Snort, Suricata, Bro, OSSEC, Sguil, Squert, ELSA, Xplico, NetworkMiner, and many other security tools. The easy-to-use Setup wizard allows you to build an army of distributed sensors for your enterprise in minutes!", + "documentation_url": "https://github.com/Security-Onion-Solutions/security-onion/wiki", + "images": [ + { + "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v16.04.5.3_20181010/securityonion-16.04.5.3.iso", + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", + "filename": "securityonion-16.04.5.3.iso", + "filesize": 1895825408, + "md5sum": "886b369548c9c3841bc820cc3ab02bd9", + "version": "16.04.5.3" + }, + { + "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.4.iso", + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", + "filename": "securityonion-14.04.5.4.iso", + "filesize": 1874853888, + "md5sum": "9c7cab756b675beb10de4274a3ad3bc6", + "version": "14.04.5.4" + }, + { + "direct_download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/download/v14.04.5.4_20171031/securityonion-14.04.5.3.iso", + "download_url": "https://github.com/Security-Onion-Solutions/security-onion/releases/", + "filename": "securityonion-14.04.5.3.iso", + "filesize": 1889533952, + "md5sum": "fb80ccb2d3c0f3f511823fa5858f87d1", + "version": "14.04.5.3" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%30disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" + } + ], + "maintainer": "Brent Stewart", + "maintainer_email": "brent@stewart.tc", + "name": "Security Onion", + "product_name": "Security Onion", + "product_url": "https://securityonion.net/", + "qemu": { + "adapter_type": "e1000", + "adapters": 2, + "arch": "i386", + "console_type": "telnet", + "kvm": "allow", + "ram": 3072 + }, + "registry_version": 3, + "status": "stable", + "symbol": "securityonion-logo.png", + "usage": "Your default account will have sudo priviledges. Squil and Squert username and password are configured in the Setup wizard. MySQL root is set to null. For more info see https://github.com/Security-Onion-Solutions/security-onion/wiki/Passwords.", + "vendor_name": "Security Onion Solutions, LLC", + "vendor_url": "https://securityonion.net/", + "versions": [ + { + "images": { + "cdrom_image": "securityonion-16.04.5.3.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "16.04.5.3" + }, + { + "images": { + "cdrom_image": "securityonion-14.04.5.4.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "14.04.5.4" + }, + { + "images": { + "cdrom_image": "securityonion-14.04.5.3.iso", + "hda_disk_image": "empty30G.qcow2" + }, + "name": "14.04.5.3" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "FortiManager Security Management appliances allow you to centrally manage any number of Fortinet Network Security devices, from several to thousands, including FortiGate, FortiWiFi, and FortiCarrier.", + "documentation_url": "http://docs.fortinet.com/p/inside-fortios", + "images": [ + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "filesize": 116981760, + "md5sum": "8f748649c537d9b5466b24c5b4e62017", + "version": "6.0.2" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", + "filesize": 119066624, + "md5sum": "73bfe1bc70124521a524d857646b9c2e", + "version": "6.0.0" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", + "filesize": 106946560, + "md5sum": "c81cc247e8eb03249b475fe0e847653e", + "version": "5.6.2" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", + "filesize": 106831872, + "md5sum": "8cc553842564d232af295d6a0c784c1f", + "version": "5.6.1" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", + "filesize": 108363776, + "md5sum": "f8bd600796f894f4ca1ea2d6b4066d3d", + "version": "5.6.0" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", + "filesize": 89911296, + "md5sum": "53bc6e320fe7bde5d2b636bde95a910c", + "version": "5.4.4" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", + "filesize": 87425024, + "md5sum": "53602c776d215d98e32163a10804fc49", + "version": "5.4.3" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", + "filesize": 86437888, + "md5sum": "8e131ad40009c740f3efdee6dc3a0ac3", + "version": "5.4.2" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", + "filesize": 83124224, + "md5sum": "fc1815410f3f0536e2e3a9c1c5c07f41", + "version": "5.4.1" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", + "filesize": 77541376, + "md5sum": "1cfb22671cb372d8bf3e47b9c3c55ded", + "version": "5.4.0" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", + "filesize": 64962560, + "md5sum": "377fe38bf07bc2435608e5b65f780f07", + "version": "5.2.10" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", + "filesize": 65007616, + "md5sum": "04268e779d3d5e6c928c6fd638423c52", + "version": "5.2.9" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", + "filesize": 65011712, + "md5sum": "6dbf148ace9bf309ad383757afd75fad", + "version": "5.2.8" + }, + { + "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", + "filename": "FMG_VM64_KVM-v5-build0757-FORTINET.out.kvm.qcow2", + "filesize": 65056768, + "md5sum": "d37dbaa49d7522324681eeba19f7699b", + "version": "5.2.7" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "FortiManager", + "port_name_format": "Port{port1}", + "product_name": "FortiManager", + "product_url": "http://www.fortinet.com/products/fortimanager/virtual-security-management.html", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 4, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "kvm": "allow", + "ram": 1024 + }, + "registry_version": 3, + "status": "stable", + "symbol": "fortinet.svg", + "usage": "Default username is admin, no password is set.", + "vendor_name": "Fortinet", + "vendor_url": "http://www.fortinet.com/", + "versions": [ + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v6-build0205-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.2" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "6.0.0" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.2" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.1" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.6.0" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.4" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.3" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.2" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.1" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.4.0" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.10" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.9" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.8" + }, + { + "images": { + "hda_disk_image": "FMG_VM64_KVM-v5-build0757-FORTINET.out.kvm.qcow2", + "hdb_disk_image": "empty30G.qcow2" + }, + "name": "5.2.7" + } + ] + }, + { + "builtin": true, + "category": "firewall", + "description": "A Free firewall that includes its own security-hardened GNU/Linux operating system and an easy-to-use web interface.", + "documentation_url": "https://sourceforge.net/projects/smoothwall/files/SmoothWall%20Manuals/", + "images": [ + { + "direct_download_url": "http://sourceforge.net/projects/smoothwall/files/SmoothWall/3.1/Express-3.1-x86_64.iso/download", + "download_url": "http://www.smoothwall.org/download/", + "filename": "Express-3.1-x86_64.iso", + "filesize": 214206464, + "md5sum": "cfaf7f11901a164cd00c07518c7311ba", + "version": "3.1" + }, + { + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty8G.qcow2", + "filesize": 197120, + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Smoothwall Express", + "port_name_format": "eth{0}", + "product_name": "Smoothwall Express", + "product_url": "http://www.smoothwall.org/about/", + "qemu": { + "adapter_type": "e1000", + "adapters": 4, + "arch": "x86_64", + "boot_priority": "dc", + "console_type": "vnc", + "hda_disk_interface": "ide", + "kvm": "allow", + "ram": 256 + }, + "registry_version": 3, + "status": "stable", + "usage": "WebUI can be accessed at https://GREEN_IP:441/ after installation. GREEN interface is used for the LAN, RED for the WAN connections. ORANGE and PURPLE can be used for DMZ.", + "vendor_name": "Smoothwall Ltd.", + "vendor_url": "http://www.smoothwall.org/", + "versions": [ + { + "images": { + "cdrom_image": "Express-3.1-x86_64.iso", + "hda_disk_image": "empty8G.qcow2" + }, + "name": "3.1" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "ntopng is the next generation version of the original ntop, a network traffic probe that shows the network usage, similar to what the popular top Unix command does. ntopng is based on libpcap and it has been written in a portable way in order to virtually run on every Unix platform, MacOSX and on Windows as well. ntopng users can use a a web browser to navigate through ntop (that acts as a web server) traffic information and get a dump of the network status. In the latter case, ntopng can be seen as a simple RMON-like agent with an embedded web interface.", + "docker": { + "adapters": 1, + "console_http_path": "/", + "console_http_port": 3000, + "console_type": "http", + "image": "lucaderi/ntopng-docker:latest" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "ntopng", + "product_name": "ntopng", + "registry_version": 3, + "status": "stable", + "usage": "In the web interface login as admin/admin", + "vendor_name": "ntop", + "vendor_url": "http://www.ntop.org/" + }, + { + "builtin": true, + "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.", + "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR", + "images": [ + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.42.9/chr-6.42.9.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.42.9.img", + "filesize": 134217728, + "md5sum": "1f856978cfc3ceb4b5e18e4e079f2e32", + "version": "6.42" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.42/chr-6.42.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.42.img", + "filesize": 134217728, + "md5sum": "279bb518497b40f41c8585128916a2fb", + "version": "6.42" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.41.4/chr-6.41.4.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.41.4.img", + "filesize": 134217728, + "md5sum": "63b555b2b7f0d78b79edb92f7e7d2ed7", + "version": "6.41.4" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.7/chr-6.40.7.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.40.7.img", + "filesize": 134217728, + "md5sum": "424b897d631c4cac4324ca310e81b494", + "version": "6.40.7" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.5/chr-6.40.5.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.40.5.img", + "filesize": 134217728, + "md5sum": "5d3bef219a859d417fea704ae7109eb7", + "version": "6.40.5" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.40.3/chr-6.40.3.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.40.3.img", + "filesize": 134217728, + "md5sum": "1861df67e9bbf17433f11f33f7dedd1e", + "version": "6.40.3" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.39.2/chr-6.39.2.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.39.2.img", + "filesize": 134217728, + "md5sum": "ecb37373dedfba04267a999d23b8e203", + "version": "6.39.2" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.39.1/chr-6.39.1.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.39.1.img", + "filesize": 134217728, + "md5sum": "c53293bc41f76d85a8642005fd1cbd54", + "version": "6.39.1" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.39/chr-6.39.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.39.img", + "filesize": 134217728, + "md5sum": "7e77c8ac4c9aeaf88f6ff15897f33163", + "version": "6.39" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.7/chr-6.38.7.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.38.7.img", + "filesize": 134217728, + "md5sum": "69a51c96b1247bbaf1253d2873617122", + "version": "6.38.7" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.5/chr-6.38.5.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.38.5.img", + "filesize": 134217728, + "md5sum": "8147f42ea1ee96f580a35a298b7f9354", + "version": "6.38.5" + }, + { + "compression": "zip", + "direct_download_url": "https://download2.mikrotik.com/routeros/6.38.1/chr-6.38.1.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.38.1.img", + "filesize": 134217728, + "md5sum": "753ed7c86e0f54fd9e18d044db64538d", + "version": "6.38.1" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.38/chr-6.38.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.38.img", + "filesize": 134217728, + "md5sum": "37e2165112f8a9beccac06a9a6009000", + "version": "6.38" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.37.3/chr-6.37.3.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.37.3.img", + "filesize": 134217728, + "md5sum": "bda87db475f80debdf3181accf6b78e2", + "version": "6.37.3" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.37.1/chr-6.37.1.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.37.1.img", + "filesize": 134217728, + "md5sum": "713b14a5aba9f967f7bdd9029c8d85b6", + "version": "6.37.1" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.36.4/chr-6.36.4.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.36.4.img", + "filesize": 134217728, + "md5sum": "09527bde50697711926c08d545940c1e", + "version": "6.36.4" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.2.vmdk", + "filesize": 30277632, + "md5sum": "0360f121b76a8b491a05dc37640ca319", + "version": "6.34.2 (.vmdk)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.vdi", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.2.vdi", + "filesize": 30409728, + "md5sum": "e7e4021aeeee2eaabd024d48702bb2e1", + "version": "6.34.2 (.vdi)" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34.2/chr-6.34.2.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.2.img", + "filesize": 134217728, + "md5sum": "984d4d11c2ff209fcdc21ac42895edbe", + "version": "6.34.2 (.img)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.vmdk", + "filesize": 30277632, + "md5sum": "c5e6d192ae19d263a9a313d4b4bee7e4", + "version": "6.34 (.vmdk)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.vdi", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.vdi", + "filesize": 30409728, + "md5sum": "34b161f83a792c744c76a529afc094a8", + "version": "6.34 (.vdi)" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.34/chr-6.34.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.34.img", + "filesize": 134217728, + "md5sum": "32ffde7fb934c7bfee555c899ccd77b6", + "version": "6.34 (.img)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.5.vmdk", + "filesize": 23920640, + "md5sum": "cd284e28aa02ae59f55ed8f43ff27fbf", + "version": "6.33.5 (.vmdk)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.vdi", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.5.vdi", + "filesize": 24118272, + "md5sum": "fa84e63a558e7c61d7d338386cfd08c9", + "version": "6.33.5 (.vdi)" + }, + { + "compression": "zip", + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.5/chr-6.33.5.img.zip", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.5.img", + "filesize": 67108864, + "md5sum": "210cc8ad06f25c9f27b6b99f6e00bd91", + "version": "6.33.5 (.img)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.3/chr-6.33.3.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.3.vmdk", + "filesize": 23920640, + "md5sum": "08532a5af1a830182d65c416eab2b089", + "version": "6.33.3 (.vmdk)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33.2/chr-6.33.2.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.2.vmdk", + "filesize": 23920640, + "md5sum": "6291893c2c9626603c6d38d23390a8be", + "version": "6.33.2 (.vmdk)" + }, + { + "direct_download_url": "http://download2.mikrotik.com/routeros/6.33/chr-6.33.vmdk", + "download_url": "http://www.mikrotik.com/download", + "filename": "chr-6.33.vmdk", + "filesize": 23920640, + "md5sum": "63bee5405fa1e209388adc6b5f78bb70", + "version": "6.33 (.vmdk)" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "MikroTik CHR", + "port_name_format": "ether{port1}", + "product_name": "MikroTik Cloud Hosted Router", + "product_url": "http://www.mikrotik.com/download", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 2, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "kvm": "allow", + "options": "-nographic", + "ram": 128 + }, + "registry_version": 3, + "status": "stable", + "symbol": ":/symbols/router_firewall.svg", + "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.", + "vendor_name": "MikroTik", + "vendor_url": "http://mikrotik.com/", + "versions": [ + { + "images": { + "hda_disk_image": "chr-6.42.9.img" + }, + "name": "6.42.9" + }, + { + "images": { + "hda_disk_image": "chr-6.41.4.img" + }, + "name": "6.41.4" + }, + { + "images": { + "hda_disk_image": "chr-6.40.7.img" + }, + "name": "6.40.7" + }, + { + "images": { + "hda_disk_image": "chr-6.40.5.img" + }, + "name": "6.40.5" + }, + { + "images": { + "hda_disk_image": "chr-6.40.3.img" + }, + "name": "6.40.3" + }, + { + "images": { + "hda_disk_image": "chr-6.39.2.img" + }, + "name": "6.39.2" + }, + { + "images": { + "hda_disk_image": "chr-6.39.1.img" + }, + "name": "6.39.1" + }, + { + "images": { + "hda_disk_image": "chr-6.39.img" }, - "name": "17.1.1" + "name": "6.39" }, { "images": { - "cdrom_image": "vyatta-vrouter-17.1.0_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.38.7.img" }, - "name": "17.1.0" + "name": "6.38.7" }, { "images": { - "cdrom_image": "vyatta-vrouter-5.2R2_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.38.5.img" }, - "name": "5.2R2" + "name": "6.38.5" }, { "images": { - "cdrom_image": "vyatta-vrouter-5.1R1_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.38.1.img" }, - "name": "5.1R1" + "name": "6.38.1" }, { "images": { - "cdrom_image": "livecd-VR5600_5.0R2_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.38.img" }, - "name": "5.0R2" + "name": "6.38" }, { "images": { - "cdrom_image": "livecd-VR5600_4.2R1_B_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.37.3.img" }, - "name": "4.2R1" + "name": "6.37.3" }, { "images": { - "cdrom_image": "vyatta-livecd_3.5R3T60_amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "chr-6.37.1.img" }, - "name": "3.5R3" - } - ] - }, - { - "availability": "service-contract", - "builtin": true, - "category": "multilayer_switch", - "description": "The NX-OSv 9000 is a virtual platform that is designed to simulate the control plane aspects of a network element running Cisco Nexus 9000 software. The NX-OSv 9000 shares the same software image running on Cisco Nexus 9000 hardware platform although no specific hardware emulation is implemented. When the software runs as a virtual machine, line card (LC) ASIC provisioning or any interaction from the control plane to hardware ASIC is handled by the NX-OSv 9000 software data plane.\nThe NX-OSv 9000 for the Cisco Nexus 9000 Series provides a useful tool to enable the devops model and rapidly test changes to the infrastructure or to infrastructure automation tools. This enables network simulations in large scale for customers to validate configuration changes on a simulated network prior to applying them on a production network. Some users have also expressed interest in using the simulation system for feature test ,verification, and automation tooling development and test simualtion prior to deployment. NX-OSv 9000 can be used as a programmability vehicle to validate software defined networks (SDNs) and Network Function Virtualization (NFV) based solutions.", - "documentation_url": "http://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/7-x/nx-osv/configuration/guide/b_NX-OSv_9000/b_NX-OSv_chapter_01.html", - "first_port_name": "mgmt0", - "images": [ + "name": "6.37.1" + }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I7.4.qcow2", - "filesize": 985792512, - "md5sum": "1e980c95ca47045ae45ded6e07fabfb8", - "version": "7.0.3.I7.4" + "images": { + "hda_disk_image": "chr-6.36.4.img" + }, + "name": "6.36.4" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I7.3.qcow2", - "filesize": 983629824, - "md5sum": "9d7a20367bf681a239f14097bbce470a", - "version": "7.0.3.I7.3" + "images": { + "hda_disk_image": "chr-6.34.2.vmdk" + }, + "name": "6.34.2 (.vmdk)" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I7.2.qcow2", - "filesize": 906231808, - "md5sum": "17295efb13e83b24a439148449bfd5ab", - "version": "7.0.3.I7.2" + "images": { + "hda_disk_image": "chr-6.34.2.vdi" + }, + "name": "6.34.2 (.vdi)" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I7.1.qcow2", - "filesize": 903151616, - "md5sum": "3c122f27d0c3684c63657207eadf4d06", - "version": "7.0.3.I7.1" + "images": { + "hda_disk_image": "chr-6.34.2.img" + }, + "name": "6.34.2 (.img)" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I6.1.qcow2", - "filesize": 780402688, - "md5sum": "18bb991b814a508d1190575f99deed99", - "version": "7.0.3.I6.1" + "images": { + "hda_disk_image": "chr-6.34.vmdk" + }, + "name": "6.34 (.vmdk)" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I5.2.qcow2", - "filesize": 777715712, - "md5sum": "c06aaa02f758a64fd8fee9406756f1da", - "version": "7.0.3.I5.2" + "images": { + "hda_disk_image": "chr-6.34.vdi" + }, + "name": "6.34 (.vdi)" }, { - "download_url": "https://software.cisco.com/download/", - "filename": "nxosv-final.7.0.3.I5.1.qcow2", - "filesize": 784990208, - "md5sum": "201ea658fa4c57452ee4b2aa4f5262a7", - "version": "7.0.3.I5.1" + "images": { + "hda_disk_image": "chr-6.34.img" + }, + "name": "6.34 (.img)" }, { - "compression": "zip", - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/OVMF-20160813.fd.zip/download", - "download_url": "", - "filename": "OVMF-20160813.fd", - "filesize": 2097152, - "md5sum": "8ff0ef1ec56345db5b6bda1a8630e3c6", - "version": "16.08.13" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco NX-OSv 9000", - "port_name_format": "Ethernet1/{port1}", - "product_name": "NX-OSv 9000", - "qemu": { - "adapter_type": "e1000", - "adapters": 10, - "arch": "x86_64", - "console_type": "telnet", - "cpus": 2, - "hda_disk_interface": "sata", - "kvm": "require", - "ram": 8096 - }, - "registry_version": 4, - "status": "stable", - "usage": "The old (I5) versions might require 8192 MB of RAM; adjust it if necessary.", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", - "versions": [ + "images": { + "hda_disk_image": "chr-6.33.5.vmdk" + }, + "name": "6.33.5 (.vmdk)" + }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I7.4.qcow2" + "hda_disk_image": "chr-6.33.5.vdi" }, - "name": "7.0.3.I7.4" + "name": "6.33.5 (.vdi)" }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I7.3.qcow2" + "hda_disk_image": "chr-6.33.5.img" }, - "name": "7.0.3.I7.3" + "name": "6.33.5 (.img)" }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I7.2.qcow2" + "hda_disk_image": "chr-6.33.3.vmdk" }, - "name": "7.0.3.I7.2" + "name": "6.33.3 (.vmdk)" }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I7.1.qcow2" + "hda_disk_image": "chr-6.33.2.vmdk" }, - "name": "7.0.3.I7.1" + "name": "6.33.2 (.vmdk)" }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I6.1.qcow2" + "hda_disk_image": "chr-6.33.vmdk" }, - "name": "7.0.3.I6.1" + "name": "6.33 (.vmdk)" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "Monitoring a distributed network across multiple locations can be a challenge. That\u2019s where Sophos iView can help. It provides you with an intelligent, uninterrupted view of your network from a single pane of glass. If you have multiple appliances, need consolidated reporting, or could just use help with log management or compliance, Sophos iView is the ideal solution.", + "documentation_url": "https://www.sophos.com/en-us/support/documentation/sophos-iview.aspx", + "images": [ + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SIVOS_03.01.2.KVM-009-PRIMARY.qcow2", + "filesize": 644218880, + "md5sum": "62551f70f71e08283d3a23929321eba9", + "version": "3.1.2" + }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", + "filesize": 493289472, + "md5sum": "d78c6f0c42186a4c606d7e57f2f3a6d7", + "version": "2.0.0 MR2" }, + { + "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", + "filename": "VI-SIVOS-AUXILARY.qcow2", + "filesize": 204800, + "md5sum": "a52d8cedb1ccd4b5b9f2723dfb41588b", + "version": "2.0.0 MR2" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Sophos iView", + "product_name": "Sophos iView", + "product_url": "https://www.sophos.com/en-us/products/next-gen-firewall.aspx", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 4, + "arch": "x86_64", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", + "kvm": "require", + "ram": 4096 + }, + "registry_version": 3, + "status": "experimental", + "symbol": "mgmt_station.svg", + "usage": "Default CLI password: admin\nDefault WebUI address: http://172.16.16.18\nDefault WebUI credentials: admin / admin", + "vendor_name": "Sophos", + "vendor_url": "https://www.sophos.com", + "versions": [ { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I5.2.qcow2" + "hda_disk_image": "VI-SIVOS_03.01.2.KVM-009-PRIMARY.qcow2", + "hdb_disk_image": "VI-SIVOS-AUXILARY.qcow2" }, - "name": "7.0.3.I5.2" + "name": "3.1.2" }, { "images": { - "bios_image": "OVMF-20160813.fd", - "hda_disk_image": "nxosv-final.7.0.3.I5.1.qcow2" + "hda_disk_image": "VI-SIVOS_02.00.0_MR-2.KVM-776-PRIMARY.qcow2", + "hdb_disk_image": "VI-SIVOS-AUXILARY.qcow2" }, - "name": "7.0.3.I5.1" + "name": "2.0.0 MR2" } ] }, { "builtin": true, - "category": "guest", - "description": "AsteriskNOW makes it easy to create custom telephony solutions by automatically installing the 'plumbing'. It's a complete Linux distribution with Asterisk, the DAHDI driver framework, and, the FreePBX administrative GUI. Much of the complexity of Asterisk and Linux is handled by the installer, the yum package management utility and the administrative GUI. With AsteriskNOW, application developers and integrators can concentrate on building solutions, not maintaining the plumbing.", - "documentation_url": "https://wiki.asterisk.org/wiki/display/AST/Installing+AsteriskNOW", + "category": "router", + "description": "Cisco Virtual IOS allows user to run IOS on a standard computer.", "images": [ { - "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNow-1013-current-64.iso", - "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", - "filename": "AsteriskNow-1013-current-64.iso", - "filesize": 1343909888, - "md5sum": "1badc6d68b59b57406e1b9ae69acf2e2", - "version": "10.13" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Qemu Appliances/IOSv_startup_config.img/download", + "download_url": "https://sourceforge.net/projects/gns-3/files", + "filename": "IOSv_startup_config.img", + "filesize": 1048576, + "md5sum": "bc605651c4688276f81fd59dcf5cc786", + "version": "1" }, { - "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNOW-612-current-64.iso", - "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", - "filename": "AsteriskNOW-612-current-64.iso", - "filesize": 1135714304, - "md5sum": "cc31e6d9b88d49e8eb182f1e2fb85479", - "version": "6.12" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "vios-adventerprisek9-m.vmdk.SPA.156-2.T", + "filesize": 128450560, + "md5sum": "83707e3cc93646da58ee6563a68002b5", + "version": "15.6(2)T" }, { - "direct_download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/AsteriskNOW-5211-current-64.iso", - "download_url": "http://downloads.asterisk.org/pub/telephony/asterisk-now/", - "filename": "AsteriskNOW-5211-current-64.iso", - "filesize": 1124741120, - "md5sum": "aef2b0fffd637b9c666e8ce904bbd714", - "version": "5.211" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "vios-adventerprisek9-m.vmdk.SPA.156-1.T", + "filesize": 128122880, + "md5sum": "e7cb1bbd0c59280dd946feefa68fa270", + "version": "15.6(1)T" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "vios-adventerprisek9-m.vmdk.SPA.155-3.M", + "filesize": 127926272, + "md5sum": "79f613ac3b179d5a64520730925130b2", + "version": "15.5(3)M" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "AsteriskNOW", - "port_name_format": "eth{0}", - "product_name": "AsteriskNOW", - "product_url": "http://www.asterisk.org/downloads/asterisknow", + "name": "Cisco IOSv", + "port_name_format": "Gi0/{0}", + "product_name": "IOSv", + "product_url": "http://virl.cisco.com/", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 1, + "adapter_type": "e1000", + "adapters": 4, "arch": "x86_64", - "boot_priority": "cd", - "console_type": "vnc", + "console_type": "telnet", "hda_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 + "hdb_disk_interface": "virtio", + "kvm": "require", + "ram": 512 }, "registry_version": 3, "status": "stable", - "usage": "Select 'No RAID' option when installing the appliance using the VNC console. Installing the freepbx package takes a lot of time (15+ minutes).", - "vendor_name": "Digium", - "vendor_url": "http://www.asterisk.org/", + "usage": "There is no default password and enable password. There is no default configuration present.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "cdrom_image": "AsteriskNow-1013-current-64.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.156-2.T", + "hdb_disk_image": "IOSv_startup_config.img" }, - "name": "10.13" + "name": "15.6(2)T" }, { "images": { - "cdrom_image": "AsteriskNOW-612-current-64.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.156-1.T", + "hdb_disk_image": "IOSv_startup_config.img" }, - "name": "6.12" + "name": "15.6(1)T" }, { "images": { - "cdrom_image": "AsteriskNOW-5211-current-64.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "vios-adventerprisek9-m.vmdk.SPA.155-3.M", + "hdb_disk_image": "IOSv_startup_config.img" }, - "name": "5.211" + "name": "15.5(3)M" } ] }, { "builtin": true, - "category": "firewall", - "description": "FortiGate Virtual Appliance offers the same level of advanced threat prevention features like the physical appliances in private, hybrid and public cloud deployment.", - "documentation_url": "http://docs.fortinet.com/p/inside-fortios", + "category": "router", + "description": "Cisco IOS on UNIX Layer 3 image.", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v6-build0076-FORTINET.out.kvm.qcow2", - "filesize": 46104576, - "md5sum": "161728b413e097954bd640ade89dfeb1", - "version": "6.0.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1575-FORTINET.out.kvm.qcow2", - "filesize": 41594880, - "md5sum": "c312ea8ec1afffb73858fb1b15c095ef", - "version": "5.6.4" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1547-FORTINET.out.kvm.qcow2", - "filesize": 40939520, - "md5sum": "a908f8620e8bbccce8794733f3637e13", - "version": "5.6.3" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1486-FORTINET.out.kvm.qcow2", - "filesize": 39231488, - "md5sum": "afb9f237de2545db8663f4a2c5805355", - "version": "5.6.2" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1484-FORTINET.out.kvm.qcow2", - "filesize": 39227392, - "md5sum": "6f76d1207b9f6cb724f8034f57711705", - "version": "5.6.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1449-FORTINET.out.kvm.qcow2", - "filesize": 38760448, - "md5sum": "17ee2cc8c76c4928a68a2d016aa83ace", - "version": "5.6.0" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1183-FORTINET.out.kvm.qcow2", - "filesize": 38608896, - "md5sum": "c1eb02996a0919c934785d5f48df9507", - "version": "5.4.8" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build6446-FORTINET.out.kvm.qcow2", - "filesize": 38715392, - "md5sum": "17d3dfebd4b222569cf10cfab83e0e56", - "version": "5.4.7" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1165-FORTINET.out.kvm.qcow2", - "filesize": 38457344, - "md5sum": "4429f1f0f2cce4a8781354a9eb745c61", - "version": "5.4.6" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1138-FORTINET.out.kvm.qcow2", - "filesize": 38096896, - "md5sum": "66c6f6a4b12f0223dd2997b199067e67", - "version": "5.4.5" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build7605-FORTINET.out.kvm.qcow2", - "filesize": 37761024, - "md5sum": "2602fd0c79dd1a69c14b0b46121c875e", - "version": "5.4.4" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1111-FORTINET.out.kvm.qcow2", - "filesize": 38141952, - "md5sum": "576f95dd7809dd24440fee147252177f", - "version": "5.4.3" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1100-FORTINET.out.kvm.qcow2", - "filesize": 37789696, - "md5sum": "9ec360c4ffc0811cdecf3d74b152bc14", - "version": "5.4.2" + "filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin", + "filesize": 172982492, + "md5sum": "45e99761a95cbd3ee3924ecf0f3d89e5", + "version": "155-2T" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1064-FORTINET.out.kvm.qcow2", - "filesize": 37715968, - "md5sum": "441ca5fae1aff9a42fdcaaf8aceb731c", - "version": "5.4.1" - }, + "filename": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin", + "filesize": 152677848, + "md5sum": "2eabae17778316c49cbc80e8e81262f9", + "version": "15.4.1T" + } + ], + "iou": { + "ethernet_adapters": 2, + "nvram": 128, + "ram": 256, + "serial_adapters": 2, + "startup_config": "iou_l3_base_startup-config.txt" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Cisco IOU L3", + "product_name": "Cisco IOU L3", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", + "versions": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build1011-FORTINET.out.kvm.qcow2", - "filesize": 35373056, - "md5sum": "22fc2bdca456dfe3027ad48dff370352", - "version": "5.4.0" + "images": { + "image": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin" + }, + "name": "155-2T" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0762-FORTINET.out.kvm.qcow2", - "filesize": 38776832, - "md5sum": "78df232e516a863f233de88ffba5bc4b", - "version": "5.2.13" - }, + "images": { + "image": "i86bi-linux-l3-adventerprisek9-15.4.1T.bin" + }, + "name": "15.4.1T" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "Micro Core Linux is a smaller variant of Tiny Core without a graphical desktop.\n\nThis is complete Linux system needing few resources to run.", + "documentation_url": "http://wiki.tinycorelinux.net/", + "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", - "filesize": 38363136, - "md5sum": "2efa0c110abed83b71927145d1e87805", - "version": "5.2.12" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-6.4.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-microcore-6.4.img", + "filesize": 16580608, + "md5sum": "877419f975c4891c019947ceead5c696", + "version": "6.4" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0754-FORTINET.out.kvm.qcow2", - "filesize": 35069952, - "md5sum": "b6cdab6a8240e89f50c0448cf0b711ea", - "version": "5.2.11" + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-4.0.2-clean.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-microcore-4.0.2-clean.img", + "filesize": 26411008, + "md5sum": "e13d0d1c0b3999ae2386bba70417930c", + "version": "4.0.2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0742-FORTINET.out.kvm.qcow2", - "filesize": 34779136, - "md5sum": "21fc2bab23a42faa9dc6dcb1a4b180aa", - "version": "5.2.10" - }, + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-microcore-3.4.1.img", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "linux-microcore-3.4.1.img", + "filesize": 24969216, + "md5sum": "fa2ec4b1fffad67d8103c3391bbf9df2", + "version": "3.4.1" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Micro Core Linux", + "product_name": "Micro Core Linux", + "product_url": "http://distro.ibiblio.org/tinycorelinux", + "qemu": { + "adapter_type": "e1000", + "adapters": 1, + "arch": "i386", + "console_type": "telnet", + "kvm": "allow", + "ram": 64 + }, + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "usage": "For version >= 6.4, login/password is gns3. For older version it is tc. Note that sudo works without any password", + "vendor_name": "Team Tiny Core", + "vendor_url": "http://distro.ibiblio.org/tinycorelinux", + "versions": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0736-FORTINET.out.kvm.qcow2", - "filesize": 34590720, - "md5sum": "89cd0883798beed4841dd300f69e462a", - "version": "5.2.9" + "images": { + "hda_disk_image": "linux-microcore-6.4.img" + }, + "name": "6.4" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0727-FORTINET.out.kvm.qcow2", - "filesize": 34508800, - "md5sum": "ae7597450893bc60722ef7a787f0a925", - "version": "5.2.8" + "images": { + "hda_disk_image": "linux-microcore-4.0.2-clean.img" + }, + "name": "4.0.2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0718-FORTINET.out.kvm.qcow2", - "filesize": 34439168, - "md5sum": "1c59a521885c465004456f74d003726c", - "version": "5.2.7" - }, + "images": { + "hda_disk_image": "linux-microcore-3.4.1.img" + }, + "name": "3.4.1" + } + ] + }, + { + "builtin": true, + "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. This version has no GUI.Include packages:\n* nmap\n* metasploit\n* sqlmap\n* hydra\n* telnet client\n* dnsutils (dig)", + "docker": { + "adapters": 2, + "image": "gns3/kalilinux:v2" + }, + "documentation_url": "https://www.kali.org/kali-linux-documentation/", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Kali Linux CLI", + "product_name": "Kali Linux", + "registry_version": 3, + "status": "stable", + "vendor_name": "Kali Linux", + "vendor_url": "https://www.kali.org/" + }, + { + "builtin": true, + "category": "firewall", + "description": "OPNsense is an open source, easy-to-use and easy-to-build FreeBSD based firewall and routing platform. OPNsense includes most of the features available in expensive commercial firewalls, and more in many cases. It brings the rich feature set of commercial offerings with the benefits of open and verifiable sources.\n\nOPNsense started as a fork of pfSense\u00ae and m0n0wall in 2014, with its first official release in January 2015. The project has evolved very quickly while still retaining familiar aspects of both m0n0wall and pfSense. A strong focus on security and code quality drives the development of the project.", + "documentation_url": "https://wiki.opnsense.org/", + "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FGT_VM64_KVM-v5-build0701-FORTINET.out.kvm.qcow2", - "filesize": 33902592, - "md5sum": "c4d2cbe51669796e48623e006782f7dc", - "version": "5.2.5" + "download_url": "https://opnsense.c0urier.net/releases/18.1/", + "filename": "OPNsense-18.1.6-OpenSSL-nano-amd64.img", + "filesize": 272003136, + "md5sum": "042f328380ad0c8008759c43435e8843", + "version": "18.1.6" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "download_url": "https://opnsense.c0urier.net/releases/17.7/", + "filename": "OPNsense-17.7.5-OpenSSL-nano-amd64.img", + "filesize": 237038601, + "md5sum": "6ec5b7f99cc727f904bbf2aaadcab0b8", + "version": "17.7.5" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiGate", - "port_name_format": "Port{port1}", - "product_name": "FortiGate", - "product_url": "http://www.fortinet.com/products/fortigate/virtual-appliances.html", + "name": "OPNsense", + "port_name_format": "em{0}", + "product_name": "OPNsense", + "product_url": "https://opnsense.org/about/about-opnsense/", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 10, + "adapters": 4, "arch": "x86_64", "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", + "kvm": "require", "ram": 1024 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "usage": "Default credentials: root / opnsense\nDefault IP address: 192.168.1.1", + "vendor_name": "Deciso B.V.", + "vendor_url": "https://opnsense.org/", "versions": [ { "images": { - "hda_disk_image": "FGT_VM64_KVM-v6-build0076-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "OPNsense-18.1.6-OpenSSL-nano-amd64.img" }, - "name": "6.0.0" + "name": "18.1.6" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1575-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "OPNsense-17.7.5-OpenSSL-nano-amd64.img" }, - "name": "5.6.4" + "name": "17.7.5" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "This appliance provides DNS using dnsmasq with the local domain set to \"lab\".", + "docker": { + "adapters": 1, + "console_type": "telnet", + "image": "adosztal/dns:latest" + }, + "maintainer": "Andras Dosztal", + "maintainer_email": "developers@gns3.net", + "name": "DNS", + "product_name": "DNS", + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "usage": "You can add records by adding entries to the /etc/hosts file in the following format:\n%IP_ADDRESS% %HOSTNAME%.lab %HOSTNAME%\n\nExample:\n192.168.123.10 router1.lab router1", + "vendor_name": "Ubuntu", + "vendor_url": "https://www.ubuntu.com/" + }, + { + "builtin": true, + "category": "firewall", + "description": "Untangle\u2019s NG Firewall enables you to quickly and easily create the network policies that deliver the perfect balance between security and productivity. Untangle combines Unified Threat Management (UTM)\u2014to address all of the key network threats\u2014with policy management tools that enable you to define access and control by individuals, groups or company-wide. And with industry-leading reports, you\u2019ll have complete visibility into and control over everything that\u2019s happening on your network.", + "documentation_url": "http://wiki.untangle.com/index.php/Main_Page", + "images": [ + { + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1401_x64.iso", + "filesize": 680525824, + "md5sum": "d9c01afd8bf4b5dfdc40c22aa3b2fd98", + "version": "14.0.1" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1547-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.6.3" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1321_x64.iso", + "filesize": 627048448, + "md5sum": "4ce49535372f85565922c7e90bc11ba3", + "version": "13.2.1" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1486-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.6.2" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1320_x64.iso", + "filesize": 768000000, + "md5sum": "0ce2293acec0f37f1339e703653727f8", + "version": "13.2.0" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1484-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.6.1" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1310_x64.iso", + "filesize": 588251136, + "md5sum": "dc35aa96e954992e53a8cb244a932ae6", + "version": "13.1.0" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1449-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.6.0" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1300_x64.iso", + "filesize": 576716800, + "md5sum": "74dcb5c8e0fb400dbd3a9582fc472033", + "version": "13.0.0" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1183-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.8" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1221_x64.iso", + "filesize": 580911104, + "md5sum": "6735942441d487d339b92c1499b0052b", + "version": "12.2.1" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build6446-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.7" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1220_x64.iso", + "filesize": 585105408, + "md5sum": "56947f059774f2f0015b6326cf5c63ac", + "version": "12.2.0" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1165-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.6" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1212_x64.iso", + "filesize": 575668224, + "md5sum": "2f48873316725b1f709015dfeb73d666", + "version": "12.1.2" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1138-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.5" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1211_x64.iso", + "filesize": 574619648, + "md5sum": "c7f38df4cbba72fa472a49454e476522", + "version": "12.1.1" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build7605-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.4" + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1210_x64.iso", + "filesize": 573571072, + "md5sum": "d511cbbd34aac7678c34a111c791806f", + "version": "12.1.0" + }, + { + "download_url": "https://www.untangle.com/get-untangle/", + "filename": "untangle_1201_x64.iso", + "filesize": 611319808, + "md5sum": "905171d04d2f029b193fe76b02ef9e11", + "version": "12.0.1" }, { - "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1111-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" - }, - "name": "5.4.3" - }, + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty30G.qcow2", + "filesize": 197120, + "md5sum": "3411a599e822f2ac6be560a26405821a", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Untangle NG", + "port_name_format": "eth{0}", + "product_name": "Untangle NG", + "product_url": "https://www.untangle.com/untangle-ng-firewall/", + "qemu": { + "adapter_type": "e1000", + "adapters": 4, + "arch": "x86_64", + "boot_priority": "dc", + "console_type": "vnc", + "hda_disk_interface": "ide", + "kvm": "allow", + "ram": 1024 + }, + "registry_version": 3, + "status": "stable", + "usage": "Run the graphical or text based installer using VNC. The installer warns about insufficient memory but the provided 1G is enough, the installation will be successful.", + "vendor_name": "Untangle", + "vendor_url": "https://www.untangle.com/", + "versions": [ { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1100-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1401_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.4.2" + "name": "14.0.1" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1064-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1321_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.4.1" + "name": "13.2.1" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build1011-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1320_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.4.0" + "name": "13.2.0" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0762-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1310_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.13" + "name": "13.1.0" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1300_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.12" + "name": "13.0.0" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0754-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1221_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.11" + "name": "12.2.1" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0742-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1220_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.10" + "name": "12.2.0" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0736-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1212_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.9" + "name": "12.1.2" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0727-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1211_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.8" + "name": "12.1.1" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0718-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1210_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.7" + "name": "12.1.0" }, { "images": { - "hda_disk_image": "FGT_VM64_KVM-v5-build0701-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "untangle_1201_x64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "5.2.5" + "name": "12.0.1" } ] }, { "builtin": true, - "category": "firewall", - "description": "A Free firewall that includes its own security-hardened GNU/Linux operating system and an easy-to-use web interface.", - "documentation_url": "https://sourceforge.net/projects/smoothwall/files/SmoothWall%20Manuals/", + "category": "guest", + "description": " Parrot is a GNU/Linux distribution based on Debian Testing and designed with Security, Development and Privacy in mind. It includes a full portable laboratory for security and digital forensics experts, but it also includes all you need to develop your own software or protect your privacy while surfing the net.", + "documentation_url": "https://docs.parrotsec.org/doku.php", "images": [ { - "direct_download_url": "http://sourceforge.net/projects/smoothwall/files/SmoothWall/3.1/Express-3.1-x86_64.iso/download", - "download_url": "http://www.smoothwall.org/download/", - "filename": "Express-3.1-x86_64.iso", - "filesize": 214206464, - "md5sum": "cfaf7f11901a164cd00c07518c7311ba", - "version": "3.1" + "direct_download_url": "https://www.parrotsec.org/download-full.fx", + "download_url": "https://www.parrotsec.org/download.fx", + "filename": "Parrot-security-3.11_amd64.iso", + "filesize": 3788668928, + "md5sum": "71c94474fb474f682da0844d95f0040b", + "version": "Security Build 3.11" }, { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty8G.qcow2", + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%30disk/", + "filename": "empty30G.qcow2", "filesize": 197120, - "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "md5sum": "3411a599e822f2ac6be560a26405821a", "version": "1.0" } ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Smoothwall Express", - "port_name_format": "eth{0}", - "product_name": "Smoothwall Express", - "product_url": "http://www.smoothwall.org/about/", + "maintainer": "Brent Stewart", + "maintainer_email": "brent@stewart.tc", + "name": "ParrotOS", + "product_name": "ParrotOS", + "product_url": "https://parrotsec.org/", "qemu": { "adapter_type": "e1000", - "adapters": 4, + "adapters": 1, "arch": "x86_64", - "boot_priority": "dc", "console_type": "vnc", - "hda_disk_interface": "ide", - "kvm": "allow", - "ram": 256 + "kvm": "require", + "ram": 2048 }, "registry_version": 3, "status": "stable", - "usage": "WebUI can be accessed at https://GREEN_IP:441/ after installation. GREEN interface is used for the LAN, RED for the WAN connections. ORANGE and PURPLE can be used for DMZ.", - "vendor_name": "Smoothwall Ltd.", - "vendor_url": "http://www.smoothwall.org/", + "symbol": "parrotlogo.png", + "usage": "Passwords are set during installation.", + "vendor_name": "Parrot Project", + "vendor_url": "https://parrotsec.org/", "versions": [ { "images": { - "cdrom_image": "Express-3.1-x86_64.iso", - "hda_disk_image": "empty8G.qcow2" + "cdrom_image": "Parrot-security-3.11_amd64.iso", + "hda_disk_image": "empty30G.qcow2" }, - "name": "3.1" + "name": "Security Build 3.11" } ] }, { + "availability": "service-contract", "builtin": true, "category": "firewall", - "description": "The Cisco WSA was one of the first secure web gateways to combine leading protections to help organizations address the growing challenges of securing and controlling web traffic. It enables simpler, faster deployment with fewer maintenance requirements, reduced latency, and lower operating costs. \u201cSet and forget\u201d technology frees staff after initial automated policy settings go live, and automatic security updates are pushed to network devices every 3 to 5 minutes. Flexible deployment options and integration with your existing security infrastructure help you meet quickly evolving security requirements.", - "documentation_url": "http://www.cisco.com/c/en/us/support/security/web-security-appliance/tsd-products-support-series-home.html", + "description": "Cisco Firepower Next-Generation IPS (NGIPS) threat appliances combine superior visibility, embedded security intelligence, automated analysis, and industry-leading threat effectiveness.", + "documentation_url": "http://www.cisco.com/c/en/us/support/security/ngips-virtual-appliance/tsd-products-support-series-home.html", + "first_port_name": "eth0 (Mgmt)", "images": [ { - "download_url": "https://software.cisco.com/download/release.html?mdfid=284806698&flowid=41610&softwareid=282975114&release=9.0.1&relind=AVAILABLE&rellifecycle=LD&reltype=latest", - "filename": "coeus-9-0-1-162-S000V.qcow2", - "filesize": 4753719296, - "md5sum": "3561a6dd9e1b0481e6e68f7e0235fa9b", - "version": "9.0.1" + "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.0.0.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_NGIPSv_VMware-6.0.0-1005-disk1.vmdk", + "filesize": 804301312, + "md5sum": "72ed34d39c58a9d5ad1c6197d1ff9a62", + "version": "6.0.0 (1005) vmdk" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_NGIPSv_VMware-6.1.0-330-disk1.vmdk", + "filesize": 860411392, + "md5sum": "7a771cc8c37a0371285f24c25f9886f0", + "version": "6.1.0 (330) vmdk" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "Cisco_Firepower_NGIPSv_VMware-6.2.0-362-disk1.vmdk", + "filesize": 877626368, + "md5sum": "46f629149e11ac5c224bae0486c7e406", + "version": "6.2.0 (362) vmdk" } ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Web Security Virtual Appliance", - "port_name_format": "nic{0}", - "product_name": "Web Security Virtual Appliance", - "product_url": "http://www.cisco.com/c/en/us/products/security/web-security-appliance/index.html", + "maintainer": "Community", + "maintainer_email": "", + "name": "Cisco NGIPSv", + "port_name_format": "eth{port1}", + "product_name": "Cisco Firepower NGIPS Virtual", + "product_url": "http://www.cisco.com/c/en/us/support/security/ngips-virtual-appliance/tsd-products-support-series-home.html", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 5, + "adapter_type": "vmxnet3", + "adapters": 10, "arch": "x86_64", - "boot_priority": "c", "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 4096 - }, - "registry_version": 3, - "status": "stable", - "usage": "Boot takes some time. NIC0 is the management port, it gets its initial address using DHCP. Default credentials: admin / ironport", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com/", - "versions": [ - { - "images": { - "hda_disk_image": "coeus-9-0-1-162-S000V.qcow2" - }, - "name": "9.0.1" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "FortiCache VM high performance Web Caching virtual appliances address bandwidth saturation, high latency, and poor performance caused by caching popular internet content locally for carriers, service providers, enterprises and educational networks. FortiCache VM appliances reduce the cost and impact of cached content on the network, while increasing performance and end- user satisfaction by improving the speed of delivery of popular repeated content.", - "documentation_url": "http://docs.fortinet.com/forticache/admin-guides", - "images": [ - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0222-FORTINET.out.kvm.qcow2", - "filesize": 27631616, - "md5sum": "d77790e414f4e2b31c756906a720e681", - "version": "4.2.7" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0216-FORTINET.out.kvm.qcow2", - "filesize": 27553792, - "md5sum": "867e0569b8466db744547422a1d6f17a", - "version": "4.2.6" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0213-FORTINET.out.kvm.qcow2", - "filesize": 27508736, - "md5sum": "78db88447f29f363b4ba8e4833474637", - "version": "4.2.5" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0204-FORTINET.out.kvm.qcow2", - "filesize": 27623424, - "md5sum": "8f0aad31131add43ac6bf709dd708970", - "version": "4.2.4" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0200-FORTINET.out.kvm.qcow2", - "filesize": 27467776, - "md5sum": "7ec6c4c4e4ba7976793769422550fc30", - "version": "4.2.3" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0127-FORTINET.out.kvm.qcow2", - "filesize": 26087424, - "md5sum": "c607391c3aaaa014e9cec8c61354485b", - "version": "4.1.6" - }, + "cpus": 4, + "hda_disk_interface": "scsi", + "kvm": "require", + "ram": 8192 + }, + "registry_version": 4, + "status": "experimental", + "symbol": ":/symbols/ids.svg", + "usage": "Default username/password: admin/Admin123.", + "vendor_name": "Cisco Systems", + "vendor_url": "http://www.cisco.com/", + "versions": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0123-FORTINET.out.kvm.qcow2", - "filesize": 25845760, - "md5sum": "f6d161636528ecee87243174c51e56e7", - "version": "4.1.5" + "images": { + "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.2.0-362-disk1.vmdk" + }, + "name": "6.2.0 (362) vmdk" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0119-FORTINET.out.kvm.qcow2", - "filesize": 25825280, - "md5sum": "d2c8236768e795eb80114e5c5f4dfac9", - "version": "4.1.4" + "images": { + "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.1.0-330-disk1.vmdk" + }, + "name": "6.1.0 (330) vmdk" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0112-FORTINET.out.kvm.qcow2", - "filesize": 25812992, - "md5sum": "554ebdf8874753b275c2f1ed9104e081", - "version": "4.1.3" - }, + "images": { + "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.0.0-1005-disk1.vmdk" + }, + "name": "6.0.0 (1005) vmdk" + } + ] + }, + { + "builtin": true, + "category": "firewall", + "description": "Trend Micro InterScan Web Security Virtual Appliance is a secure web gateway that combines application control with zero-day exploit detection, advanced anti-malware and ransomware scanning, real-time web reputation, and flexible URL filtering to provide superior Internet threat protection.", + "documentation_url": "https://success.trendmicro.com/product-support/interscan-web-security-virtual-appliance", + "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FCHKVM-v400-build0109-FORTINET.out.kvm.qcow2", - "filesize": 25829376, - "md5sum": "c54246365b3d3f03c9ff2184127695ea", - "version": "4.1.2" + "direct_download_url": "http://files.trendmicro.com/products/iwsva/IWSVA-6.5-1200-x86_64.iso", + "download_url": "http://downloadcenter.trendmicro.com/index.php?regs=NABU&clk=latest&clkval=4599&lang_loc=1", + "filename": "IWSVA-6.5-1200-x86_64.iso", + "filesize": 1004965888, + "md5sum": "7eb0d2a44e20b69ae0c3ce73d6cc1182", + "version": "6.5" }, { "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", @@ -9805,2055 +11170,1933 @@ X-Route: /v2/appliances/templates ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiCache", - "port_name_format": "Port{port1}", - "product_name": "FortiCache", - "product_url": "https://www.fortinet.com/products-services/products/wan-appliances/forticache.html", + "name": "IWS VA", + "port_name_format": "eth{0}", + "product_name": "IWS VA", + "product_url": "http://www.trendmicro.com/enterprise/network-security/interscan-web-security/virtual-appliance/index.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 3, + "adapters": 4, "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "ide", - "hdb_disk_interface": "ide", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "virtio", "kvm": "require", - "ram": 1024 + "ram": 4096 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "vendor_name": "Trend Micro Inc.", + "vendor_url": "http://www.trendmicro.com/", "versions": [ { "images": { - "hda_disk_image": "FCHKVM-v400-build0222-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "cdrom_image": "IWSVA-6.5-1200-x86_64.iso", + "hda_disk_image": "empty100G.qcow2" }, - "name": "4.2.7" - }, + "name": "6.5" + } + ] + }, + { + "builtin": true, + "category": "guest", + "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.", + "documentation_url": "http://www.openbsd.org/faq/index.html", + "first_port_name": "fxp0", + "images": [ { - "images": { - "hda_disk_image": "FCHKVM-v400-build0216-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.2.6" - }, + "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openbsd-5.8.qcow2", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "openbsd-5.8.qcow2", + "filesize": 517275648, + "md5sum": "b2488d81bbe1328ae3d6072ccd7e0bc2", + "version": "5.8" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "OpenBSD", + "port_name_format": "em{0}", + "product_name": "OpenBSD", + "qemu": { + "adapter_type": "e1000", + "adapters": 8, + "arch": "x86_64", + "console_type": "telnet", + "kvm": "allow", + "ram": 256 + }, + "registry_version": 3, + "status": "stable", + "usage": "User root, password gns3", + "vendor_name": "OpenBSD", + "vendor_url": "http://www.openbsd.org", + "versions": [ { "images": { - "hda_disk_image": "FCHKVM-v400-build0213-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" + "hda_disk_image": "openbsd-5.8.qcow2" }, - "name": "4.2.5" - }, + "name": "5.8" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "The BIG-IP family of products offers the application intelligence that network managers need to ensure applications are fast, secure, and available. All BIG-IP products share a common underlying architecture, F5's Traffic Management Operating System (TMOS), which provides unified intelligence, flexibility, and programmability. Together, BIG-IP's powerful platforms, advanced modules, and centralized management system make up the most comprehensive set of application delivery tools in the industry. BIG-IP Virtual Edition (VE) is a version of the BIG-IP system that runs as a virtual machine in specifically-supported hypervisors. BIG-IP VE emulates a hardware-based BIG-IP system running a VE-compatible version of BIG-IP software.", + "documentation_url": "https://support.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/bigip-ve-kvm-setup-11-3-0.html", + "images": [ { - "images": { - "hda_disk_image": "FCHKVM-v400-build0204-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.2.4" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v14.x/14.0.0/english/14.0.0.3_virtual-edition/&sw=BIG-IP&pro=big-ip_v14.x&ver=14.0.0&container=14.0.0.3_Virtual-Edition&file=BIGIP-14.0.0.3-0.0.4.ALL.qcow2.zip", + "filename": "BIGIP-14.0.0.3-0.0.4.qcow2", + "filesize": 4550164480, + "md5sum": "dc80a7e436ff93e2f4092eece18d369b", + "version": "14.0.0 HF3" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0200-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.2.3" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.5_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.5_Virtual-Edition&file=BIGIP-13.1.0.5-0.0.5.ALL.qcow2.zip", + "filename": "BIGIP-13.1.0.5-0.0.5.qcow2", + "filesize": 4402446336, + "md5sum": "567b70fe36af0f5364883e97e2c08807", + "version": "13.1.0 HF5" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0127-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.1.6" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.2_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.2_Virtual-Edition&file=BIGIP-13.1.0.2.0.0.6.ALL.qcow2.zip", + "filename": "BIGIP-13.1.0.2.0.0.6.qcow2", + "filesize": 4363649024, + "md5sum": "d29eb861d8906fc36f88d9861a0055f4", + "version": "13.1.0 HF2" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0123-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.1.5" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.1.0/english/13.1.0.1_virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.1.0&container=13.1.0.1_Virtual-Edition&file=BIGIP-13.1.0.1.0.0.8.ALL.qcow2.zip", + "filename": "BIGIP-13.1.0.1.0.0.8.qcow2", + "filesize": 4352966656, + "md5sum": "70f92192e66a82cb8f47bdae0cb267d8", + "version": "13.1.0 HF1" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0119-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.1.4" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.0.0/english/virtual-edition_base-plus-hf2/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.0.0&container=Virtual-Edition_Base-Plus-HF2&file=BIGIP-13.0.0.2.0.1671.LTM.qcow2.zip", + "filename": "BIGIP-13.0.0.2.0.1671.qcow2", + "filesize": 4435476480, + "md5sum": "62d27f37c66118710c69c07a2ee78d67", + "version": "13.0.0 HF2" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0112-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.1.3" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v13.x/13.0.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v13.x&ver=13.0.0&container=Virtual-Edition&file=BIGIP-13.0.0.0.0.1645.ALL.qcow2.zip", + "filename": "BIGIP-13.0.0.0.0.1645.qcow2", + "filesize": 3833135104, + "md5sum": "4ec417477c44cdf84edc825a631990e3", + "version": "13.0.0" }, { - "images": { - "hda_disk_image": "FCHKVM-v400-build0109-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty100G.qcow2" - }, - "name": "4.1.2" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "PacketFence is a fully supported, trusted, Free and Open Source network access control (NAC) solution. Boasting an impressive feature set including a captive-portal for registration and remediation, centralized wired and wireless management, 802.1X support, layer-2 isolation of problematic devices, integration with the Snort IDS and the Nessus vulnerability scanner; PacketFence can be used to effectively secure networks - from small to very large heterogeneous networks.", - "documentation_url": "https://packetfence.org/support/index.html#/documentation", - "images": [ + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.3/english/12.1.3.4_virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.3&container=12.1.3.4_Virtual-Edition&file=BIGIP-12.1.3.4-0.0.2.ALL.qcow2.zip", + "filename": "BIGIP-12.1.3.4-0.0.2.qcow2", + "filesize": 3383164928, + "md5sum": "b2ec82816480c18af1d45ee833744ee8", + "version": "12.1.3 HF4" + }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.4.0/PacketFenceZEN_USB-7.4.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-7.4.0.img", - "filesize": 3221225472, - "md5sum": "83951211540f16dd5813c26955c52429", - "version": "7.4.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.2/english/virtual-edition_base-plus-hf1/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.2&container=Virtual-Edition_Base-Plus-HF1&file=BIGIP-12.1.2.1.0.271.LTM.qcow2.zip", + "filename": "BIGIP-12.1.2.1.0.271.LTM.qcow2", + "filesize": 3764846592, + "md5sum": "b34301c3945b7ddb88f41195efef1104", + "version": "12.1.2 HF1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.3.0/PacketFenceZEN_USB-7.3.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-7.3.0.img", - "filesize": 3221225472, - "md5sum": "dfeb8a97bba2e475ce418b02327c0ea1", - "version": "7.3.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.2/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.2&container=Virtual-Edition&file=BIGIP-12.1.2.0.0.249.LTM.qcow2.zip", + "filename": "BIGIP-12.1.2.0.0.249.qcow2", + "filesize": 3196649472, + "md5sum": "f3aa2d51d82fa3f5a4fa10005a378e16", + "version": "12.1.2" }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.1.0/PacketFenceZEN_USB-7.1.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-7.1.0.img", - "filesize": 3221225472, - "md5sum": "3811099f4e1eba164245e94cfa09d26f", - "version": "7.1.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.1/english/virtual-edition_base-plus-hf2/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.1&container=Virtual-Edition_Base-Plus-HF2&file=BIGIP-12.1.1.2.0.204.LTM.qcow2.zip", + "filename": "BIGIP-12.1.1.2.0.204.qcow2", + "filesize": 3563716608, + "md5sum": "74d4d21db3579efb9011a1829a2124b7", + "version": "12.1.1 HF2" }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/7.0.0/PacketFenceZEN_USB-7.0.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-7.0.0.img", - "filesize": 3221225472, - "md5sum": "f5d7f81b279ad286e09f3ddf29dd06c3", - "version": "7.0.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.1.0/english/virtual-edition_base-plus-hf1/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.1.0&container=Virtual-Edition_Base-Plus-HF1&file=BIGIP-12.1.0.1.0.1447.ALL.qcow2.zip", + "filename": "BIGIP-12.1.0.1.0.1447.qcow2", + "filesize": 3503226880, + "md5sum": "15725ba2c72a0fe932985e695f0f3f1f", + "version": "12.1.0 HF1" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.5.1/PacketFenceZEN_USB-6.5.1.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-6.5.1.img", - "filesize": 3221225472, - "md5sum": "937c02640bd487889b7071e8f094a62a", - "version": "6.5.1" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v12.x/12.0.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v12.x&ver=12.0.0&container=Virtual-Edition&file=BIGIP-12.0.0.0.0.606.ALL.qcow2.zip", + "filename": "BIGIP-12.0.0.0.0.606.qcow2", + "filesize": 3152609280, + "md5sum": "8f578d697554841f003afd1e2965df7e", + "version": "12.0.0" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.5.0/PacketFenceZEN_USB-6.5.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-6.5.0.img", - "filesize": 3221225472, - "md5sum": "5d5ff015f115e9dbcfd355f1bb22f5d9", - "version": "6.5.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.6.1/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.6.1&container=Virtual-Edition&file=BIGIP-11.6.1.0.0.317.ALL.qcow2.zip", + "filename": "BIGIP-11.6.1.0.0.317.qcow2", + "filesize": 2824273920, + "md5sum": "01a2939840d81458bfef0a5c53fb74be", + "version": "11.6.1" }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.4.0/PacketFenceZEN_USB-6.4.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-6.4.0.img", - "filesize": 3221225472, - "md5sum": "7f2bea58421d094152ea71f49cc3084a", - "version": "6.4.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.6.0/english/virtual-edition/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.6.0&container=Virtual-Edition&file=BIGIP-11.6.0.0.0.401.ALL.qcow2.zip", + "filename": "BIGIP-11.6.0.0.0.401.qcow2", + "filesize": 2851733504, + "md5sum": "87723dc8c9713a36bde9a650b94205e3", + "version": "11.6.0" }, { - "compression": "bzip2", - "direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.3.0/PacketFenceZEN_USB-6.3.0.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-6.3.0.img", - "filesize": 3221225472, - "md5sum": "94e19349faedf292743fdc0ab48f8466", - "version": "6.3.0" + "download_url": "https://downloads.f5.com/esd/serveDownload.jsp?path=/big-ip/big-ip_v11.x/11.3.0/english/virtual-edition-trial/&sw=BIG-IP&pro=big-ip_v11.x&ver=11.3.0&container=Virtual-Edition-Trial&file=BIGIP-11.3.0.39.0.qcow2.zip", + "filename": "BIGIP-11.3.0.39.0.qcow2", + "filesize": 1842020352, + "md5sum": "f3dec4565484fe81233077ab2ce426ae", + "version": "11.3.0" }, { - "compression": "bzip2", - "direct_download_url": "http://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/6.2.1/PacketFenceZEN_USB-6.2.1.tar.bz2/download", - "download_url": "https://packetfence.org/download.html#/zen", - "filename": "PacketFenceZEN_USB-6.2.1.img", - "filesize": 3221225472, - "md5sum": "f212be7c8621b90d973f500f00ef1277", - "version": "6.2.1" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "PacketFence ZEN", - "product_name": "PacketFence ZEN", - "product_url": "https://packetfence.org/about.html", + "name": "F5 BIG-IP LTM VE", + "port_name_format": "1.{port1}", + "product_name": "F5 BIG-IP LTM VE", + "product_url": "https://f5.com/products/modules/local-traffic-manager", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 2, + "adapters": 8, "arch": "x86_64", - "console_type": "vnc", + "boot_priority": "c", + "console_type": "telnet", "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", "kvm": "require", - "ram": 8192 + "options": "-smp 2 -cpu host", + "ram": 4096 }, "registry_version": 3, "status": "stable", - "usage": "Boot the live CD", - "vendor_name": "Inverse inc.", - "vendor_url": "https://packetfence.org/", + "symbol": "loadbalancer.svg", + "usage": "Console credentials: root/default. WebUI credentials: admin/admin. The boot process might take a few minutes without providing any output to the console. Please be patient (or set console to vnc to see tty outputs).\n\nIn case the 'localhost emerg logger: Re-starting chmand' log appears on the console, you can find the solution here: https://devcentral.f5.com/questions/big-ip-ltm-ve-on-kvm", + "vendor_name": "F5", + "vendor_url": "http://www.f5.com/", "versions": [ { "images": { - "hda_disk_image": "PacketFenceZEN_USB-7.4.0.img" + "hda_disk_image": "BIGIP-14.0.0.3-0.0.4.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "7.4.0" + "name": "14.0.0 HF3" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-7.3.0.img" + "hda_disk_image": "BIGIP-13.1.0.5-0.0.5.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "7.3.0" + "name": "13.1.0 HF5" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-7.1.0.img" + "hda_disk_image": "BIGIP-13.1.0.2.0.0.6.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "7.1.0" + "name": "13.1.0 HF2" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-7.0.0.img" + "hda_disk_image": "BIGIP-13.1.0.1.0.0.8.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "7.0.0" + "name": "13.1.0 HF1" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-6.5.1.img" + "hda_disk_image": "BIGIP-13.0.0.2.0.1671.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "6.5.0" + "name": "13.0.0 HF2" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-6.5.0.img" + "hda_disk_image": "BIGIP-13.0.0.0.0.1645.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "6.5.0" + "name": "13.0.0" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-6.4.0.img" + "hda_disk_image": "BIGIP-12.1.3.4-0.0.2.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "6.4.0" + "name": "12.1.3 HF4" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-6.3.0.img" + "hda_disk_image": "BIGIP-12.1.2.1.0.271.LTM.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "6.3.0" + "name": "12.1.2 HF1" }, { "images": { - "hda_disk_image": "PacketFenceZEN_USB-6.2.1.img" - }, - "name": "6.2.1" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "NETem emulates a network link, typically a WAN link. It supports bandwidth limitation, delay, jitter and packet loss. All this functionality is already build in the linux kernel, NETem is just a menu system to make the configuration user-friendly.", - "documentation_url": "http://www.cs.unm.edu/~crandall/netsfall13/TCtutorial.pdf", - "images": [ - { - "direct_download_url": "http://bernhard-ehlers.de/projects/netem/NETem-v4.qcow2", - "download_url": "http://bernhard-ehlers.de/projects/netem/index.html", - "filename": "NETem-v4.qcow2", - "filesize": 26476544, - "md5sum": "e678698c97804901c7a53f6b68c8b861", - "version": "0.4" - } - ], - "maintainer": "Bernhard Ehlers", - "maintainer_email": "be@bernhard-ehlers.de", - "name": "NETem", - "port_name_format": "eth{0}", - "product_name": "netem", - "qemu": { - "adapter_type": "e1000", - "adapters": 2, - "arch": "i386", - "console_type": "telnet", - "kvm": "allow", - "options": "-nographic", - "ram": 96 - }, - "registry_version": 3, - "status": "experimental", - "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.", - "vendor_name": "Linux", - "vendor_url": "http://www.linuxfoundation.org/", - "versions": [ - { - "images": { - "hda_disk_image": "NETem-v4.qcow2" + "hda_disk_image": "BIGIP-12.1.2.0.0.249.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "0.4" - } - ] - }, - { - "builtin": true, - "category": "guest", - "description": "The term 'Ubuntu Cloud Guest' refers to the Official Ubuntu images that are available at http://cloud-images.ubuntu.com . These images are built by Canonical. They are then registered on EC2, and compressed tarfiles are made also available for download. For using those images on a public cloud such as Amazon EC2, you simply choose an image and launch it. To use those images on a private cloud, or to run the image on a local hypervisor (such as KVM) you would need to download those images and either publish them to your private cloud, or launch them directly on a hypervisor. The following sections explain in more details how to perform each of those actions", - "documentation_url": "https://help.ubuntu.com/community/UEC/Images", - "images": [ - { - "download_url": "https://cloud-images.ubuntu.com/releases/18.04/release-20180426.2/ubuntu-18.04-server-cloudimg-amd64.img", - "filename": "ubuntu-18.04-server-cloudimg-amd64.img", - "filesize": 336134144, - "md5sum": "f4134e7fa16d7fa766c7467cbe25c949", - "version": "18.04" - }, - { - "download_url": "https://cloud-images.ubuntu.com/releases/17.10/release-20180404/ubuntu-17.10-server-cloudimg-amd64.img", - "filename": "ubuntu-17.10-server-cloudimg-amd64.img", - "filesize": 320405504, - "md5sum": "331b44f2b05858c251b3ea92c8b65152", - "version": "17.10" - }, - { - "download_url": "https://cloud-images.ubuntu.com/releases/16.04/release-20180405/ubuntu-16.04-server-cloudimg-amd64-disk1.img", - "filename": "ubuntu-16.04-server-cloudimg-amd64-disk1.img", - "filesize": 290193408, - "md5sum": "22c124ba65ea096cdef8b0a197dd613a", - "version": "16.04" - }, - { - "download_url": "https://cloud-images.ubuntu.com/releases/14.04/release-20180404/ubuntu-14.04-server-cloudimg-amd64-disk1.img", - "filename": "ubuntu-14.04-server-cloudimg-amd64-disk1.img", - "filesize": 262668800, - "md5sum": "d11b89321d41d0eeddcacf73bf0d2262", - "version": "14.04" + "name": "12.1.2" }, - { - "download_url": "https://github.com/asenci/gns3-ubuntu-cloud-init-data/raw/master/ubuntu-cloud-init-data.iso", - "filename": "ubuntu-cloud-init-data.iso", - "filesize": 131072, - "md5sum": "328469100156ae8dbf262daa319c27ff", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Ubuntu Cloud Guest", - "port_name_format": "Ethernet{0}", - "product_name": "Ubuntu Cloud Guest", - "product_url": "https://www.ubuntu.com/cloud", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "require", - "options": "-nographic", - "ram": 1024 - }, - "registry_version": 3, - "status": "stable", - "usage": "Username: ubuntu\nPassword: ubuntu", - "vendor_name": "Canonical Inc.", - "vendor_url": "https://www.ubuntu.com", - "versions": [ { "images": { - "cdrom_image": "ubuntu-cloud-init-data.iso", - "hda_disk_image": "ubuntu-18.04-server-cloudimg-amd64.img" + "hda_disk_image": "BIGIP-12.1.1.2.0.204.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "18.04 (LTS)" + "name": "12.1.1 HF2" }, { "images": { - "cdrom_image": "ubuntu-cloud-init-data.iso", - "hda_disk_image": "ubuntu-17.10-server-cloudimg-amd64.img" + "hda_disk_image": "BIGIP-12.1.0.1.0.1447.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "17.10" + "name": "12.1.0 HF1" }, { "images": { - "cdrom_image": "ubuntu-cloud-init-data.iso", - "hda_disk_image": "ubuntu-16.04-server-cloudimg-amd64-disk1.img" + "hda_disk_image": "BIGIP-12.0.0.0.0.606.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "16.04 (LTS)" + "name": "12.0.0" }, { "images": { - "cdrom_image": "ubuntu-cloud-init-data.iso", - "hda_disk_image": "ubuntu-14.04-server-cloudimg-amd64-disk1.img" + "hda_disk_image": "BIGIP-11.6.1.0.0.317.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "14.04 (LTS)" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "The CloudRouter Project is a collaborative open source project focused on developing a powerful, easy to use router designed for the cloud.\nCompute resources are rapidly migrating from physical infrastructure to a combination of physical, virtual and cloud environments. A similar transition is emerging in the networking space, with network control logic shifting from proprietary hardware-based platforms to open source software-based platforms. CloudRouter is a software-based router distribution designed to run on physical, virtual and cloud environments, supporting software-defined networking infrastructure. It includes the features of traditional hardware routers, as well as support for emerging technologies such as containers and software-defined interconnection. CloudRouter aims to facilitate migration to the cloud without giving up control over network routing and governance.", - "documentation_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Project+Information", - "images": [ - { - "compression": "xz", - "direct_download_url": "https://repo.cloudrouter.org/4/centos/7/images/cloudrouter-centos-cloud-full.raw.xz", - "download_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Downloads", - "filename": "cloudrouter-centos-cloud-full.raw", - "filesize": 10737418240, - "md5sum": "d148288ecc0806e08f8347ef0ad755e8", - "version": "4.0 Full" - }, - { - "compression": "xz", - "direct_download_url": "https://repo.cloudrouter.org/4/centos/7/images/cloudrouter-centos-cloud-minimal.raw.xz", - "download_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Downloads", - "filename": "cloudrouter-centos-cloud-minimal.raw", - "filesize": 10737418240, - "md5sum": "8d982a37a49bc446a0edc59cefcadcdb", - "version": "4.0 Minimal" + "name": "11.6.1" }, - { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/cloudrouter-init-gns3.iso/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "cloudrouter-init-gns3.iso", - "filesize": 374784, - "md5sum": "8cfb7e338bf241cc64abc084243e9be1", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "CloudRouter", - "port_name_format": "eth{0}", - "product_name": "CloudRouter", - "product_url": "https://cloudrouter.org/about/", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 16, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "telnet", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "usage": "Default credentials: cloudrouter / gns3", - "vendor_name": "CloudRouter Community", - "vendor_url": "https://cloudrouter.org/", - "versions": [ { "images": { - "cdrom_image": "cloudrouter-init-gns3.iso", - "hda_disk_image": "cloudrouter-centos-cloud-full.raw" + "hda_disk_image": "BIGIP-11.6.0.0.0.401.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.0 Full" + "name": "11.6.0" }, { "images": { - "cdrom_image": "cloudrouter-init-gns3.iso", - "hda_disk_image": "cloudrouter-centos-cloud-minimal.raw" + "hda_disk_image": "BIGIP-11.3.0.39.0.qcow2", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "4.0 Minimal" + "name": "11.3.0" } ] }, { "builtin": true, - "category": "guest", - "description": "DEFT (acronym for Digital Evidence & Forensics Toolkit) is a distribution made for Computer Forensics, with the purpose of running live on systems without tampering or corrupting devices (hard disks, pendrives, etc\u2026) connected to the PC where the boot process takes place.\nThe DEFT system is based on GNU Linux, it can run live (via DVDROM or USB pendrive), installed or run as a Virtual Appliance on VMware or Virtualbox. DEFT employs LXDE as desktop environment and WINE for executing Windows tools under Linux. It features a comfortable mount manager for device management.\nDEFT is paired with DART (acronym for Digital Advanced Response Toolkit), a Forensics System which can be run on Windows and contains the best tools for Forensics and Incident Response. DART features a GUI with logging and integrity check for the instruments here contained.\nBesides all this, the DEFT staff is devoted to implementing and developing applications which are released to Law Enforcement Officers, such as Autopsy 3 for Linux.", - "documentation_url": "http://www.deftlinux.net/deft-manual/", + "category": "multilayer_switch", + "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.", + "documentation_url": "https://www.arista.com/assets/data/docs/Manuals/EOS-4.17.2F-Manual.pdf", + "first_port_name": "Management1", "images": [ { - "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.2.iso", - "download_url": "http://www.deftlinux.net/download/", - "filename": "deft-8.2.iso", - "filesize": 3317876736, - "md5sum": "8a70f61507251355153cbe94809323dd", - "version": "8.2" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.21.1.1F.vmdk", + "filesize": 358809600, + "md5sum": "02bfb7e53781fd44ff02357f201586d9", + "version": "4.21.1.1F" }, { - "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.1.iso", - "download_url": "http://www.deftlinux.net/download/", - "filename": "deft-8.1.iso", - "filesize": 3267639296, - "md5sum": "76bad80c7ea1552c9bd97bcca5de8d50", - "version": "8.1" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.20.1F.vmdk", + "filesize": 662044672, + "md5sum": "aadb6f3dbff28317f68cb4c4502d0db8", + "version": "4.20.1F" }, { - "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-8.0.iso", - "download_url": "http://www.deftlinux.net/download/", - "filename": "deft-8.0.iso", - "filesize": 2898477056, - "md5sum": "fcedb54176de7a3018adfa7571a3a626", - "version": "8.0" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.18.5M.vmdk", + "filesize": 623116288, + "md5sum": "b1ee6268dbaf2b2276fd7a5286c7ce2b", + "version": "4.18.5M" }, { - "direct_download_url": "http://na.mirror.garr.it/mirrors/deft/deft-7.2.iso", - "download_url": "http://www.deftlinux.net/download/", - "filename": "deft-7.2.iso", - "filesize": 2695090176, - "md5sum": "1ea8ec6a2d333d0f0a64656bdf595a28", - "version": "7.2" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.18.1F.vmdk", + "filesize": 620625920, + "md5sum": "9648c63185f3b793b47528a858ca4364", + "version": "4.18.1F" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "DEFT Linux", - "product_name": "DEFT Linux", - "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "x86_64", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 - }, - "registry_version": 3, - "status": "stable", - "usage": "You can run the LiveCD or install to the local disk. Default root password: deft", - "vendor_name": "DEFT Association", - "vendor_url": "http://www.deftlinux.net/", - "versions": [ - { - "images": { - "cdrom_image": "deft-8.2.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "8.2" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.17.8M.vmdk", + "filesize": 608829440, + "md5sum": "afc79a06f930ea2cc0ae3e03cbfd3f23", + "version": "4.17.8M" }, { - "images": { - "cdrom_image": "deft-8.1.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "8.1" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.17.2F.vmdk", + "filesize": 609615872, + "md5sum": "3b4845edfa77cf9aaeb9c0a005d3e277", + "version": "4.17.2F" }, { - "images": { - "cdrom_image": "deft-8.0.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "8.0" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.16.13M.vmdk", + "filesize": 521404416, + "md5sum": "4d0facf90140fc3aab031f0f8f88a32f", + "version": "4.16.13M" }, { - "images": { - "cdrom_image": "deft-7.2.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "7.2" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "VyOS is a community fork of Vyatta, a Linux-based network operating system that provides software-based network routing, firewall, and VPN functionality.", - "documentation_url": "http://vyos.net/wiki/User_Guide", - "images": [ + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.16.6M.vmdk", + "filesize": 519962624, + "md5sum": "b3f7b7cee17f2e66bb38b453a4939fef", + "version": "4.16.6M" + }, { - "direct_download_url": "http://dev.packages.vyos.net/iso/preview/1.2.0-beta1/vyos-1.2.0-beta1-amd64.iso", - "download_url": "http://dev.packages.vyos.net/iso/preview/1.2.0-beta1/", - "filename": "vyos-1.2.0-beta1-amd64.iso", - "filesize": 243269632, - "md5sum": "c2906532d4c7a0d29b61e8eab326d6c7", - "version": "1.2.0-beta1" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.15.10M.vmdk", + "filesize": 517079040, + "md5sum": "98e08281a9c48ddf6f3c5d62a124a20f", + "version": "4.15.10M" }, { - "direct_download_url": "https://downloads.vyos.io/release/1.1.8/vyos-1.1.8-amd64.iso", - "download_url": "https://downloads.vyos.io/?dir=release/1.1.8", - "filename": "vyos-1.1.8-amd64.iso", - "filesize": 241172480, - "md5sum": "95a141d4b592b81c803cdf7e9b11d8ea", - "version": "1.1.8" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.15.5M.vmdk", + "filesize": 516030464, + "md5sum": "cd74bb69c7ee905ac3d33c4d109f3ab7", + "version": "4.15.5M" }, { - "direct_download_url": "https://downloads.vyos.io/release/1.1.7/vyos-1.1.7-amd64.iso", - "download_url": "https://downloads.vyos.io/?dir=release/1.1.7/", - "filename": "vyos-1.1.7-amd64.iso", - "filesize": 245366784, - "md5sum": "9a7f745a0b0db0d4f1d9eee2a437fb54", - "version": "1.1.7" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.14.14M.vmdk", + "filesize": 422641664, + "md5sum": "d81ba0522f4d7838d96f7985e41cdc47", + "version": "4.14.14M" }, { - "direct_download_url": "https://downloads.vyos.io/release/1.1.6/vyos-1.1.6-amd64.iso", - "download_url": "hhttps://downloads.vyos.io/?dir=release/1.1.6/", - "filename": "vyos-1.1.6-amd64.iso", - "filesize": 245366784, - "md5sum": "3128954d026e567402a924c2424ce2bf", - "version": "1.1.6" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.13.16M.vmdk", + "filesize": 404684800, + "md5sum": "5763b2c043830c341c8b1009f4ea9a49", + "version": "4.13.16M" }, { - "direct_download_url": "https://downloads.vyos.io/release/1.1.5/vyos-1.1.5-amd64.iso", - "download_url": "https://downloads.vyos.io/?dir=release/1.1.5/", - "filename": "vyos-1.1.5-amd64.iso", - "filesize": 247463936, - "md5sum": "193179532011ceaa87ee725bd8f22022", - "version": "1.1.5" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "vEOS-lab-4.13.8M.vmdk", + "filesize": 409010176, + "md5sum": "a47145b9e6e7a24171c0850f8755535e", + "version": "4.13.8M" }, { - "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty8G.qcow2", - "filesize": 197120, - "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", - "version": "1.0" + "download_url": "https://www.arista.com/en/support/software-download", + "filename": "Aboot-veos-serial-8.0.0.iso", + "filesize": 5242880, + "md5sum": "488ad1c435d18c69bb8d69c7806457c9", + "version": "8.0.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "VyOS", - "port_name_format": "eth{0}", - "product_name": "VyOS", - "product_url": "http://vyos.net/", + "name": "Arista vEOS", + "port_name_format": "Ethernet{port1}", + "product_name": "vEOS", + "product_url": "https://eos.arista.com/", "qemu": { "adapter_type": "e1000", - "adapters": 3, + "adapters": 13, "arch": "x86_64", - "boot_priority": "dc", "console_type": "telnet", - "kvm": "allow", - "ram": 512 + "kvm": "require", + "ram": 2048 }, "registry_version": 3, - "status": "stable", - "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.", - "vendor_name": "Linux", - "vendor_url": "http://vyos.net/", + "status": "experimental", + "symbol": ":/symbols/multilayer_switch.svg", + "usage": "The login is admin, with no password by default", + "vendor_name": "Arista", + "vendor_url": "http://www.arista.com/", "versions": [ { "images": { - "cdrom_image": "vyos-1.2.0-beta1-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.21.1.1F.vmdk" }, - "name": "1.2.0-beta1" + "name": "4.21.1F" }, { "images": { - "cdrom_image": "vyos-1.1.8-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.20.1F.vmdk" }, - "name": "1.1.8" + "name": "4.20.1F" }, { "images": { - "cdrom_image": "vyos-1.1.7-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.18.5M.vmdk" }, - "name": "1.1.7" + "name": "4.18.5M" }, { "images": { - "cdrom_image": "vyos-1.1.6-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.18.1F.vmdk" }, - "name": "1.1.6" + "name": "4.18.1F" }, { "images": { - "cdrom_image": "vyos-1.1.5-amd64.iso", - "hda_disk_image": "empty8G.qcow2" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.17.8M.vmdk" }, - "name": "1.1.5" - } - ] - }, - { - "availability": "free-to-try", - "builtin": true, - "category": "guest", - "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", - "documentation_url": "https://technet.microsoft.com/en-us/library/cc498727.aspx", - "images": [ - { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "MSEdge-Win10-VMWare-disk1.vmdk", - "filesize": 5636608512, - "md5sum": "fef74c69e1949480d4e2095324a169af", - "version": "10 w/ Edge" - }, - { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "MSEdge_-_Win10_preview.vmdk", - "filesize": 10907287552, - "md5sum": "e06d97b871581d91b7363bf72a81553d", - "version": "10 w/ Edge" - }, - { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "IE11_-_Win8.1-disk1.vmdk", - "filesize": 5704344064, - "md5sum": "6c8691c7d58bf2c33f6ca242ace6b9bd", - "version": "8.1 w/ IE11" + "name": "4.17.8M" }, { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "IE11_-_Win7-disk1.vmdk", - "filesize": 4101495296, - "md5sum": "5733cc93a6ed756c2358f0a383b411a8", - "version": "7 w/ IE11" + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.17.2F.vmdk" + }, + "name": "4.17.2F" }, { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "IE10_-_Win7-disk1.vmdk", - "filesize": 4062174208, - "md5sum": "ed18b5903fb7d778b847c8d1cef807c4", - "version": "7 w/ IE10" + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.16.13M.vmdk" + }, + "name": "4.16.13M" }, { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "IE9_-_Win7-disk1.vmdk", - "filesize": 4040829440, - "md5sum": "82370cfa215002a49651b773a3a569f2", - "version": "7 w/ IE9" + "images": { + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.16.6M.vmdk" + }, + "name": "4.16.6M" }, - { - "download_url": "https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/", - "filename": "IE8_-_Win7-disk1.vmdk", - "filesize": 4228026368, - "md5sum": "63456b42eb8e184b3e7c675645a3c32c", - "version": "7 w/ IE8" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Windows", - "port_name_format": "NIC{port1}", - "product_name": "Windows", - "product_url": "https://www.microsoft.com/en-us/windows", - "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "sata", - "kvm": "require", - "ram": 1024 - }, - "registry_version": 4, - "status": "stable", - "symbol": "microsoft.svg", - "usage": "These virtual machines expire after 90 days; i.e. you have to re-create them in your project after this time but you don't have to re-import the appliance.\n\nDefault credentials: IEUser / Passw0rd!", - "vendor_name": "Microsoft", - "vendor_url": "http://www.microsoft.com/", - "versions": [ { "images": { - "hda_disk_image": "MSEdge-Win10-VMWare-disk1.vmdk" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.15.10M.vmdk" }, - "name": "10 w/ Edge" + "name": "4.15.10M" }, { "images": { - "hda_disk_image": "MSEdge_-_Win10_preview.vmdk" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.15.5M.vmdk" }, - "name": "10 w/ Edge (Preview)" + "name": "4.15.5M" }, { "images": { - "hda_disk_image": "IE11_-_Win8.1-disk1.vmdk" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.14.14M.vmdk" }, - "name": "8.1 w/ IE11" + "name": "4.14.14M" }, { "images": { - "hda_disk_image": "IE11_-_Win7-disk1.vmdk" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.13.16M.vmdk" }, - "name": "7 w/ IE11" + "name": "4.13.16M" }, { "images": { - "hda_disk_image": "IE10_-_Win7-disk1.vmdk" + "hda_disk_image": "Aboot-veos-serial-8.0.0.iso", + "hdb_disk_image": "vEOS-lab-4.13.8M.vmdk" }, - "name": "7 w/ IE10" + "name": "4.13.8M" + } + ] + }, + { + "builtin": true, + "category": "router", + "description": "The CloudRouter Project is a collaborative open source project focused on developing a powerful, easy to use router designed for the cloud.\nCompute resources are rapidly migrating from physical infrastructure to a combination of physical, virtual and cloud environments. A similar transition is emerging in the networking space, with network control logic shifting from proprietary hardware-based platforms to open source software-based platforms. CloudRouter is a software-based router distribution designed to run on physical, virtual and cloud environments, supporting software-defined networking infrastructure. It includes the features of traditional hardware routers, as well as support for emerging technologies such as containers and software-defined interconnection. CloudRouter aims to facilitate migration to the cloud without giving up control over network routing and governance.", + "documentation_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Project+Information", + "images": [ + { + "compression": "xz", + "direct_download_url": "https://repo.cloudrouter.org/4/centos/7/images/cloudrouter-centos-cloud-full.raw.xz", + "download_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Downloads", + "filename": "cloudrouter-centos-cloud-full.raw", + "filesize": 10737418240, + "md5sum": "d148288ecc0806e08f8347ef0ad755e8", + "version": "4.0 Full" + }, + { + "compression": "xz", + "direct_download_url": "https://repo.cloudrouter.org/4/centos/7/images/cloudrouter-centos-cloud-minimal.raw.xz", + "download_url": "https://cloudrouter.atlassian.net/wiki/display/CPD/CloudRouter+Downloads", + "filename": "cloudrouter-centos-cloud-minimal.raw", + "filesize": 10737418240, + "md5sum": "8d982a37a49bc446a0edc59cefcadcdb", + "version": "4.0 Minimal" }, + { + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/cloudrouter-init-gns3.iso/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", + "filename": "cloudrouter-init-gns3.iso", + "filesize": 374784, + "md5sum": "8cfb7e338bf241cc64abc084243e9be1", + "version": "1.0" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "CloudRouter", + "port_name_format": "eth{0}", + "product_name": "CloudRouter", + "product_url": "https://cloudrouter.org/about/", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 16, + "arch": "x86_64", + "boot_priority": "c", + "console_type": "telnet", + "hda_disk_interface": "virtio", + "kvm": "require", + "ram": 2048 + }, + "registry_version": 3, + "status": "stable", + "usage": "Default credentials: cloudrouter / gns3", + "vendor_name": "CloudRouter Community", + "vendor_url": "https://cloudrouter.org/", + "versions": [ { "images": { - "hda_disk_image": "IE9_-_Win7-disk1.vmdk" + "cdrom_image": "cloudrouter-init-gns3.iso", + "hda_disk_image": "cloudrouter-centos-cloud-full.raw" }, - "name": "7 w/ IE9" + "name": "4.0 Full" }, { "images": { - "hda_disk_image": "IE8_-_Win7-disk1.vmdk" + "cdrom_image": "cloudrouter-init-gns3.iso", + "hda_disk_image": "cloudrouter-centos-cloud-minimal.raw" }, - "name": "7 w/ IE8" + "name": "4.0 Minimal" } ] }, { "builtin": true, - "category": "firewall", - "description": "Today's threats are increasingly sophisticated and often bypass traditional malware security by masking their malicious activity. A sandbox augments your security architecture by validating threats in a separate, secure environment. FortiSandbox offers a powerful combination of advanced detection, automated mitigation, actionable insight, and flexible deployment to stop targeted attacks and subsequent data loss. It's also a key component of our Advanced Threat Protection solution.", - "documentation_url": "http://docs.fortinet.com/fortisandbox/admin-guides", + "category": "guest", + "description": "Breaches to network security continue to occur across all industry verticals, even to the most respected brands. The time it takes to discover, isolate, and remediate the incident continues to be measured in hundreds of days-having material impacts on security and compliance standards. It is no wonder that many organizations are struggling. As recent surveys have shown, enterprises have an average of 32 different vendors' devices in their network, with no automated ability to cross-correlate the data that each is collecting. It is also easy to see why organizations are strapped for the cyber security personnel they need to manage all the data in these complex environments.\n\nFrom its inception, FortiSIEM was built to reduce complexity in managing network and security operations. FortiSIEM provides organizations of all sizes with a comprehensive, holistic, and scalable solution for managing security, performance, and compliance from IoT to the cloud.", + "documentation_url": "http://docs.fortinet.com/fortisiem/admin-guides", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", - "filesize": 117834240, - "md5sum": "527f3225bd3fbd4ba23779cc1987d2ed", - "version": "2.5.2" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html", + "filename": "FortiSIEM-VA-5.1.0.1336.qcow2", + "filesize": 10376904704, + "md5sum": "753685ee68287c7a56f9da53566ac522", + "version": "5.1.0" + }, + { + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html", + "filename": "FortiSIEM-VA-5.1.0.1336-1.qcow2", + "filesize": 46858240, + "md5sum": "6ffb7e16d89a6731fc077982cb012ee2", + "version": "5.1.0" + }, + { + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html", + "filename": "FortiSIEM-VA-5.1.0.1336-2.qcow2", + "filesize": 46858240, + "md5sum": "8185e537ce222c2e8407e9bf08e604bb", + "version": "5.1.0" + }, + { + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html", + "filename": "FortiSIEM-VA-5.0.0.1201.qcow2", + "filesize": 10029432832, + "md5sum": "1f2f0b1d84e89495fc5b5ca722cb5710", + "version": "5.0.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0329-FORTINET.out.kvm.qcow2", - "filesize": 114491904, - "md5sum": "782ba56a644d78da59b89f4ac91bd319", - "version": "2.5.1" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html", + "filename": "FortiSIEM-VA-5.0.0.1201-1.qcow2", + "filesize": 46858240, + "md5sum": "88e96259f44a82b7c545b82925880513", + "version": "5.0.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0261-FORTINET.out.kvm.qcow2", - "filesize": 98763264, - "md5sum": "6551ccca8ffe6333742dad54770a01cd", - "version": "2.4.1" + "download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release500.html", + "filename": "FortiSIEM-VA-5.0.0.1201-2.qcow2", + "filesize": 46858240, + "md5sum": "58d61498e1adc1df062fc12113d42d86", + "version": "5.0.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0252-FORTINET.out.kvm.qcow2", - "filesize": 99811840, - "md5sum": "47a4489e617f165b92fd8dda68e00bf2", - "version": "2.4.0" + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.10.0.1102.qcow2", + "filesize": 8622505984, + "md5sum": "636d94c78ea02e5a39eadb9d44210dfb", + "version": "4.10.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0205-FORTINET.out.kvm.qcow2", - "filesize": 94962176, - "md5sum": "1ecb0acf1604bdeee0beb1b75864ca99", - "version": "2.3.3" + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.10.0.1102-1.qcow2", + "filesize": 46858240, + "md5sum": "52fee02e94fd220275b613a4ec5b46eb", + "version": "4.10.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_KVM-v200-build0195-FORTINET.out.kvm.qcow2", - "filesize": 115868160, - "md5sum": "00147d048c8002c98aa55d73f022204d", - "version": "2.3.2" + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.10.0.1102-2.qcow2", + "filesize": 46858240, + "md5sum": "088a34864e30abdb95385b089574baba", + "version": "4.10.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_VM-v200-build0183-FORTINET.out.kvm.qcow2", - "filesize": 118226944, - "md5sum": "2ff03862e33c8a826a0bce10be12f45e", - "version": "2.3.0" + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.9.0.1041.qcow2", + "filesize": 8484487168, + "md5sum": "c2db828b6985297b33833f376c5106b0", + "version": "4.9.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FSA_v200-datadrive.qcow2", - "filesize": 200192, - "md5sum": "f2dc0a8fc7591699c364aff400369157", - "version": "2.x" + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.9.0.1041-1.qcow2", + "filesize": 46858240, + "md5sum": "b3f0cd44995f37648aa429303eeeb455", + "version": "4.9.0" + }, + { + "download_url": "https://www.fortinet.com/offers/fortisiem-free-trial.html", + "filename": "FortiSIEM-VA-KVM-4.9.0.1041-2.qcow2", + "filesize": 46858240, + "md5sum": "70a8abb4253d5bb724ded3b33a8385c4", + "version": "4.9.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiSandbox", + "name": "FortiSIEM", "port_name_format": "Port{port1}", - "product_name": "FortiSandbox", - "product_url": "https://www.fortinet.com/products/sandbox/fortisandbox.html", + "product_name": "FortiSIEM", + "product_url": "https://www.fortinet.com/products/siem/fortisiem.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 3, + "adapters": 2, "arch": "x86_64", "boot_priority": "c", "console_type": "telnet", "hda_disk_interface": "virtio", "hdb_disk_interface": "virtio", + "hdc_disk_interface": "virtio", "kvm": "require", - "options": "-smp 2", - "ram": 8096 + "options": "-smp 4", + "ram": 16384 }, "registry_version": 3, "status": "stable", "symbol": "fortinet.svg", - "usage": "First boot will take some time without console output. Default username is admin, no password is set.", + "usage": "This is the Super/Worker component. Default credentials:\n- admin / admin*1\n - root / ProspectHills\n\nIf you get a 503 error on the WebUI, run /opt/phoenix/deployment/jumpbox/phinitsuper as root.\n\nMake sure that Super, Worker(s), Collector(s) and Report Server can connect to FortiSIEM hosted CentOS repo on https port 443 under the URLs below. Otherwise, some packages may not install and 5.0.0 binaries will not run.\n- https://os-pkgs-cdn.fortisiem.fortinet.com/centos6/\n- https://os-pkgs.fortisiem.fortinet.com/centos6/", "vendor_name": "Fortinet", "vendor_url": "http://www.fortinet.com/", "versions": [ { "images": { - "hda_disk_image": "FSA_KVM-v200-build0340-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" - }, - "name": "2.5.2" - }, - { - "images": { - "hda_disk_image": "FSA_KVM-v200-build0329-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" - }, - "name": "2.5.1" - }, - { - "images": { - "hda_disk_image": "FSA_KVM-v200-build0261-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" - }, - "name": "2.4.1" - }, - { - "images": { - "hda_disk_image": "FSA_KVM-v200-build0252-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hda_disk_image": "FortiSIEM-VA-5.1.0.1336.qcow2", + "hdb_disk_image": "FortiSIEM-VA-5.1.0.1336-1.qcow2", + "hdc_disk_image": "FortiSIEM-VA-5.1.0.1336-2.qcow2" }, - "name": "2.4.0" + "name": "5.1.0" }, { "images": { - "hda_disk_image": "FSA_KVM-v200-build0205-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hda_disk_image": "FortiSIEM-VA-5.0.0.1201.qcow2", + "hdb_disk_image": "FortiSIEM-VA-5.0.0.1201-1.qcow2", + "hdc_disk_image": "FortiSIEM-VA-5.0.0.1201-2.qcow2" }, - "name": "2.3.3" + "name": "5.0.0" }, { "images": { - "hda_disk_image": "FSA_KVM-v200-build0195-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hda_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102.qcow2", + "hdb_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102-1.qcow2", + "hdc_disk_image": "FortiSIEM-VA-KVM-4.10.0.1102-2.qcow2" }, - "name": "2.3.2" + "name": "4.10.0" }, { "images": { - "hda_disk_image": "FSA_VM-v200-build0183-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "FSA_v200-datadrive.qcow2" + "hda_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041.qcow2", + "hdb_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041-1.qcow2", + "hdc_disk_image": "FortiSIEM-VA-KVM-4.9.0.1041-2.qcow2" }, - "name": "2.3.0" + "name": "4.9.0" } ] }, { "builtin": true, - "category": "firewall", - "description": "Protect your network from viruses, malware and malicious activity with Kerio Control, the easy-to-administer yet powerful all-in-one security solution.\nKerio Control brings together next-generation firewall capabilities - including a network firewall and router, intrusion detection and prevention (IPS), gateway anti-virus, VPN, and web content and application filtering. These comprehensive capabilities and unmatched deployment flexibility make Kerio Control the ideal choice for small and mid-sized businesses.", - "documentation_url": "http://kb.kerio.com/product/kerio-control/", + "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. This is a version of the appliance with a management interface on eth0.", + "docker": { + "adapters": 16, + "environment": "MANAGEMENT_INTERFACE=1", + "image": "gns3/openvswitch:latest" + }, + "documentation_url": "http://openvswitch.org/support/", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Open vSwitch management", + "product_name": "Open vSwitch", + "registry_version": 3, + "status": "stable", + "symbol": "mgmt_station_docker.svg", + "usage": "The eth0 is the management interface. By default all other interfaces are connected to the br0", + "vendor_name": "Open vSwitch", + "vendor_url": "http://openvswitch.org/" + }, + { + "builtin": true, + "category": "guest", + "description": "Stay connected to your customers and colleagues without being chained to your desk.\nKerio Operator is a VoIP based phone system that provides powerful yet affordable enterprise-class voice and video communication capabilities for small and mid-sized businesses globally.", + "documentation_url": "http://kb.kerio.com/product/kerio-operator/", "images": [ { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.5-2641/kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk", - "filesize": 190706688, - "md5sum": "fbb2824eb91ca2502c952c2e9c4e635d", - "version": "9.2.5p5" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.4-9320/kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk", + "filesize": 307840512, + "md5sum": "3823565dbc96069dc556158ebbbfb977", + "version": "2.6.4" }, { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.4-2223/kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk", - "filesize": 191687168, - "md5sum": "20970f3638c7ca5603c2afbe56e89421", - "version": "9.2.4" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.2-9085/kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk", + "filesize": 306665472, + "md5sum": "abdfa7697e568b5d9a6396e11292e52a", + "version": "2.6.2" }, { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.3-2219/kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk", - "filesize": 191716352, - "md5sum": "767d5b25bdca2b45c2ba269189ea9bd0", - "version": "9.2.3" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.0-8413/kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk", + "filesize": 291227136, + "md5sum": "3eddbb73d685ac4666841f5df2c6bec9", + "version": "2.6.0" }, { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.2-2172/kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk", - "filesize": 190841856, - "md5sum": "4efeacbc39db1b3e53ef96af1338cf52", - "version": "9.2.2" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.5-8309/kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk", + "filesize": 291217408, + "md5sum": "dc0b4d0b264eb39c8c73289b6c8de749", + "version": "2.5.5p2" }, { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.2.1-2019/kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk", - "filesize": 254364160, - "md5sum": "0405890e323e29a4808ec288600875ba", - "version": "9.2.1" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.4-6916/kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk", + "filesize": 276318720, + "md5sum": "6737b36bd36635b8a5ba21816938f0d6", + "version": "2.5.4p1" }, { - "direct_download_url": "http://cdn.kerio.com/dwn/control/control-9.1.4-1535/kerio-control-appliance-9.1.4-1535-vmware.vmdk", - "download_url": "http://www.kerio.com/support/kerio-control", - "filename": "kerio-control-appliance-9.1.4-1535-vmware.vmdk", - "filesize": 483459072, - "md5sum": "5ea5a7f103b1f008d4c24444400333ec", - "version": "9.1.4" + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.3-6630/kerio-operator-appliance-2.5.3-6630-vmware.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.5.3-6630-vmware.vmdk", + "filesize": 276422144, + "md5sum": "ae9f45606900dba05f353a94d4fc14fc", + "version": "2.5.3" + }, + { + "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.2-6404/kerio-operator-appliance-2.5.2-6404-vmware.vmdk", + "download_url": "http://www.kerio.com/support/kerio-operator", + "filename": "kerio-operator-appliance-2.5.2-6404-vmware.vmdk", + "filesize": 561512448, + "md5sum": "0279baebe587b17f32bfc3302df9352c", + "version": "2.5.2" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Kerio Control", + "name": "Kerio Operator", "port_name_format": "eth{0}", - "product_name": "Kerio Control", - "product_url": "http://www.kerio.com/products/kerio-control", + "product_name": "Kerio Operator", + "product_url": "http://www.kerio.com/products/kerio-operator", "qemu": { "adapter_type": "e1000", - "adapters": 2, + "adapters": 1, "arch": "x86_64", "boot_priority": "c", "console_type": "vnc", "hda_disk_interface": "virtio", "kvm": "require", - "ram": 4096 + "ram": 2048 }, "registry_version": 3, "status": "stable", + "usage": "Default credentials: root (no password set)", "vendor_name": "Kerio Technologies Inc.", "vendor_url": "http://www.kerio.com", "versions": [ { "images": { - "hda_disk_image": "kerio-control-appliance-9.2.5-2641-p5-vmware-disk1.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.6.4-9320-vmware-disk1.vmdk" }, - "name": "9.2.5p5" + "name": "2.6.4" }, { "images": { - "hda_disk_image": "kerio-control-appliance-9.2.4-2223-vmware-disk1.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk" }, - "name": "9.2.4" + "name": "2.6.2" }, { "images": { - "hda_disk_image": "kerio-control-appliance-9.2.3-2219-vmware-disk1.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk" }, - "name": "9.2.3" + "name": "2.6.0" }, { "images": { - "hda_disk_image": "kerio-control-appliance-9.2.2-2172-vmware-disk1.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk" }, - "name": "9.2.2" + "name": "2.5.5p2" }, { "images": { - "hda_disk_image": "kerio-control-appliance-9.2.1-2019-vmware-disk1.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk" }, - "name": "9.2.1" + "name": "2.5.4p1" }, { "images": { - "hda_disk_image": "kerio-control-appliance-9.1.4-1535-vmware.vmdk" + "hda_disk_image": "kerio-operator-appliance-2.5.3-6630-vmware.vmdk" }, - "name": "9.1.4" - } - ] - }, - { - "builtin": true, - "category": "firewall", - "description": "To ensure efficient email communication and business continuity, IT professionals depend on reliable spam and virus blocking software. With Proxmox Mail Gateway you get the job done.\n\nProxmox Mail Gateway helps you protect your business against all email threats like spam, viruses, phishing and trojans at the moment they emerge. The flexible architecture combined with the userfriendly, web-based management make it simple for you to control all incoming and outgoing emails. You maintain a professional email workflow and gain high business reputation as well as customer satisfaction.", - "documentation_url": "http://www.proxmox.com/en/downloads/category/documentation-pmg", - "images": [ - { - "direct_download_url": "http://www.proxmox.com/en/downloads?task=callelement&format=raw&item_id=201&element=f85c494b-2b32-4109-b8c1-083cca2b7db6&method=download&args[0]=1f39333ff32bef6001584670e439c842", - "download_url": "http://www.proxmox.com/en/downloads", - "filename": "proxmox-mailgateway_4.1-5.iso", - "filesize": 746586112, - "md5sum": "f0b90f525b6f0fd51889ee48e44980b7", - "version": "4.1-5" + "name": "2.5.3" }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Proxmox MG", - "port_name_format": "eth{0}", - "product_name": "Proxmox MG", - "product_url": "http://www.proxmox.com/en/proxmox-mail-gateway", - "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 3, - "arch": "x86_64", - "boot_priority": "cd", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 4096 - }, - "registry_version": 3, - "status": "stable", - "usage": "User: root\nPassword: admin", - "vendor_name": "Proxmox Server Solutions GmbH", - "vendor_url": "http://www.proxmox.com/en/", - "versions": [ { "images": { - "cdrom_image": "proxmox-mailgateway_4.1-5.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "kerio-operator-appliance-2.5.2-6404-vmware.vmdk" }, - "name": "4.1-5" + "name": "2.5.2" } ] }, { "builtin": true, - "category": "firewall", - "description": "ClearOS is an operating system for your Server, Network, and Gateway systems. It is designed for homes, small to medium businesses, and distributed environments. ClearOS is commonly known as the Next Generation Small Business Server, while including indispensable Gateway and Networking functionality. It delivers a powerful IT solution with an elegant user interface that is completely web-based. Simply put.. ClearOS is the new way of delivering IT.", - "documentation_url": "https://www.clearos.com/resources/documentation/clearos-7-documentation-overview", + "category": "multilayer_switch", + "description": "The vQFX10000 makes it easy for you to try out our physical QFX10000 high-performance data center switch without the wait for physical delivery. Although the virtual version has limited performance relative to the physical switch, it lets you quickly emulate the same features for the control plane of the physical switch, or both its control and data planes.", + "documentation_url": "http://www.juniper.net/techpubs/", "images": [ { - "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", - "filename": "ClearOS-7.4-DVD-x86_64.iso", - "filesize": 1029701632, - "md5sum": "826da592f9cd4b59f5fc996ff2d569f1", - "version": "7.4" - }, - { - "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", - "filename": "ClearOS-7.3-DVD-x86_64.iso", - "filesize": 884998144, - "md5sum": "1bae8b2d7abe1bc72665a270f10a5149", - "version": "7.3" - }, - { - "download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads", - "filename": "ClearOS-7.2-DVD-x86_64.iso", - "filesize": 855638016, - "md5sum": "a094763e6ed5d9b073fd4e651f9a48f1", - "version": "7.2" + "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "filename": "cosim_20180212.qcow2", + "filesize": 1911291904, + "md5sum": "0372e9c1b7df3608099186ab8cbbf2ad", + "version": "17.4R1" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", + "filename": "vqfx10k-pfe-20160609-2.vmdk", + "filesize": 584086528, + "md5sum": "faa6905fd8e935c6e97859191143e8c3", + "version": "15.1X53-D60" } ], - "maintainer": "GNS3 Team", + "maintainer": "none", "maintainer_email": "developers@gns3.net", - "name": "ClearOS CE", - "product_name": "ClearOS CE", - "product_url": "https://www.clearos.com/clearfoundation/software/clearos-7-community", + "name": "Juniper vQFX PFE", + "port_name_format": "em{0}", + "product_name": "Juniper vQFX PFE", + "product_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/", "qemu": { - "adapter_type": "virtio-net-pci", - "adapters": 3, + "adapter_type": "e1000", + "adapters": 2, "arch": "x86_64", "console_type": "vnc", - "hda_disk_interface": "virtio", "kvm": "require", - "ram": 1024 + "options": "-nographic", + "ram": 2048 }, "registry_version": 3, - "status": "stable", - "usage": "Follow the installer.", - "vendor_name": "ClearCenter, Corp.", - "vendor_url": "https://www.clearos.com/", + "status": "experimental", + "symbol": "juniper-vqfx.svg", + "usage": "\n\nUSAGE INSTRUCTIONS\n\nConnect the first interface (em0) to your admin VLAN. Connect the second interface (em1) directly to the second interface (em1) of the RE. The switch ports do not connect here, but on the RE", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", "versions": [ { "images": { - "cdrom_image": "ClearOS-7.4-DVD-x86_64.iso", - "hda_disk_image": "empty30G.qcow2" - }, - "name": "7.4" - }, - { - "images": { - "cdrom_image": "ClearOS-7.3-DVD-x86_64.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "cosim_20180212.qcow2" }, - "name": "7.3" + "name": "17.4R1" }, { "images": { - "cdrom_image": "ClearOS-7.2-DVD-x86_64.iso", - "hda_disk_image": "empty30G.qcow2" + "hda_disk_image": "vqfx10k-pfe-20160609-2.vmdk" }, - "name": "7.2" + "name": "15.1X53-D60" } ] }, { "builtin": true, "category": "guest", - "description": "Over 200,000 IT staff across medium to large enterprises worldwide are currently using OP5 Monitor as their preferred network monitoring software.\nOP5 Monitor allows you to take control of your IT, enabling your network to be more responsive, more reliable and even faster than ever before. With unparalleled scalability, OP5 Monitor grows as your company grows, so you\u2019ll understand why we say this is the last network monitor you\u2019ll ever need to purchase.", - "documentation_url": "https://kb.op5.com/display/MAN/Documentation+Home#sthash.pohb5bis.dpbs", + "description": "Riverbed SteelHead delivers not only best-in-class optimization \u2013 but essential visibility and control as companies transition to the Hybrid WAN. SteelHead CX for Virtual is available as a virtual solution on most major hypervisors including VMware vSphere, Microsoft Hyper-V and KVM. It accelerates the performance of all applications including on-premises, cloud, and SaaS across the hybrid enterprise for organizations that want to deliver the best end user experience \u2013 while leveraging the scalability and cost benefits of virtualization.\n\nSteelHead CX for Virtual uniquely delivers the best application performance along with application, network and end user visibility, and simplified control management of users, applications and networks based on business requirements and decisions.", + "documentation_url": "https://support.riverbed.com/content/support/software/steelhead/cx-appliance.html", "images": [ { - "download_url": "https://www.op5.com/download/", - "filename": "op5-Monitor-Virtual-Appliance-7.3.15.x86_64.vmdk", - "filesize": 779687424, - "md5sum": "634acc6266237d99bf1bfbcf9284beca", - "version": "7.3.15" + "download_url": "http://www.riverbed.com/products/steelhead/Free-90-day-Evaluation-SteelHead-CX-Virtual-Edition.html", + "filename": "mgmt-9.2.0.img", + "filesize": 2555772928, + "md5sum": "ca20a76b2556c0cd313d0b0de528e94d", + "version": "9.2.0" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "OP5 Monitor", - "port_name_format": "eth{0}", - "product_name": "OP5 Monitor", - "product_url": "https://www.op5.com/op5-monitor/", + "name": "SteelHead CX 555V", + "product_name": "SteelHead CX 555V", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 2, + "adapters": 4, "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", + "console_type": "telnet", "hda_disk_interface": "virtio", + "hdb_disk_interface": "virtio", "kvm": "require", - "ram": 1024 + "ram": 2048 }, "registry_version": 3, "status": "stable", - "symbol": "mgmt_station.svg", - "usage": "Interface eth0 is set to DHCP. Default credentials:\n- CLI: root / monitor\n- Web access: admin / monitor\n- Logserver Extension: admin / admin", - "vendor_name": "OP5", - "vendor_url": "https://www.op5.com/", + "usage": "You don't need to run the installer script when using GNS3 VM. Uncompress the downloaded archive using this command: tar xzSf \nDefault credentials: admin / password", + "vendor_name": "Riverbed Technology", + "vendor_url": "http://www.riverbed.com", "versions": [ { "images": { - "hda_disk_image": "op5-Monitor-Virtual-Appliance-7.3.15.x86_64.vmdk" + "hda_disk_image": "mgmt-9.2.0.img", + "hdb_disk_image": "empty100G.qcow2" }, - "name": "7.3.15" + "name": "9.2.0" } ] }, { "builtin": true, - "category": "router", - "description": "Big Cloud Fabric\u2122 is the industry\u2019s first data center fabric built using whitebox or britebox switches and SDN controller technology. Embracing hyperscale data center design principles, Big Cloud Fabric solution enables rapid innovation, ease of provisioning and management, while reducing overall costs, making it ideal for current and next generation data centers. Big Cloud Fabric is designed from the ground up to satisfy the requirements of physical, virtual, containerized, or a combination of such workloads. Some of the typical OpenStack or VMware data center workloads include NFV, High Performance Computing, Big Data and Software Defined Storage deployments.", - "documentation_url": "http://www.bigswitch.com/support", + "category": "guest", + "description": "FreeBSD is an advanced computer operating system used to power modern servers, desktops, and embedded platforms. A large community has continually developed it for more than thirty years. Its advanced networking, security, and storage features have made FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage devices.", + "documentation_url": "https://www.freebsd.org/docs.html", "images": [ { - "download_url": "http://www.bigswitch.com/community-edition", - "filename": "BCF-Controller-BCF-CE-3.5.0-2016-01-22.qcow2", - "filesize": 2860253184, - "md5sum": "d1c2ecf0db8101f6b6d311470697545a", - "version": "3.5.0-2016-01-22" + "compression": "xz", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/amd64/Latest/FreeBSD-11.2-RELEASE-amd64.qcow2.xz", + "download_url": "https://www.freebsd.org/where.html", + "filename": "FreeBSD-11.2-RELEASE-amd64.qcow2", + "filesize": 1630076928, + "md5sum": "44d37e65be4bb4054f067911c84d074a", + "version": "11.2" + }, + { + "compression": "xz", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.1-RELEASE/amd64/Latest/FreeBSD-11.1-RELEASE-amd64.qcow2.xz", + "download_url": "https://www.freebsd.org/where.html", + "filename": "FreeBSD-11.1-RELEASE-amd64.qcow2", + "filesize": 1533345792, + "md5sum": "d78b2a7d05ec62f799e14ded4817ea69", + "version": "11.1" + }, + { + "compression": "xz", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/11.0-RELEASE/amd64/Latest/FreeBSD-11.0-RELEASE-amd64.qcow2.xz", + "download_url": "https://www.freebsd.org/where.html", + "filename": "FreeBSD-11.0-RELEASE-amd64.qcow2", + "filesize": 1384382464, + "md5sum": "1b04999198f492afd6dc4935b8c7cc22", + "version": "11.0" + }, + { + "compression": "xz", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/10.4-RELEASE/amd64/Latest/FreeBSD-10.4-RELEASE-amd64.qcow2.xz", + "download_url": "https://www.freebsd.org/where.html", + "filename": "FreeBSD-10.4-RELEASE-amd64.qcow2", + "filesize": 1013448704, + "md5sum": "ad498873733c57d1f6d890d587a11e3c", + "version": "10.4" + }, + { + "compression": "xz", + "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/10.3-RELEASE/amd64/Latest/FreeBSD-10.3-RELEASE-amd64.qcow2.xz", + "download_url": "https://www.freebsd.org/where.html", + "filename": "FreeBSD-10.3-RELEASE-amd64.qcow2", + "filesize": 974651392, + "md5sum": "1a00cebef520dfac8d2bda10ea16a951", + "version": "10.3" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Big Cloud Fabric", - "product_name": "Big Cloud Fabric", - "product_url": "http://www.bigswitch.com/sdn-products/big-cloud-fabrictm", + "name": "FreeBSD", + "port_name_format": "em{0}", + "product_name": "FreeBSD", "qemu": { - "adapter_type": "e1000", - "adapters": 8, + "adapter_type": "virtio-net-pci", + "adapters": 4, "arch": "x86_64", - "console_type": "telnet", + "console_type": "vnc", + "hda_disk_interface": "virtio", "kvm": "require", "ram": 256 }, "registry_version": 3, - "status": "experimental", - "usage": "Login is admin", - "vendor_name": "Big Switch Networks", - "vendor_url": "http://www.bigswitch.com/", + "status": "stable", + "usage": "User: root, not password is set.", + "vendor_name": "FreeBSD", + "vendor_url": "http://www.freebsd.org", "versions": [ { "images": { - "hda_disk_image": "BCF-Controller-BCF-CE-3.5.0-2016-01-22.qcow2" + "hda_disk_image": "FreeBSD-11.2-RELEASE-amd64.qcow2" }, - "name": "3.5" + "name": "11.2" + }, + { + "images": { + "hda_disk_image": "FreeBSD-11.1-RELEASE-amd64.qcow2" + }, + "name": "11.1" + }, + { + "images": { + "hda_disk_image": "FreeBSD-11.0-RELEASE-amd64.qcow2" + }, + "name": "11.0" + }, + { + "images": { + "hda_disk_image": "FreeBSD-10.4-RELEASE-amd64.qcow2" + }, + "name": "10.4" + }, + { + "images": { + "hda_disk_image": "FreeBSD-10.3-RELEASE-amd64.qcow2" + }, + "name": "10.3" } ] }, { "builtin": true, - "category": "guest", - "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.", - "documentation_url": "http://www.openbsd.org/faq/index.html", - "first_port_name": "fxp0", + "category": "multilayer_switch", + "description": "NXOSv is a reference platform for an implementation of the Cisco Nexus operating system, based on the Nexus 7000-series platforms, running as a full virtual machine on a hypervisor. This includes NXAPI and MPLS LDP support.", + "first_port_name": "mgmt0", "images": [ { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/openbsd-5.8.qcow2", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "openbsd-5.8.qcow2", - "filesize": 517275648, - "md5sum": "b2488d81bbe1328ae3d6072ccd7e0bc2", - "version": "5.8" + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "titanium-final.7.3.0.D1.1.qcow2", + "filesize": 214368256, + "md5sum": "b4cd6edf15ab4c6bce53c3f6c1e3a742", + "version": "7.3.0" + }, + { + "download_url": "https://virl.mediuscorp.com/my-account/", + "filename": "titanium-d1.7.2.0.D1.1.vmdk", + "filesize": 361103360, + "md5sum": "0ee38c7d717840cb4ca822f4870671d0", + "version": "7.2.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "OpenBSD", - "port_name_format": "em{0}", - "product_name": "OpenBSD", + "name": "Cisco NX-OSv", + "port_name_format": "Ethernet2/{port1}", + "product_name": "NX-OSv", + "product_url": "http://virl.cisco.com/", "qemu": { "adapter_type": "e1000", - "adapters": 8, + "adapters": 16, "arch": "x86_64", "console_type": "telnet", - "kvm": "allow", - "ram": 256 + "kvm": "require", + "ram": 3072 }, "registry_version": 3, "status": "stable", - "usage": "User root, password gns3", - "vendor_name": "OpenBSD", - "vendor_url": "http://www.openbsd.org", + "usage": "The default username/password is admin/admin. A default configuration is present.", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "openbsd-5.8.qcow2" + "hda_disk_image": "titanium-final.7.3.0.D1.1.qcow2" }, - "name": "5.8" + "name": "7.3.0" + }, + { + "images": { + "hda_disk_image": "titanium-d1.7.2.0.D1.1.vmdk" + }, + "name": "7.2.0" } ] }, { - "availability": "free-to-try", "builtin": true, - "category": "guest", - "description": "Microsoft Windows, or simply Windows, is a metafamily of graphical operating systems developed, marketed, and sold by Microsoft. It consists of several families of operating systems, each of which cater to a certain sector of the computing industry with the OS typically associated with IBM PC compatible architecture.", - "documentation_url": "https://technet.microsoft.com/en-us/library/cc498727.aspx", + "category": "router", + "description": "Cisco 3660 Router", + "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", + "dynamips": { + "chassis": "3660", + "nvram": 256, + "platform": "c3600", + "ram": 192, + "startup_config": "ios_base_startup-config.txt" + }, "images": [ { - "download_url": "https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2016", - "filename": "Win2k16_14393.0.161119-1705.RS1_REFRESH_SERVER_EVAL_X64FRE_EN-US.ISO", - "filesize": 6972221440, - "md5sum": "70721288bbcdfe3239d8f8c0fae55f1f", - "version": "2016" - }, - { - "download_url": "https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2012-r2", - "filename": "Win2k12_9600.16415.amd64fre.winblue_refresh.130928-2229_server_serverdatacentereval_en-us.vhd", - "filesize": 8024756224, - "md5sum": "b0a988a2e1f401c99c7c18a00391c4cc", - "version": "2012 R2" - }, - { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty100G.qcow2", - "filesize": 198656, - "md5sum": "1e6409a4523ada212dea2ebc50e50a65", - "version": "1.0" + "filename": "c3660-a3jk9s-mz.124-15.T14.image", + "filesize": 90181268, + "md5sum": "daed99f508fd42dbaacf711e560643ed", + "version": "124-15.T14" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Windows Server", - "port_name_format": "NIC{port1}", - "product_name": "Windows Server", - "product_url": "https://www.microsoft.com/en-us/windows", - "qemu": { - "adapter_type": "e1000", - "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "sata", - "kvm": "require", - "options": "-usbdevice tablet", - "ram": 2048 - }, - "registry_version": 4, - "status": "stable", - "symbol": "microsoft.svg", - "vendor_name": "Microsoft", - "vendor_url": "http://www.microsoft.com/", + "name": "Cisco 3660", + "product_name": "3660", + "registry_version": 3, + "status": "experimental", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com", "versions": [ { + "idlepc": "0x6076e0b4", "images": { - "cdrom_image": "Win2k16_14393.0.161119-1705.RS1_REFRESH_SERVER_EVAL_X64FRE_EN-US.ISO", - "hda_disk_image": "empty100G.qcow2" - }, - "name": "2016" - }, - { - "images": { - "hda_disk_image": "Win2k12_9600.16415.amd64fre.winblue_refresh.130928-2229_server_serverdatacentereval_en-us.vhd" + "image": "c3660-a3jk9s-mz.124-15.T14.image" }, - "name": "2012 R2" + "name": "124-15.T14" } ] }, { "builtin": true, - "category": "firewall", - "description": "Sophos XG Firewall delivers the ultimate enterprise firewall performance, security, and control.\n\nFastpath packet optimization technology with up to 140Gbps throughput\nRevolutionary Security Heartbeat\u2122 for improved Advanced Threat Protection (ATP) and response\nPatented Layer-8 user identity control and visibility\nUnified App, Web, QoS, and IPS Policy simplifies management\nApp risk factor and user threat quotient monitors risk levels", - "documentation_url": "https://www.sophos.com/en-us/support/documentation/sophos-xg-firewall.aspx", + "category": "router", + "description": "LEDE 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.", + "documentation_url": "http://wiki.openwrt.org/doc/", "images": [ { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-PRIMARY.qcow2", - "filesize": 324599808, - "md5sum": "2555fa6dcdcecad02c9f02dcb1c0c5e5", - "version": "17.0.2 MR2" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_17.0.2_MR-2.KVM-116-AUXILARY.qcow2", - "filesize": 59441152, - "md5sum": "c3ef795423dbfc01771348b0daa75125", - "version": "16.05.1 MR1" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.4_MR-4.KVM-215-PRIMARY.qcow2", - "filesize": 287113216, - "md5sum": "20535c9e624f42e1977f1e407fbc565e", - "version": "16.05.4 MR4" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.4_MR-4.KVM-215-AUXILARY.qcow2", - "filesize": 59441152, - "md5sum": "cafac2d997a3ead087d5823b86ce6cb4", - "version": "16.05.1 MR1" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.1_MR-1.KVM-139-PRIMARY.qcow2", - "filesize": 285671424, - "md5sum": "3d81cf163fb0f4c5c9ba26e92a0ddc13", - "version": "16.05.1 MR1" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.1_MR-1.KVM-139-AUXILARY.qcow2", - "filesize": 59441152, - "md5sum": "499541728460331a6b68b9e60c8207a3", - "version": "16.05.1 MR1" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.0_RC-1.KVM-098-PRIMARY.qcow2", - "filesize": 285736960, - "md5sum": "1826ca8a34945de5251876dc3fc7fe63", - "version": "16.05.1 RC1" - }, - { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.05.0_RC-1.KVM-098-AUXILARY.qcow2", - "filesize": 59441152, - "md5sum": "a9c60a65c1e7b5be8369e5ceaeb358f9", - "version": "16.05.1 RC1" + "direct_download_url": "https://downloads.lede-project.org/releases/17.01.4/targets/x86/generic/lede-17.01.4-x86-generic-combined-squashfs.img", + "download_url": "https://downloads.lede-project.org/releases/17.01.4/targets/x86/generic/", + "filename": "lede-17.01.4-x86-generic-combined-squashfs.img", + "filesize": 19779546, + "md5sum": "ae5d8d3fcab109565fe337d28e51c4b4", + "version": "17.01.4" }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.01.1.KVM-202-PRIMARY.qcow2", - "filesize": 277479424, - "md5sum": "818d9f973b7a32c50d9b84814c6f1ee3", - "version": "16.01.1" + "direct_download_url": "https://downloads.lede-project.org/releases/17.01.3/targets/x86/generic/lede-17.01.3-x86-generic-combined-squashfs.img", + "download_url": "https://downloads.lede-project.org/releases/17.01.3/targets/x86/generic/", + "filename": "lede-17.01.3-x86-generic-combined-squashfs.img", + "filesize": 19775618, + "md5sum": "d315fc638160a9aec0966d58828bfccf", + "version": "17.01.3" }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFOS_16.01.1.KVM-202-AUXILARY.qcow2", - "filesize": 59441152, - "md5sum": "1f6fc0b751aaec9bfd4401b0e0cbc6dc", - "version": "16.01.1" + "direct_download_url": "https://downloads.lede-project.org/releases/17.01.2/targets/x86/generic/lede-17.01.2-x86-generic-combined-squashfs.img", + "download_url": "https://downloads.lede-project.org/releases/17.01.2/targets/x86/generic/", + "filename": "lede-17.01.2-x86-generic-combined-squashfs.img", + "filesize": 19774794, + "md5sum": "a466e493ef12935dad5e0c622b1a7859", + "version": "17.01.2" }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFMOS_15.01.0.KVM-301-PRIMARY.qcow2", - "filesize": 706412544, - "md5sum": "a2cb14ed93de1550afef49984b11b56f", - "version": "15.01" + "direct_download_url": "https://downloads.lede-project.org/releases/17.01.1/targets/x86/generic/lede-17.01.1-x86-generic-combined-squashfs.img", + "download_url": "https://downloads.lede-project.org/releases/17.01.1/targets/x86/generic/", + "filename": "lede-17.01.1-x86-generic-combined-squashfs.img", + "filesize": 19771166, + "md5sum": "b050e734c605a34a429389c752ae7c30", + "version": "17.01.1" }, { - "download_url": "https://secure2.sophos.com/en-us/products/next-gen-firewall/free-trial.aspx", - "filename": "VI-SFMOS_15.01.0.KVM-301-AUXILARY.qcow2", - "filesize": 199168, - "md5sum": "43cf82ac1f7b0eb6550f0e203daa6b96", - "version": "15.01" + "direct_download_url": "https://downloads.lede-project.org/releases/17.01.0/targets/x86/generic/lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img", + "download_url": "https://downloads.lede-project.org/releases/17.01.0/targets/x86/generic/", + "filename": "lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img", + "filesize": 19755118, + "md5sum": "3c5e068d50a377d4e26b548ab1ca7b1e", + "version": "17.01.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Sophos XG Firewall", - "product_name": "Sophos XG Firewall", - "product_url": "https://www.sophos.com/en-us/products/next-gen-firewall.aspx", + "name": "LEDE", + "product_name": "LEDE", + "product_url": "https://lede-project.org/", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, - "arch": "x86_64", + "adapters": 2, + "arch": "i386", "console_type": "telnet", - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "require", - "ram": 1024 + "kvm": "allow", + "ram": 64 }, "registry_version": 3, - "status": "experimental", - "usage": "Port 0 => You computer for the configurtation\nPort 1 => WAN\n\n1. You need a serial number. You can get a trial from Sophos for free.\nUpon starting for the first time, access the setup screen at https://172.16.16.16 (Note: it may take a few minutes for the necessary services to start before the setup screen is ready).\n3. When you are prompted the default administrator credentials are:\nUsername: admin\nPassword: admin\n\n4. Make sure the device is setup for internet access (required for activation): change the network settings from the Basic Setup screen if necessary.\n5. Enter your serial number (provided below) into the setup screen and click \"Activate Device\".\n6. Then register your device with your MySophos ID by clicking \"Register Device\" and entering your MySophos ID and password that you used to download the software.\\\n7. Once the device is registered, you can initiate License Synchronization and proceed with the rest of the configuration.", - "vendor_name": "Sophos", - "vendor_url": "https://www.sophos.com", + "status": "stable", + "usage": "Ethernet0 is the LAN link, Ethernet1 the WAN link.", + "vendor_name": "LEDE Project", + "vendor_url": "https://lede-project.org/", "versions": [ { "images": { - "hda_disk_image": "VI-SFOS_17.0.2_MR-2.KVM-116-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFOS_17.0.2_MR-2.KVM-116-AUXILARY.qcow2" - }, - "name": "17.0.2 MR2" - }, - { - "images": { - "hda_disk_image": "VI-SFOS_16.05.4_MR-4.KVM-215-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFOS_16.05.4_MR-4.KVM-215-AUXILARY.qcow2" + "hda_disk_image": "lede-17.01.4-x86-generic-combined-squashfs.img" }, - "name": "16.05.4 MR4" + "name": "lede 17.01.4" }, { "images": { - "hda_disk_image": "VI-SFOS_16.05.1_MR-1.KVM-139-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFOS_16.05.1_MR-1.KVM-139-AUXILARY.qcow2" + "hda_disk_image": "lede-17.01.3-x86-generic-combined-squashfs.img" }, - "name": "16.05.1 MR1" + "name": "lede 17.01.3" }, { "images": { - "hda_disk_image": "VI-SFOS_16.05.0_RC-1.KVM-098-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFOS_16.05.0_RC-1.KVM-098-AUXILARY.qcow2" + "hda_disk_image": "lede-17.01.2-x86-generic-combined-squashfs.img" }, - "name": "16.05.1 MR1" + "name": "lede 17.01.2" }, { "images": { - "hda_disk_image": "VI-SFOS_16.01.1.KVM-202-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFOS_16.01.1.KVM-202-AUXILARY.qcow2" + "hda_disk_image": "lede-17.01.1-x86-generic-combined-squashfs.img" }, - "name": "16.01.1" + "name": "lede 17.01.1" }, { "images": { - "hda_disk_image": "VI-SFMOS_15.01.0.KVM-301-PRIMARY.qcow2", - "hdb_disk_image": "VI-SFMOS_15.01.0.KVM-301-AUXILARY.qcow2" + "hda_disk_image": "lede-17.01.0-r3205-59508e3-x86-generic-combined-squashfs.img" }, - "name": "15.01" + "name": "lede 17.01.0" } ] }, { "builtin": true, - "category": "multilayer_switch", - "description": "Cisco Virtual IOS L2 allows user to run a IOS switching image on a standard computer.", + "category": "guest", + "description": "The Virtual Wireless Controller can cost-effectively manage, secure, and optimize the performance of local and branch wireless networks. Ideal for small and medium-sized businesses, the Virtual Wireless Controller facilitates server consolidation and improves business continuity in the face of outages.", + "documentation_url": "http://www.cisco.com/c/en/us/products/wireless/wireless-lan-controller/index.html", + "first_port_name": "ServicePort", "images": [ { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "vios_l2-adventerprisek9-m.03.2017.qcow2", - "filesize": 41157632, - "md5sum": "8f14b50083a14688dec2fc791706bb3e", - "version": "15.2(20170321:233949)" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=7.3.101.0", + "filename": "Cisco-vWLC-AIR-CTVM-7-3-101-0-file1.iso", + "filesize": 157900800, + "md5sum": "6bf17dceaf46e57aab0fb0d43eb6ea06", + "version": "7.3.101.0" }, { - "download_url": "https://virl.mediuscorp.com/my-account/", - "filename": "vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E", - "filesize": 96862208, - "md5sum": "1a3a21f5697cae64bb930895b986d71e", - "version": "15.2.4055" + "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=7.6.110.0", + "filename": "AIR-CTVM-7-6-110-0-file1.iso", + "filesize": 185561088, + "md5sum": "7acbd88120f008a25d849b72b7207e92", + "version": "7.6.110.0" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.1.120.0", + "filename": "AIR-CTVM-k9-8-1-120.0.iso", + "filesize": 302104576, + "md5sum": "477363f88f07f64499bb4ab80ffa9d2f", + "version": "8.1.120.0" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.2.141.0", + "filename": "MFG_CTVM_8_2_141_0.iso", + "filesize": 351156224, + "md5sum": "29483229ce7844df55a90564b077c958", + "version": "8.2.141.0" + }, + { + "download_url": "https://software.cisco.com/download/release.html?mdfid=284464214&flowid=&softwareid=280926587&release=8.3.102.0", + "filename": "MFG_CTVM_8_3_102_0.iso", + "filesize": 365996032, + "md5sum": "7f6b7968b5bed04b5ecc119b6ba4e41c", + "version": "8.3.102.0" + }, + { + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty8G.qcow2", + "filesize": 197120, + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", + "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Cisco IOSvL2", - "port_name_format": "Gi{1}/{0}", - "port_segment_size": 4, - "product_name": "IOSvL2", - "product_url": "http://virl.cisco.com/", + "name": "Cisco vWLC", + "port_name_format": "Management{port1}", + "product_name": "Virtual Wireless LAN Controller", + "product_url": "http://www.cisco.com/c/en/us/support/wireless/virtual-wireless-controller/tsd-products-support-series-home.html", "qemu": { "adapter_type": "e1000", - "adapters": 16, + "adapters": 2, "arch": "x86_64", - "console_type": "telnet", - "hda_disk_interface": "virtio", + "boot_priority": "cd", + "console_type": "vnc", + "hda_disk_interface": "ide", "kvm": "require", - "ram": 768 + "options": "", + "ram": 2048 }, "registry_version": 3, - "status": "stable", - "usage": "There is no default password and enable password. There is no default configuration present.", + "status": "experimental", + "symbol": ":/symbols/wlan_controller.svg", + "usage": "Starting vWLC will start an installation of vWLC onto a blank 8GB Drive.", "vendor_name": "Cisco", "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "vios_l2-adventerprisek9-m.03.2017.qcow2" + "cdrom_image": "AIR-CTVM-k9-8-1-120.0.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "15.2(20170321:233949)" + "name": "8.1.120.0" }, { "images": { - "hda_disk_image": "vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E" + "cdrom_image": "MFG_CTVM_8_2_141_0.iso", + "hda_disk_image": "empty8G.qcow2" + }, + "name": "8.2.141.0" + }, + { + "images": { + "cdrom_image": "MFG_CTVM_8_3_102_0.iso", + "hda_disk_image": "empty8G.qcow2" + }, + "name": "8.3.102.0" + } + ] + }, + { + "builtin": true, + "category": "guest", + "description": "This appliance provides RADIUS and TACACS+ services with preconfigured users and groups.", + "docker": { + "adapters": 1, + "console_type": "telnet", + "image": "adosztal/aaa:latest" + }, + "maintainer": "Andras Dosztal", + "maintainer_email": "developers@gns3.net", + "name": "AAA", + "product_name": "AAA", + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "usage": "RADIUS users:\n- alice\n- bob\n\nTACACS+ users:\n- gns3 (role: admin)\n- readonly\n\nAll users, as well as the RADIUS/TACACS+ clients have the password 'gns3' set.", + "vendor_name": "Ubuntu", + "vendor_url": "https://www.ubuntu.com/" + }, + { + "builtin": true, + "category": "guest", + "description": "This container provides the popular tools used for network automation: Netmiko, NAPALM, Pyntc, and Ansible.", + "docker": { + "adapters": 1, + "console_type": "telnet", + "image": "adosztal/network_automation:latest" + }, + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "Network Automation", + "product_name": "Network Automation", + "registry_version": 3, + "status": "stable", + "symbol": "linux_guest.svg", + "vendor_name": "GNS3", + "vendor_url": "http://www.gns3.com" + }, + { + "builtin": true, + "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.", + "documentation_url": "http://wiki.openwrt.org/doc/", + "images": [ + { + "compression": "gzip", + "direct_download_url": "https://downloads.openwrt.org/chaos_calmer/15.05.1/x86/kvm_guest/openwrt-15.05.1-x86-kvm_guest-combined-ext4.img.gz", + "download_url": "http://downloads.openwrt.org/chaos_calmer/15.05.1/x86/kvm_guest/", + "filename": "openwrt-15.05.1-x86-kvm_guest-combined-ext4.img", + "filesize": 55050240, + "md5sum": "d02f5224b7fbe929efa4d3f10f4dc996", + "version": "15.05.1" + } + ], + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "name": "OpenWrt", + "product_name": "OpenWrt", + "product_url": "http://openwrt.org", + "qemu": { + "adapter_type": "virtio-net-pci", + "adapters": 2, + "arch": "i386", + "console_type": "telnet", + "kvm": "allow", + "ram": 64 + }, + "registry_version": 3, + "status": "stable", + "usage": "Ethernet0 is the LAN link, Ethernet1 the WAN link.", + "vendor_name": "OpenWrt", + "vendor_url": "http://openwrt.org", + "versions": [ + { + "images": { + "hda_disk_image": "openwrt-15.05.1-x86-kvm_guest-combined-ext4.img" }, - "name": "15.2.4055" + "name": "Chaos Calmer 15.05.1" } ] }, { "builtin": true, "category": "guest", - "description": "A light Linux based on TinyCore Linux with Firefox preinstalled", - "documentation_url": "https://support.mozilla.org", + "description": "Cisco Data Center Network Manager (DCNM) 10 unifies and automates Cisco Nexus and Cisco MDS 9000 Family multitenant infrastructure for data center management across Cisco Nexus 5000, 6000, 7000, and 9000 Series Switches in NX\u2011OS mode using Cisco NX-OS Software as well as across Cisco MDS 9100 and 9300 Series Multilayer Fabric Switches, 9200 Series Multiservice Switches, and 9500 and 9700 Series Multilayer Directors. Data Center Network Manager 10 lets you manage very large numbers of devices while providing ready-to-use management and automation capabilities plus Virtual Extensible LAN (VXLAN) overlay visibility into Cisco Nexus LAN fabrics.", + "documentation_url": "http://www.cisco.com/c/en/us/support/cloud-systems-management/data-center-network-manager-10/model.html", "images": [ { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-firefox-33.1.1-2.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-tinycore-linux-6.4-firefox-33.1.1-2.img", - "filesize": 93257728, - "md5sum": "8db0d8dc890797cc335ceb8aaf2255f0", - "version": "31.1.1~2" + "download_url": "https://software.cisco.com/download/release.html?mdfid=281722751&softwareid=282088134&release=10.1(1)&relind=AVAILABLE&rellifecycle=&reltype=latest", + "filename": "dcnm-va.10.1.1.iso", + "filesize": 2927532032, + "md5sum": "4eca14506decaf166251c64e67adb110", + "version": "10.1.1" }, { - "direct_download_url": "http://downloads.sourceforge.net/project/gns-3/Qemu%20Appliances/linux-tinycore-linux-6.4-firefox-33.1.1.img", - "download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/", - "filename": "linux-tinycore-linux-6.4-firefox-33.1.1.img", - "filesize": 82313216, - "md5sum": "9e51ad24dc25c4a26f7a8fb99bc77830", - "version": "31.1.1~1" + "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download", + "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", + "filename": "empty100G.qcow2", + "filesize": 198656, + "md5sum": "1e6409a4523ada212dea2ebc50e50a65", + "version": "1.0" } ], - "maintainer": "GNS3 team", + "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "Firefox", - "product_name": "Firefox", - "product_url": "https://www.mozilla.org/firefox", + "name": "Cisco DCNM", + "port_name_format": "eth{0}", + "product_name": "DCNM", + "product_url": "http://www.cisco.com/c/en/us/products/cloud-systems-management/prime-data-center-network-manager/index.html", "qemu": { "adapter_type": "e1000", - "adapters": 1, - "arch": "i386", + "adapters": 2, + "arch": "x86_64", "console_type": "vnc", - "kvm": "allow", - "options": "-vga std -usbdevice tablet", - "ram": 256 + "hda_disk_interface": "ide", + "kvm": "require", + "options": "-smp 2", + "ram": 8192 }, "registry_version": 3, "status": "stable", - "symbol": "firefox.svg", - "vendor_name": "Mozilla Foundation", - "vendor_url": "http://www.mozilla.org", + "symbol": "mgmt_station.svg", + "usage": "Default credentials: root / cisco123", + "vendor_name": "Cisco", + "vendor_url": "http://www.cisco.com/", "versions": [ { "images": { - "hda_disk_image": "linux-tinycore-linux-6.4-firefox-33.1.1-2.img" - }, - "name": "31.1.1~2" - }, - { - "images": { - "hda_disk_image": "linux-tinycore-linux-6.4-firefox-33.1.1.img" + "cdrom_image": "dcnm-va.10.1.1.iso", + "hda_disk_image": "empty100G.qcow2" }, - "name": "31.1.1~1" + "name": "10.1.1" } ] }, { "builtin": true, - "category": "firewall", - "description": "FortiWeb Web Application Firewalls provide specialized, layered web application threat protection for medium/large enterprises, application service providers, and SaaS providers.", - "documentation_url": "http://docs.fortinet.com/fortiweb", + "category": "router", + "description": "With proven ultra-high performance and scalability, the Brocade vRouter is the networking industry leader in software innovation. The Brocade vRouter has set a the benchmark for all software-based routers, while offering easy scalability, a broad set of capabilities, and the peace of mind that comes with rock solid reliability.", + "documentation_url": "http://www.brocade.com/en/products-services/software-networking/network-functions-virtualization/vrouter.html", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build1618-FORTINET.out.kvm.qcow2", - "filesize": 132579840, - "md5sum": "12bafff7bbfbf9a49554c6378f0e1a46", - "version": "5.9.1" - }, - { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build1609-FORTINET.out.kvm.qcow2", - "filesize": 140837376, - "md5sum": "a957ae3d60eabc685fcda015c31a5d01", - "version": "5.9.0" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "vyatta-vrouter-17.1.1_B_amd64.iso", + "filesize": 347078656, + "md5sum": "914c9ca9d51a33fc54f718020f862df2", + "version": "17.1.1" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build1413-FORTINET.out.kvm.qcow2", - "filesize": 105775616, - "md5sum": "910fefe796daa5c963b0bde121996306", - "version": "5.8.6" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "vyatta-vrouter-17.1.0_B_amd64.iso", + "filesize": 346030080, + "md5sum": "ff524e06fda6d982b9b66f25940fe63b", + "version": "17.1.0" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build0739-FORTINET.out.kvm-log.qcow2", - "filesize": 7602176, - "md5sum": "d42225723d2e2ee0160f101c5b9663d5", - "version": "5.5.4" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "vyatta-vrouter-5.2R2_B_amd64.iso", + "filesize": 344981504, + "md5sum": "6b7dcc152a18187ad151483c139fb82c", + "version": "5.2R2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2", - "filesize": 7602176, - "md5sum": "b90cd0a382cb09db31cef1d0cdf7d6e9", - "version": "5.5.2 - 5.5.3" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "vyatta-vrouter-5.1R1_B_amd64.iso", + "filesize": 344981504, + "md5sum": "e374b8bae9eecd52ee841f5e262b3a16", + "version": "5.1R1" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build0739-FORTINET.out.kvm-boot.qcow2", - "filesize": 87228416, - "md5sum": "a11b91efacce70212b6b9e1f9916cc3e", - "version": "5.5.4" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "livecd-VR5600_5.0R2_B_amd64.iso", + "filesize": 340787200, + "md5sum": "ce47dba6f89ef1175ef8850110521104", + "version": "5.0R2" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build0730-FORTINET.out.kvm-boot.qcow2", - "filesize": 87228416, - "md5sum": "12ebec432a54900e6c63540af8ebfbb4", - "version": "5.5.3" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "livecd-VR5600_4.2R1_B_amd64.iso", + "filesize": 326107136, + "md5sum": "5e3023c64dc409ae01d5bcb1b6732593", + "version": "4.2R1" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FWB_KVM-v500-build0723-FORTINET.out.kvm-boot.qcow2", - "filesize": 87162880, - "md5sum": "0a613191948d3618ae16cd9f11988448", - "version": "5.5.2" + "download_url": "http://www1.brocade.com/forms/jsp/vrouter/index.jsp?src=WS&lsd=BRCD&lst=English&cn=PA-GDG-16Q1-EVAL-Vrouter&intcmp=lp_en_softevaluations_vrouter_bn_00001", + "filename": "vyatta-livecd_3.5R3T60_amd64.iso", + "filesize": 288358400, + "md5sum": "90360273f818a3dba83fa93ef6da938b", + "version": "3.5R3" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", + "direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty8G.qcow2/download", "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", + "filename": "empty8G.qcow2", "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", + "md5sum": "f1d2c25b6990f99bd05b433ab603bdb4", "version": "1.0" } ], "maintainer": "GNS3 Team", "maintainer_email": "developers@gns3.net", - "name": "FortiWeb", - "port_name_format": "Port{port1}", - "product_name": "FortiWeb", - "product_url": "http://www.fortinet.com/products/fortiweb/index.html", + "name": "vRouter", + "port_name_format": "eth{0}", + "product_name": "vRouter", + "product_url": "http://www.brocade.com/en/products-services/software-networking/network-functions-virtualization/vrouter.html", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapters": 8, "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", + "boot_priority": "cd", + "console_type": "telnet", "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", - "ram": 2048 + "kvm": "require", + "options": "-smp 4 -cpu host", + "ram": 4096 }, "registry_version": 3, "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set. Console keeps sending 'access uuid file failed, error number 2' messages; ignore it.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "usage": "60 days evaluation. The Brocade vRouter must be on-line and have public connectivity in order to communicate with the Brocade licensing server for automated license key generation. Please note that the evaluation software will only run for 24 hours after installation without the activation code being entered into the system. You must enter your activation code in order to retrieve your licensing key after you install the Brocade vRouter software. Default credentials: vyatta / vyatta", + "vendor_name": "Brocade", + "vendor_url": "http://www.brocade.com/", "versions": [ { "images": { - "hda_disk_image": "FWB_KVM-v500-build1618-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "vyatta-vrouter-17.1.1_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.9.1" + "name": "17.1.1" }, { "images": { - "hda_disk_image": "FWB_KVM-v500-build1609-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "vyatta-vrouter-17.1.0_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.9.0" + "name": "17.1.0" }, { "images": { - "hda_disk_image": "FWB_KVM-v500-build1413-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "cdrom_image": "vyatta-vrouter-5.2R2_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.8.6" + "name": "5.2R2" }, { "images": { - "hda_disk_image": "FWB_KVM-v500-build0739-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FWB_KVM-v500-build0739-FORTINET.out.kvm-log.qcow2" + "cdrom_image": "vyatta-vrouter-5.1R1_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.5.4" + "name": "5.1R1" }, { "images": { - "hda_disk_image": "FWB_KVM-v500-build0730-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2" + "cdrom_image": "livecd-VR5600_5.0R2_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.5.3" + "name": "5.0R2" }, { "images": { - "hda_disk_image": "FWB_KVM-v500-build0723-FORTINET.out.kvm-boot.qcow2", - "hdb_disk_image": "FWB_KVM-v500-FORTINET.out.kvm-log.qcow2" + "cdrom_image": "livecd-VR5600_4.2R1_B_amd64.iso", + "hda_disk_image": "empty8G.qcow2" }, - "name": "5.5.2" + "name": "4.2R1" + }, + { + "images": { + "cdrom_image": "vyatta-livecd_3.5R3T60_amd64.iso", + "hda_disk_image": "empty8G.qcow2" + }, + "name": "3.5R3" } ] }, { "builtin": true, - "category": "guest", - "description": "FortiAnalyzer Network Security Logging, Analysis, and Reporting Appliances securely aggregate log data from Fortinet Security Appliances. A comprehensive suite of easily customable reports allows you to quickly analyze and visualize network threats, inefficiencies and usage.", - "documentation_url": "http://docs.fortinet.com/fortianalyzer/", + "category": "router", + "description": "The vMX is a full-featured, carrier-grade virtual MX Series 3D Universal Edge Router that extends 15+ years of Juniper Networks edge routing expertise to the virtual realm. This appliance is for the Virtual Forwarding Plane (vFP) VM and is meant to be paired with the Virtual Control Plane (vCP) VM.", + "documentation_url": "http://www.juniper.net/techpubs/", + "first_port_name": "Eth0", "images": [ { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", - "filesize": 117940224, - "md5sum": "e870087db55a095c75ddcafe73e1ea27", - "version": "6.0.0" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20171213.img", + "filesize": 2313158656, + "md5sum": "848a6256da7296e8fede368a258c68e4", + "version": "17.4R1.16-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", - "filesize": 105816064, - "md5sum": "c7f1cf26051b50b86e7e59b99e36756f", - "version": "5.6.2" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20180126.img", + "filesize": 2313158656, + "md5sum": "02d6b719053485c52a511fe6f5a598e3", + "version": "17.3R2.10-KVM" + }, + { + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_17.1R1.8-disk1.vmdk", + "filesize": 102820352, + "md5sum": "169dd487b8547d58b12b2918a5667360", + "version": "17.1R1.8-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", - "filesize": 105705472, - "md5sum": "1bd94c920f8747de671832ef92e8dfbc", - "version": "5.6.1" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20170216.img", + "filesize": 2313158656, + "md5sum": "e838b8dd116a8b388d8dfd99575e7e98", + "version": "17.1R1.8-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", - "filesize": 106905600, - "md5sum": "6aa0a185723efcab464aa298b364d12b", - "version": "5.6.0" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_16.2R1.6-disk1.vmdk", + "filesize": 102430208, + "md5sum": "abb15d485cd195b9a693a2f3f091564a", + "version": "16.2R1.6-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", - "filesize": 88715264, - "md5sum": "69cddb5c3e49bab3dc287353d8600b45", - "version": "5.4.4" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20161025.img", + "filesize": 2313158656, + "md5sum": "3105a5af7d859fc24b686e71113413a9", + "version": "16.2R1.6-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", - "filesize": 86036480, - "md5sum": "4f9fa1e7dbfa9187a4cb479458144596", - "version": "5.4.3" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_16.1R4.7-disk1.vmdk", + "filesize": 102431232, + "md5sum": "c381a23038dc5d4f939b7b5c3d074ce2", + "version": "16.1R4.7-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", - "filesize": 85651456, - "md5sum": "c4f7bf355c7483f23edd4f6bf34bc602", - "version": "5.4.2" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20170211.img", + "filesize": 2313158656, + "md5sum": "cdec45ecca1cd9bfefe318b066bd500b", + "version": "16.1R4.7-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", - "filesize": 81580032, - "md5sum": "e9bae3fc7195200f659178060968c7c4", - "version": "5.4.1" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_16.1R3.10-disk1.vmdk", + "filesize": 102437376, + "md5sum": "03b9d23c0223d8078fa3830c23fcf144", + "version": "16.1R3.10-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", - "filesize": 66256896, - "md5sum": "72530309422616a1a1478fa0c78fbb08", - "version": "5.4.0" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20161019.img", + "filesize": 2313158656, + "md5sum": "0fbba19da959c3e76b438128b28726f7", + "version": "16.1R3.10-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", - "filesize": 55238656, - "md5sum": "b9553e0f1cfc875d2121c840a1fafebc", - "version": "5.2.10" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_16.1R2.11-disk1.vmdk", + "filesize": 102431232, + "md5sum": "1a90e5dc0c02c8336b9084cbdf17f635", + "version": "16.1R2.11-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", - "filesize": 55042048, - "md5sum": "e79581adb9ac36913823f0119a1c8da8", - "version": "5.2.9" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20160902.img", + "filesize": 2313158656, + "md5sum": "09ee97c6c18b392b1b72f5e3e4743c2d", + "version": "16.1R2.11-KVM" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", - "filesize": 55361536, - "md5sum": "9a061657c3fdac9e9b631621a100cdc8", - "version": "5.2.8" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vfpc_16.1R1.7-disk1.vmdk", + "filesize": 63884800, + "md5sum": "8475d8b065768f585659a49c50f1d7e1", + "version": "16.1R1.7-ESXi" }, { - "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx", - "filename": "FAZ_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", - "filesize": 55070720, - "md5sum": "a349f4d9f4f12e8963e3b471357dcbb6", - "version": "5.2.7" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20160617.img", + "filesize": 2313158656, + "md5sum": "5ccf252002184a21413cad23fd239c3f", + "version": "16.1R1.7-KVM" }, { - "direct_download_url": "http://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty30G.qcow2/download", - "download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/", - "filename": "empty30G.qcow2", - "filesize": 197120, - "md5sum": "3411a599e822f2ac6be560a26405821a", - "version": "1.0" + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-15.1F6.9.img", + "filesize": 2313158656, + "md5sum": "7328501fdfa9b160955bc136664f1e86", + "version": "15.1F6.9-KVM" + }, + { + "download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", + "filename": "vFPC-20151203.img", + "filesize": 2313158656, + "md5sum": "b3faa91b4d20836a9a6dd6bad2629dd1", + "version": "15.1F4.15" } ], - "maintainer": "GNS3 Team", + "maintainer": "none", "maintainer_email": "developers@gns3.net", - "name": "FortiAnalyzer", - "port_name_format": "Port{port1}", - "product_name": "FortiAnalyzer", - "product_url": "https://www.fortinet.com/products-services/products/management-reporting/fortianalyzer.html", + "name": "Juniper vMX vFP", + "port_name_format": "Eth{port1}", + "product_name": "Juniper vMX vFP", + "product_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/", "qemu": { "adapter_type": "virtio-net-pci", - "adapters": 4, + "adapters": 12, "arch": "x86_64", - "boot_priority": "c", "console_type": "telnet", - "hda_disk_interface": "virtio", - "hdb_disk_interface": "virtio", - "kvm": "allow", - "ram": 1024 + "kvm": "require", + "options": "-nographic -enable-kvm -smp cpus=3", + "ram": 4096 }, "registry_version": 3, - "status": "stable", - "symbol": "fortinet.svg", - "usage": "Default username is admin, no password is set.", - "vendor_name": "Fortinet", - "vendor_url": "http://www.fortinet.com/", + "status": "experimental", + "symbol": "juniper-vmx.svg", + "usage": "Initial username is root, password is root.\n", + "vendor_name": "Juniper", + "vendor_url": "https://www.juniper.net/us/en/", "versions": [ { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v6-build0092-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20171213.img" }, - "name": "6.0.0" + "name": "17.4R1.16-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1631-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20180126.img" }, - "name": "5.6.2" + "name": "17.3R2.10-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1619-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_17.1R1.8-disk1.vmdk" }, - "name": "5.6.1" + "name": "17.1R1.8-ESXi" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1557-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20170216.img" }, - "name": "5.6.0" + "name": "17.1R1.8-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1225-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_16.2R1.6-disk1.vmdk" }, - "name": "5.4.4" + "name": "16.2R1.6-ESXi" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1187-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20161025.img" }, - "name": "5.4.3" + "name": "16.2R1.6-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1151-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_16.1R4.7-disk1.vmdk" }, - "name": "5.4.2" + "name": "16.1R4.7-ESXi" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1082-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20170211.img" }, - "name": "5.4.1" + "name": "16.1R4.7-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build1019-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_16.1R3.10-disk1.vmdk" }, - "name": "5.4.0" + "name": "16.1R3.10-ESXi" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build0786-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20161019.img" }, - "name": "5.2.10" + "name": "16.1R3.10-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build0780-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_16.1R2.11-disk1.vmdk" }, - "name": "5.2.9" + "name": "16.1R2.11-ESXi" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build0777-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vFPC-20160902.img" }, - "name": "5.2.8" + "name": "16.1R2.11-KVM" }, { "images": { - "hda_disk_image": "FAZ_VM64_KVM-v5-build0760-FORTINET.out.kvm.qcow2", - "hdb_disk_image": "empty30G.qcow2" + "hda_disk_image": "vfpc_16.1R1.7-disk1.vmdk" }, - "name": "5.2.7" - } - ] - }, - { - "builtin": true, - "category": "router", - "description": "Cisco 3725 Router", - "documentation_url": "http://www.cisco.com/c/en/us/support/index.html", - "dynamips": { - "nvram": 256, - "platform": "c3725", - "ram": 128, - "slot0": "GT96100-FE", - "startup_config": "ios_base_startup-config.txt" - }, - "images": [ - { - "filename": "c3725-adventerprisek9-mz.124-15.T14.image", - "filesize": 97859480, - "md5sum": "64f8c427ed48fd21bd02cf1ff254c4eb", - "version": "124-25.T14" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco 3725", - "product_name": "3725", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ + "name": "16.1R1.7-ESXi" + }, { - "idlepc": "0x60c09aa0", "images": { - "image": "c3725-adventerprisek9-mz.124-15.T14.image" + "hda_disk_image": "vFPC-20160617.img" }, - "name": "124-25.T14" + "name": "16.1R1.7-KVM" + }, + { + "images": { + "hda_disk_image": "vFPC-15.1F6.9.img" + }, + "name": "15.1F6.9-KVM" + }, + { + "images": { + "hda_disk_image": "vFPC-20151203.img" + }, + "name": "15.1F4.15" } ] }, @@ -11863,6 +13106,14 @@ X-Route: /v2/appliances/templates "description": "Kerio Connect makes email, calendars, contacts and task management easy and affordable. With Kerio Connect, you have immediate, secure access to your communications anytime, anywhere, on any device \u2014 without complexity or expensive overhead.", "documentation_url": "http://kb.kerio.com/product/kerio-connect/", "images": [ + { + "direct_download_url": "http://cdn.kerio.com/dwn/connect/connect-9.2.7-4225/kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk", + "download_url": "http://www.kerio.com/support/kerio-connect", + "filename": "kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk", + "filesize": 914165248, + "md5sum": "12950c8244300f1d86c85c109f0b3413", + "version": "9.2.7p3" + }, { "direct_download_url": "http://cdn.kerio.com/dwn/connect/connect-9.2.6-3851/kerio-connect-appliance-9.2.6-3851-p1-vmware-amd64-disk1.vmdk", "download_url": "http://www.kerio.com/support/kerio-connect", @@ -11935,6 +13186,12 @@ X-Route: /v2/appliances/templates "vendor_name": "Kerio Technologies Inc.", "vendor_url": "http://www.kerio.com", "versions": [ + { + "images": { + "hda_disk_image": "kerio-connect-appliance-9.2.7-4225-p3-vmware-amd64-disk1.vmdk" + }, + "name": "9.2.7p3" + }, { "images": { "hda_disk_image": "kerio-connect-appliance-9.2.6-3851-p1-vmware-amd64-disk1.vmdk" @@ -11973,232 +13230,24 @@ X-Route: /v2/appliances/templates } ] }, - { - "builtin": true, - "category": "router", - "description": "Cisco 7200 Router", - "documentation_url": "http://www.cisco.com/c/en/us/products/routers/7200-series-routers/index.html", - "dynamips": { - "midplane": "vxr", - "npe": "npe-400", - "nvram": 512, - "platform": "c7200", - "ram": 512, - "slot0": "C7200-IO-FE", - "startup_config": "ios_base_startup-config.txt" - }, - "images": [ - { - "filename": "c7200-adventerprisek9-mz.124-24.T5.image", - "filesize": 102345240, - "md5sum": "6b89d0d804e1f2bb5b8bda66b5692047", - "version": "124-24.T5" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Cisco 7200", - "product_name": "7200", - "registry_version": 3, - "status": "experimental", - "vendor_name": "Cisco", - "vendor_url": "http://www.cisco.com", - "versions": [ - { - "idlepc": "0x606df838", - "images": { - "image": "c7200-adventerprisek9-mz.124-24.T5.image" - }, - "name": "124-24.T5" - } - ] - }, - { - "availability": "service-contract", - "builtin": true, - "category": "firewall", - "description": "Cisco Firepower Next-Generation IPS (NGIPS) threat appliances combine superior visibility, embedded security intelligence, automated analysis, and industry-leading threat effectiveness.", - "documentation_url": "http://www.cisco.com/c/en/us/support/security/ngips-virtual-appliance/tsd-products-support-series-home.html", - "first_port_name": "eth0 (Mgmt)", - "images": [ - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.0.0.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_NGIPSv_VMware-6.0.0-1005-disk1.vmdk", - "filesize": 804301312, - "md5sum": "72ed34d39c58a9d5ad1c6197d1ff9a62", - "version": "6.0.0 (1005) vmdk" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.1.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_NGIPSv_VMware-6.1.0-330-disk1.vmdk", - "filesize": 860411392, - "md5sum": "7a771cc8c37a0371285f24c25f9886f0", - "version": "6.1.0 (330) vmdk" - }, - { - "download_url": "https://software.cisco.com/download/release.html?mdfid=286259690&softwareid=286271056&release=6.2.0&relind=AVAILABLE&rellifecycle=&reltype=latest", - "filename": "Cisco_Firepower_NGIPSv_VMware-6.2.0-362-disk1.vmdk", - "filesize": 877626368, - "md5sum": "46f629149e11ac5c224bae0486c7e406", - "version": "6.2.0 (362) vmdk" - } - ], - "maintainer": "Community", - "maintainer_email": "", - "name": "Cisco NGIPSv", - "port_name_format": "eth{port1}", - "product_name": "Cisco Firepower NGIPS Virtual", - "product_url": "http://www.cisco.com/c/en/us/support/security/ngips-virtual-appliance/tsd-products-support-series-home.html", - "qemu": { - "adapter_type": "vmxnet3", - "adapters": 10, - "arch": "x86_64", - "console_type": "telnet", - "cpus": 4, - "hda_disk_interface": "scsi", - "kvm": "require", - "ram": 8192 - }, - "registry_version": 4, - "status": "experimental", - "symbol": ":/symbols/ids.svg", - "usage": "Default username/password: admin/Admin123.", - "vendor_name": "Cisco Systems", - "vendor_url": "http://www.cisco.com/", - "versions": [ - { - "images": { - "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.2.0-362-disk1.vmdk" - }, - "name": "6.2.0 (362) vmdk" - }, - { - "images": { - "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.1.0-330-disk1.vmdk" - }, - "name": "6.1.0 (330) vmdk" - }, - { - "images": { - "hda_disk_image": "Cisco_Firepower_NGIPSv_VMware-6.0.0-1005-disk1.vmdk" - }, - "name": "6.0.0 (1005) vmdk" - } - ] - }, { "builtin": true, "category": "guest", - "description": "Stay connected to your customers and colleagues without being chained to your desk.\nKerio Operator is a VoIP based phone system that provides powerful yet affordable enterprise-class voice and video communication capabilities for small and mid-sized businesses globally.", - "documentation_url": "http://kb.kerio.com/product/kerio-operator/", - "images": [ - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.2-9085/kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk", - "filesize": 306665472, - "md5sum": "abdfa7697e568b5d9a6396e11292e52a", - "version": "2.6.2" - }, - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.6.0-8413/kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk", - "filesize": 291227136, - "md5sum": "3eddbb73d685ac4666841f5df2c6bec9", - "version": "2.6.0" - }, - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.5-8309/kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk", - "filesize": 291217408, - "md5sum": "dc0b4d0b264eb39c8c73289b6c8de749", - "version": "2.5.5p2" - }, - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.4-6916/kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk", - "filesize": 276318720, - "md5sum": "6737b36bd36635b8a5ba21816938f0d6", - "version": "2.5.4p1" - }, - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.3-6630/kerio-operator-appliance-2.5.3-6630-vmware.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.5.3-6630-vmware.vmdk", - "filesize": 276422144, - "md5sum": "ae9f45606900dba05f353a94d4fc14fc", - "version": "2.5.3" - }, - { - "direct_download_url": "http://cdn.kerio.com/dwn/operator/operator-2.5.2-6404/kerio-operator-appliance-2.5.2-6404-vmware.vmdk", - "download_url": "http://www.kerio.com/support/kerio-operator", - "filename": "kerio-operator-appliance-2.5.2-6404-vmware.vmdk", - "filesize": 561512448, - "md5sum": "0279baebe587b17f32bfc3302df9352c", - "version": "2.5.2" - } - ], - "maintainer": "GNS3 Team", - "maintainer_email": "developers@gns3.net", - "name": "Kerio Operator", - "port_name_format": "eth{0}", - "product_name": "Kerio Operator", - "product_url": "http://www.kerio.com/products/kerio-operator", - "qemu": { - "adapter_type": "e1000", + "description": "This appliance contains server side software for secondary management of network devices:\n- www (nginx) \n- ftp (vsftpd)\n- tftp (tftpd)\n- syslog (rsyslog)\n- dhcp (isc-dhcpd)\n- snmp server (snmpd + snmptrapd)", + "docker": { "adapters": 1, - "arch": "x86_64", - "boot_priority": "c", - "console_type": "vnc", - "hda_disk_interface": "virtio", - "kvm": "require", - "ram": 2048 + "console_type": "telnet", + "image": "adosztal/net_toolbox:latest" }, + "maintainer": "Andras Dosztal", + "maintainer_email": "developers@gns3.net", + "name": "Toolbox", + "product_name": "Networkers' toolbox", "registry_version": 3, "status": "stable", - "usage": "Default credentials: root (no password set)", - "vendor_name": "Kerio Technologies Inc.", - "vendor_url": "http://www.kerio.com", - "versions": [ - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.6.2-9085-vmware-disk1.vmdk" - }, - "name": "2.6.2" - }, - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.6.0-8413-vmware-disk1.vmdk" - }, - "name": "2.6.0" - }, - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.5.5-8309-p2-vmware-disk1.vmdk" - }, - "name": "2.5.5p2" - }, - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.5.4-6916-p1-vmware.vmdk" - }, - "name": "2.5.4p1" - }, - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.5.3-6630-vmware.vmdk" - }, - "name": "2.5.3" - }, - { - "images": { - "hda_disk_image": "kerio-operator-appliance-2.5.2-6404-vmware.vmdk" - }, - "name": "2.5.2" - } - ] + "symbol": "linux_guest.svg", + "usage": "Root password: gns3", + "vendor_name": "Ubuntu", + "vendor_url": "https://www.ubuntu.com/" } ] diff --git a/docs/api/examples/controller_get_computes.txt b/docs/api/examples/controller_get_computes.txt index 2311be25..6ec7a304 100644 --- a/docs/api/examples/controller_get_computes.txt +++ b/docs/api/examples/controller_get_computes.txt @@ -6,10 +6,10 @@ GET /v2/computes HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 387 +Content-Length: 415 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:03 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes [ @@ -22,6 +22,7 @@ X-Route: /v2/computes "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "My super server", "port": 84, diff --git a/docs/api/examples/controller_get_computescomputeid.txt b/docs/api/examples/controller_get_computescomputeid.txt index edaa7e61..087e82f0 100644 --- a/docs/api/examples/controller_get_computescomputeid.txt +++ b/docs/api/examples/controller_get_computescomputeid.txt @@ -6,10 +6,10 @@ GET /v2/computes/my_compute_id HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 334 +Content-Length: 358 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id} { @@ -21,6 +21,7 @@ X-Route: /v2/computes/{compute_id} "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/examples/controller_get_computescomputeidemulatoraction.txt b/docs/api/examples/controller_get_computescomputeidemulatoraction.txt index d1e3e1a1..a5c2089d 100644 --- a/docs/api/examples/controller_get_computescomputeidemulatoraction.txt +++ b/docs/api/examples/controller_get_computescomputeidemulatoraction.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:04 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} [] diff --git a/docs/api/examples/controller_get_computescomputeidemulatorimages.txt b/docs/api/examples/controller_get_computescomputeidemulatorimages.txt index 532ee982..1b74f2b9 100644 --- a/docs/api/examples/controller_get_computescomputeidemulatorimages.txt +++ b/docs/api/examples/controller_get_computescomputeidemulatorimages.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 95 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:04 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id}/{emulator}/images [ diff --git a/docs/api/examples/controller_get_gns3vm.txt b/docs/api/examples/controller_get_gns3vm.txt index 180325cf..deadadee 100644 --- a/docs/api/examples/controller_get_gns3vm.txt +++ b/docs/api/examples/controller_get_gns3vm.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 148 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/gns3vm { diff --git a/docs/api/examples/controller_get_gns3vmengines.txt b/docs/api/examples/controller_get_gns3vmengines.txt index 5e9b53e3..487ebccd 100644 --- a/docs/api/examples/controller_get_gns3vmengines.txt +++ b/docs/api/examples/controller_get_gns3vmengines.txt @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 1238 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/gns3vm/engines [ { - "description": "VMware is the recommended choice for best performances.
The GNS3 VM can be downloaded here.", + "description": "VMware is the recommended choice for best performances.
The GNS3 VM can be downloaded here.", "engine_id": "vmware", "name": "VMware Workstation / Player (recommended)", "support_headless": true, @@ -22,7 +22,7 @@ X-Route: /v2/gns3vm/engines "support_when_exit": true }, { - "description": "VirtualBox doesn't support nested virtualization, this means Qemu based VMs will run extremely slowly. This feature is marked as deprecated and support may be removed from future GNS3 releases.
The GNS3 VM can be downloaded here", + "description": "VirtualBox doesn't support nested virtualization, this means Qemu based VMs will run extremely slowly. This feature is marked as deprecated and support may be removed from future GNS3 releases.
The GNS3 VM can be downloaded here", "engine_id": "virtualbox", "name": "VirtualBox (deprecated)", "support_headless": true, diff --git a/docs/api/examples/controller_get_gns3vmenginesenginevms.txt b/docs/api/examples/controller_get_gns3vmenginesenginevms.txt index 6286a7aa..4cd35a61 100644 --- a/docs/api/examples/controller_get_gns3vmenginesenginevms.txt +++ b/docs/api/examples/controller_get_gns3vmenginesenginevms.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 40 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/gns3vm/engines/{engine}/vms [ diff --git a/docs/api/examples/controller_get_projects.txt b/docs/api/examples/controller_get_projects.txt index 5661ae72..58f12749 100644 --- a/docs/api/examples/controller_get_projects.txt +++ b/docs/api/examples/controller_get_projects.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 604 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects [ @@ -20,7 +20,7 @@ X-Route: /v2/projects "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/pytest-of-grossmj/pytest-19/test_list_projects1", + "path": "/tmp/pytest-of-grossmj/pytest-36/test_list_projects1", "project_id": "00010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_get_projectsprojectid.txt b/docs/api/examples/controller_get_projectsprojectid.txt index 588bc6ec..1fa7f89f 100644 --- a/docs/api/examples/controller_get_projectsprojectid.txt +++ b/docs/api/examples/controller_get_projectsprojectid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/b7146983-8728-4525-94d9-e1b147737405' +curl -i -X GET 'http://localhost:3080/v2/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59' -GET /v2/projects/b7146983-8728-4525-94d9-e1b147737405 HTTP/1.1 +GET /v2/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id} { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id} "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpf7hl6vf_/projects/b7146983-8728-4525-94d9-e1b147737405", - "project_id": "b7146983-8728-4525-94d9-e1b147737405", + "path": "/tmp/tmpxj7d0qzi/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59", + "project_id": "39043d69-0ca5-4a5b-90a5-4887d3f9ef59", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_get_projectsprojectiddrawings.txt b/docs/api/examples/controller_get_projectsprojectiddrawings.txt index a05e3d4d..6cc08ad4 100644 --- a/docs/api/examples/controller_get_projectsprojectiddrawings.txt +++ b/docs/api/examples/controller_get_projectsprojectiddrawings.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/48d90a34-d353-42c2-85be-6e2a10f42be6/drawings' +curl -i -X GET 'http://localhost:3080/v2/projects/e4a1f1ad-189c-4445-8945-9cc9abaded88/drawings' -GET /v2/projects/48d90a34-d353-42c2-85be-6e2a10f42be6/drawings HTTP/1.1 +GET /v2/projects/e4a1f1ad-189c-4445-8945-9cc9abaded88/drawings HTTP/1.1 @@ -8,14 +8,14 @@ HTTP/1.1 200 Connection: close Content-Length: 363 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/drawings [ { - "drawing_id": "7fa89480-cde4-4c94-ad52-927c47594540", - "project_id": "48d90a34-d353-42c2-85be-6e2a10f42be6", + "drawing_id": "06bde5d8-99a7-4ebf-a1e0-60e0602cdeed", + "project_id": "e4a1f1ad-189c-4445-8945-9cc9abaded88", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt index 659a125e..3e50c87e 100644 --- a/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/42e91350-e4cc-4028-acc3-ac4a2e6416f2/drawings/a44445dc-9016-4103-8a7c-b191f6943cc8' +curl -i -X GET 'http://localhost:3080/v2/projects/72694de5-a8f0-4c55-bed5-74d0c00e47e1/drawings/6b83ccf4-c1bd-419d-b8a8-23588b236edb' -GET /v2/projects/42e91350-e4cc-4028-acc3-ac4a2e6416f2/drawings/a44445dc-9016-4103-8a7c-b191f6943cc8 HTTP/1.1 +GET /v2/projects/72694de5-a8f0-4c55-bed5-74d0c00e47e1/drawings/6b83ccf4-c1bd-419d-b8a8-23588b236edb HTTP/1.1 @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 323 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} { - "drawing_id": "a44445dc-9016-4103-8a7c-b191f6943cc8", - "project_id": "42e91350-e4cc-4028-acc3-ac4a2e6416f2", + "drawing_id": "6b83ccf4-c1bd-419d-b8a8-23588b236edb", + "project_id": "72694de5-a8f0-4c55-bed5-74d0c00e47e1", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_get_projectsprojectidlinks.txt b/docs/api/examples/controller_get_projectsprojectidlinks.txt index bdaea0cd..87e32a2c 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinks.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinks.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/849c8478-639a-493e-9528-6f4b6b496dff/links' +curl -i -X GET 'http://localhost:3080/v2/projects/ea40035b-2c6b-4e64-ad82-fa07698c3840/links' -GET /v2/projects/849c8478-639a-493e-9528-6f4b6b496dff/links HTTP/1.1 +GET /v2/projects/ea40035b-2c6b-4e64-ad82-fa07698c3840/links HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1293 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links [ @@ -25,7 +25,7 @@ X-Route: /v2/projects/{project_id}/links 10 ] }, - "link_id": "ac0d4a76-5120-4f5a-bfea-33fd674d8416", + "link_id": "43f9af37-d478-4727-8aef-c761aa24e680", "link_type": "ethernet", "nodes": [ { @@ -37,7 +37,7 @@ X-Route: /v2/projects/{project_id}/links "x": -10, "y": -10 }, - "node_id": "d1753166-6ea0-4f4e-878c-4bf1f754d87c", + "node_id": "35c89170-3bd9-44db-8287-95a653af80e4", "port_number": 3 }, { @@ -49,11 +49,11 @@ X-Route: /v2/projects/{project_id}/links "x": -10, "y": -10 }, - "node_id": "5925fab7-04e2-4872-8100-c1bc4f285bb3", + "node_id": "655110f6-65e2-4d19-9962-182264b6d653", "port_number": 4 } ], - "project_id": "849c8478-639a-493e-9528-6f4b6b496dff", + "project_id": "ea40035b-2c6b-4e64-ad82-fa07698c3840", "suspend": false } ] diff --git a/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt index 79bc9da6..3bafb3b7 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/b5823017-054c-4d82-a696-5304d896e762/links/ead271e6-e409-499a-ac1c-7afd6878ac8a' +curl -i -X GET 'http://localhost:3080/v2/projects/b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc/links/18109693-d121-4014-b161-9d20756d0e83' -GET /v2/projects/b5823017-054c-4d82-a696-5304d896e762/links/ead271e6-e409-499a-ac1c-7afd6878ac8a HTTP/1.1 +GET /v2/projects/b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc/links/18109693-d121-4014-b161-9d20756d0e83 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 916 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id} { @@ -17,7 +17,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "ead271e6-e409-499a-ac1c-7afd6878ac8a", + "link_id": "18109693-d121-4014-b161-9d20756d0e83", "link_type": "ethernet", "nodes": [ { @@ -27,7 +27,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": 42, "y": 0 }, - "node_id": "6d5732f1-92a2-408a-9418-e41eea030c61", + "node_id": "4a60a0c7-d7c6-4149-bf75-e6b4312978b9", "port_number": 3 }, { @@ -39,10 +39,10 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": -10, "y": -10 }, - "node_id": "65fcb695-21b8-41e6-8d83-79798bec0e87", + "node_id": "c60af12b-1951-444b-bd08-06aedc600334", "port_number": 4 } ], - "project_id": "b5823017-054c-4d82-a696-5304d896e762", + "project_id": "b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc", "suspend": false } diff --git a/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt b/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt index 6c6f94b4..fa375c22 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/822a6f60-8d24-4ba3-89c8-fec08552ba0d/links/e070464c-f62a-49a3-bad3-7be3cb953139/available_filters' +curl -i -X GET 'http://localhost:3080/v2/projects/cade0f0a-39d6-43e3-85d7-bca6c72f9ae2/links/ab3fcda1-7538-480d-a62c-56220d1b0f4b/available_filters' -GET /v2/projects/822a6f60-8d24-4ba3-89c8-fec08552ba0d/links/e070464c-f62a-49a3-bad3-7be3cb953139/available_filters HTTP/1.1 +GET /v2/projects/cade0f0a-39d6-43e3-85d7-bca6c72f9ae2/links/ab3fcda1-7538-480d-a62c-56220d1b0f4b/available_filters HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2119 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id}/available_filters [ diff --git a/docs/api/examples/controller_get_projectsprojectidnodes.txt b/docs/api/examples/controller_get_projectsprojectidnodes.txt index cfa94693..f2d702d9 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodes.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodes.txt @@ -1,15 +1,15 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/37714550-d7b2-4520-ba67-2d1b7e66155b/nodes' +curl -i -X GET 'http://localhost:3080/v2/projects/fa495296-b03d-4f63-9f34-fd64da6f9b7f/nodes' -GET /v2/projects/37714550-d7b2-4520-ba67-2d1b7e66155b/nodes HTTP/1.1 +GET /v2/projects/fa495296-b03d-4f63-9f34-fd64da6f9b7f/nodes HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 1406 +Content-Length: 1373 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes [ @@ -19,21 +19,21 @@ X-Route: /v2/projects/{project_id}/nodes "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "94310d8b-2cf8-4ddd-a222-0717834f5236", + "node_id": "a63c318d-3303-4c5f-ac44-8de0a96e17f0", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -49,7 +49,7 @@ X-Route: /v2/projects/{project_id}/nodes "short_name": "e0" } ], - "project_id": "37714550-d7b2-4520-ba67-2d1b7e66155b", + "project_id": "fa495296-b03d-4f63-9f34-fd64da6f9b7f", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt index fae7ab2b..2374d374 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt @@ -1,15 +1,15 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/77ecc83e-ab83-4bdd-b31b-f6ac003c04ac/nodes/ae397c34-3d28-442f-adbc-f0751ebdae03' +curl -i -X GET 'http://localhost:3080/v2/projects/feb53d7f-e16e-40ed-81ac-7dd4f215f290/nodes/5a81a403-0f25-4a2d-b0ae-333c22924b3a' -GET /v2/projects/77ecc83e-ab83-4bdd-b31b-f6ac003c04ac/nodes/ae397c34-3d28-442f-adbc-f0751ebdae03 HTTP/1.1 +GET /v2/projects/feb53d7f-e16e-40ed-81ac-7dd4f215f290/nodes/5a81a403-0f25-4a2d-b0ae-333c22924b3a HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 1214 +Content-Length: 1181 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id} { @@ -18,21 +18,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "ae397c34-3d28-442f-adbc-f0751ebdae03", + "node_id": "5a81a403-0f25-4a2d-b0ae-333c22924b3a", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "short_name": "e0" } ], - "project_id": "77ecc83e-ab83-4bdd-b31b-f6ac003c04ac", + "project_id": "feb53d7f-e16e-40ed-81ac-7dd4f215f290", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt index 5e8fe2ba..fd3caea9 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/9c07fc00-8724-4efa-a42f-05129b22a1e0/nodes/a155c0aa-b2c0-49c5-99c6-3d40d741c1ef/dynamips/auto_idlepc' +curl -i -X GET 'http://localhost:3080/v2/projects/18fd84fd-43d1-436e-b8da-74502e3662be/nodes/de535eb6-d81e-4f6b-9a58-14b6b0362253/dynamips/auto_idlepc' -GET /v2/projects/9c07fc00-8724-4efa-a42f-05129b22a1e0/nodes/a155c0aa-b2c0-49c5-99c6-3d40d741c1ef/dynamips/auto_idlepc HTTP/1.1 +GET /v2/projects/18fd84fd-43d1-436e-b8da-74502e3662be/nodes/de535eb6-d81e-4f6b-9a58-14b6b0362253/dynamips/auto_idlepc HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/auto_idlepc { diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt index a85e218d..78750611 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/41c473d9-97dc-43c8-944b-14467935d921/nodes/41a1b3ce-b087-4877-9a72-d9297c6aa635/dynamips/idlepc_proposals' +curl -i -X GET 'http://localhost:3080/v2/projects/e498cdf3-1e80-46be-893a-245ed3d1f1ff/nodes/d631ea6d-8c2e-4494-b8aa-906299319c65/dynamips/idlepc_proposals' -GET /v2/projects/41c473d9-97dc-43c8-944b-14467935d921/nodes/41a1b3ce-b087-4877-9a72-d9297c6aa635/dynamips/idlepc_proposals HTTP/1.1 +GET /v2/projects/e498cdf3-1e80-46be-893a-245ed3d1f1ff/nodes/d631ea6d-8c2e-4494-b8aa-906299319c65/dynamips/idlepc_proposals HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 38 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/idlepc_proposals [ diff --git a/docs/api/examples/controller_get_projectsprojectidsnapshots.txt b/docs/api/examples/controller_get_projectsprojectidsnapshots.txt index 9a2f6985..1281312c 100644 --- a/docs/api/examples/controller_get_projectsprojectidsnapshots.txt +++ b/docs/api/examples/controller_get_projectsprojectidsnapshots.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/c0e03ceb-f437-4661-ab07-06505b600540/snapshots' +curl -i -X GET 'http://localhost:3080/v2/projects/a2829f43-ee64-40c8-81ab-41cc68e69591/snapshots' -GET /v2/projects/c0e03ceb-f437-4661-ab07-06505b600540/snapshots HTTP/1.1 +GET /v2/projects/a2829f43-ee64-40c8-81ab-41cc68e69591/snapshots HTTP/1.1 @@ -8,15 +8,15 @@ HTTP/1.1 200 Connection: close Content-Length: 197 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:27 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:15 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/snapshots [ { - "created_at": 1534429407, + "created_at": 1542693675, "name": "test", - "project_id": "c0e03ceb-f437-4661-ab07-06505b600540", - "snapshot_id": "a7da0f6b-f266-48b3-bbef-09a004d9287d" + "project_id": "a2829f43-ee64-40c8-81ab-41cc68e69591", + "snapshot_id": "f82cdc97-5197-4e53-9a1b-6ba73b96b8a6" } ] diff --git a/docs/api/examples/controller_get_settings.txt b/docs/api/examples/controller_get_settings.txt deleted file mode 100644 index 639a8ad9..00000000 --- a/docs/api/examples/controller_get_settings.txt +++ /dev/null @@ -1,18 +0,0 @@ -curl -i -X GET 'http://localhost:3080/v2/settings' - -GET /v2/settings HTTP/1.1 - - - -HTTP/1.1 200 -Connection: close -Content-Length: 85 -Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:27 GMT -Server: Python/3.5 GNS3/2.2.0dev2 -X-Route: /v2/settings - -{ - "modification_uuid": "b8acf218-c6e4-4a4f-992f-b57b286897d9", - "test": true -} diff --git a/docs/api/examples/controller_get_symbols.txt b/docs/api/examples/controller_get_symbols.txt index d8526b1c..7e21789a 100644 --- a/docs/api/examples/controller_get_symbols.txt +++ b/docs/api/examples/controller_get_symbols.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 51384 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:33 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/symbols [ diff --git a/docs/api/examples/controller_get_version.txt b/docs/api/examples/controller_get_version.txt index 1d72ef57..c08429d5 100644 --- a/docs/api/examples/controller_get_version.txt +++ b/docs/api/examples/controller_get_version.txt @@ -8,11 +8,11 @@ HTTP/1.1 200 Connection: close Content-Length: 49 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:33 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/version { "local": true, - "version": "2.2.0dev2" + "version": "2.2.0dev4" } diff --git a/docs/api/examples/controller_post_computes.txt b/docs/api/examples/controller_post_computes.txt index 99ca0ec0..6580b436 100644 --- a/docs/api/examples/controller_post_computes.txt +++ b/docs/api/examples/controller_post_computes.txt @@ -13,10 +13,10 @@ POST /v2/computes HTTP/1.1 HTTP/1.1 201 Connection: close -Content-Length: 334 +Content-Length: 358 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:02 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes { @@ -28,6 +28,7 @@ X-Route: /v2/computes "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/examples/controller_post_computescomputeidautoidlepc.txt b/docs/api/examples/controller_post_computescomputeidautoidlepc.txt index 3fde9ff5..4cba6aba 100644 --- a/docs/api/examples/controller_post_computescomputeidautoidlepc.txt +++ b/docs/api/examples/controller_post_computescomputeidautoidlepc.txt @@ -12,8 +12,8 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:05 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id}/auto_idlepc { diff --git a/docs/api/examples/controller_post_computescomputeidemulatoraction.txt b/docs/api/examples/controller_post_computescomputeidemulatoraction.txt index 482fecc5..74d6c8ca 100644 --- a/docs/api/examples/controller_post_computescomputeidemulatoraction.txt +++ b/docs/api/examples/controller_post_computescomputeidemulatoraction.txt @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:05 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} [] diff --git a/docs/api/examples/controller_post_projects.txt b/docs/api/examples/controller_post_projects.txt index 993ccd26..ca817828 100644 --- a/docs/api/examples/controller_post_projects.txt +++ b/docs/api/examples/controller_post_projects.txt @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:10 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects { @@ -22,7 +22,7 @@ X-Route: /v2/projects "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpgu5uuxzz/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmplof255wk/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_post_projectsload.txt b/docs/api/examples/controller_post_projectsload.txt index 7f6ad61f..e2604241 100644 --- a/docs/api/examples/controller_post_projectsload.txt +++ b/docs/api/examples/controller_post_projectsload.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/load { @@ -21,8 +21,8 @@ X-Route: /v2/projects/load "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmp_s4wl6cn/projects/78936873-4f90-45b2-abad-b8dfba0fac04", - "project_id": "78936873-4f90-45b2-abad-b8dfba0fac04", + "path": "/tmp/tmp2j3yup5d/projects/e1f54609-ce25-4d44-83cb-da0ff1518306", + "project_id": "e1f54609-ce25-4d44-83cb-da0ff1518306", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidclose.txt b/docs/api/examples/controller_post_projectsprojectidclose.txt index 60fc335c..2f9dac39 100644 --- a/docs/api/examples/controller_post_projectsprojectidclose.txt +++ b/docs/api/examples/controller_post_projectsprojectidclose.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/52b2b952-8079-4a92-87a1-ab120e6cbc8c/close' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94/close' -d '{}' -POST /v2/projects/52b2b952-8079-4a92-87a1-ab120e6cbc8c/close HTTP/1.1 +POST /v2/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94/close HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/close { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/close "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpk0ulrlqs/projects/52b2b952-8079-4a92-87a1-ab120e6cbc8c", - "project_id": "52b2b952-8079-4a92-87a1-ab120e6cbc8c", + "path": "/tmp/tmpnfwn8kqc/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94", + "project_id": "0daa310c-e4ef-433a-bb05-4f6be4b32c94", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectiddrawings.txt b/docs/api/examples/controller_post_projectsprojectiddrawings.txt index 949302a5..5c5fb232 100644 --- a/docs/api/examples/controller_post_projectsprojectiddrawings.txt +++ b/docs/api/examples/controller_post_projectsprojectiddrawings.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/55bed432-073c-4270-a80f-a4381f893e37/drawings' -d '{"svg": "", "x": 10, "y": 20, "z": 0}' +curl -i -X POST 'http://localhost:3080/v2/projects/40424dad-6d45-4d3c-8830-a0292297be92/drawings' -d '{"svg": "", "x": 10, "y": 20, "z": 0}' -POST /v2/projects/55bed432-073c-4270-a80f-a4381f893e37/drawings HTTP/1.1 +POST /v2/projects/40424dad-6d45-4d3c-8830-a0292297be92/drawings HTTP/1.1 { "svg": "", "x": 10, @@ -13,13 +13,13 @@ HTTP/1.1 201 Connection: close Content-Length: 323 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/drawings { - "drawing_id": "e1cab4d2-fa0c-4d72-9b65-6b25c8b97168", - "project_id": "55bed432-073c-4270-a80f-a4381f893e37", + "drawing_id": "8c069932-9c5b-4993-a1cf-0b13fe1b3482", + "project_id": "40424dad-6d45-4d3c-8830-a0292297be92", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_post_projectsprojectidduplicate.txt b/docs/api/examples/controller_post_projectsprojectidduplicate.txt index 31082e26..3d0dbe6e 100644 --- a/docs/api/examples/controller_post_projectsprojectidduplicate.txt +++ b/docs/api/examples/controller_post_projectsprojectidduplicate.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/fe649fc3-9b6a-48ff-8e1f-89f9294c935a/duplicate' -d '{"name": "hello"}' +curl -i -X POST 'http://localhost:3080/v2/projects/2d734cf3-193f-4513-8e65-2800f8020262/duplicate' -d '{"name": "hello"}' -POST /v2/projects/fe649fc3-9b6a-48ff-8e1f-89f9294c935a/duplicate HTTP/1.1 +POST /v2/projects/2d734cf3-193f-4513-8e65-2800f8020262/duplicate HTTP/1.1 { "name": "hello" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 532 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:26 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:15 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/duplicate { @@ -21,8 +21,8 @@ X-Route: /v2/projects/{project_id}/duplicate "filename": "hello.gns3", "grid_size": 0, "name": "hello", - "path": "/tmp/tmpep4binxl/projects/10ac2d9f-448d-443f-877c-dd39614dbffd", - "project_id": "10ac2d9f-448d-443f-877c-dd39614dbffd", + "path": "/tmp/tmp02de5889/projects/81767cfd-5dfc-48b7-8469-a7cdc6177d49", + "project_id": "81767cfd-5dfc-48b7-8469-a7cdc6177d49", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidlinks.txt b/docs/api/examples/controller_post_projectsprojectidlinks.txt index 5bcd3115..11ff3403 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinks.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinks.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/a704e379-5b0d-4993-81ec-3bff5ebae52f/links' -d '{"nodes": [{"adapter_number": 0, "label": {"text": "Text", "x": 42, "y": 0}, "node_id": "5b8caeff-1bbb-4532-971e-2ed1563c69be", "port_number": 3}, {"adapter_number": 0, "node_id": "5b8caeff-1bbb-4532-971e-2ed1563c69be", "port_number": 4}]}' +curl -i -X POST 'http://localhost:3080/v2/projects/bd6497a8-181a-4508-91d9-b11a41815875/links' -d '{"nodes": [{"adapter_number": 0, "label": {"text": "Text", "x": 42, "y": 0}, "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 3}, {"adapter_number": 0, "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 4}]}' -POST /v2/projects/a704e379-5b0d-4993-81ec-3bff5ebae52f/links HTTP/1.1 +POST /v2/projects/bd6497a8-181a-4508-91d9-b11a41815875/links HTTP/1.1 { "nodes": [ { @@ -10,12 +10,12 @@ POST /v2/projects/a704e379-5b0d-4993-81ec-3bff5ebae52f/links HTTP/1.1 "x": 42, "y": 0 }, - "node_id": "5b8caeff-1bbb-4532-971e-2ed1563c69be", + "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 3 }, { "adapter_number": 0, - "node_id": "5b8caeff-1bbb-4532-971e-2ed1563c69be", + "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 4 } ] @@ -26,8 +26,8 @@ HTTP/1.1 409 Connection: close Content-Length: 64 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links { diff --git a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt index d7e7c11e..b532ee9c 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/8708a1a4-7a14-470a-b618-2b964059b0cc/links/70d4893a-534d-4e75-9668-8206ecb811f3/start_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d/links/20448663-e1bf-499f-98aa-8f0e1943b2a9/start_capture' -d '{}' -POST /v2/projects/8708a1a4-7a14-470a-b618-2b964059b0cc/links/70d4893a-534d-4e75-9668-8206ecb811f3/start_capture HTTP/1.1 +POST /v2/projects/f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d/links/20448663-e1bf-499f-98aa-8f0e1943b2a9/start_capture HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 288 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id}/start_capture { @@ -17,9 +17,9 @@ X-Route: /v2/projects/{project_id}/links/{link_id}/start_capture "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "70d4893a-534d-4e75-9668-8206ecb811f3", + "link_id": "20448663-e1bf-499f-98aa-8f0e1943b2a9", "link_type": "ethernet", "nodes": [], - "project_id": "8708a1a4-7a14-470a-b618-2b964059b0cc", + "project_id": "f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d", "suspend": false } diff --git a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt index 9d225876..9d3b3f00 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/48ce78cb-6f2b-4d63-9c01-614082a3099d/links/9404a03e-98c2-490f-b69a-22bd10cd5406/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/0393c2a7-d6f3-42cd-a50d-4989c93eb5a3/links/834dd912-54fa-46fa-a73b-5595fb68f3de/stop_capture' -d '{}' -POST /v2/projects/48ce78cb-6f2b-4d63-9c01-614082a3099d/links/9404a03e-98c2-490f-b69a-22bd10cd5406/stop_capture HTTP/1.1 +POST /v2/projects/0393c2a7-d6f3-42cd-a50d-4989c93eb5a3/links/834dd912-54fa-46fa-a73b-5595fb68f3de/stop_capture HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 288 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id}/stop_capture { @@ -17,9 +17,9 @@ X-Route: /v2/projects/{project_id}/links/{link_id}/stop_capture "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "9404a03e-98c2-490f-b69a-22bd10cd5406", + "link_id": "834dd912-54fa-46fa-a73b-5595fb68f3de", "link_type": "ethernet", "nodes": [], - "project_id": "48ce78cb-6f2b-4d63-9c01-614082a3099d", + "project_id": "0393c2a7-d6f3-42cd-a50d-4989c93eb5a3", "suspend": false } diff --git a/docs/api/examples/controller_post_projectsprojectidnodes.txt b/docs/api/examples/controller_post_projectsprojectidnodes.txt index b8027bd7..d6e47f80 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodes.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodes.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/c0d19569-119e-4c7a-ad7d-d51eb91c2825/nodes' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' +curl -i -X POST 'http://localhost:3080/v2/projects/29f32450-5e3a-4dac-84ff-d1e6da6aef2d/nodes' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' -POST /v2/projects/c0d19569-119e-4c7a-ad7d-d51eb91c2825/nodes HTTP/1.1 +POST /v2/projects/29f32450-5e3a-4dac-84ff-d1e6da6aef2d/nodes HTTP/1.1 { "compute_id": "example.com", "name": "test", @@ -13,10 +13,10 @@ POST /v2/projects/c0d19569-119e-4c7a-ad7d-d51eb91c2825/nodes HTTP/1.1 HTTP/1.1 201 Connection: close -Content-Length: 1214 +Content-Length: 1181 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes { @@ -25,21 +25,21 @@ X-Route: /v2/projects/{project_id}/nodes "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "52503539-e057-4f90-84d9-ff392bdb43ec", + "node_id": "e9621527-1a07-44d9-8695-781fc5c49341", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -55,7 +55,7 @@ X-Route: /v2/projects/{project_id}/nodes "short_name": "e0" } ], - "project_id": "c0d19569-119e-4c7a-ad7d-d51eb91c2825", + "project_id": "29f32450-5e3a-4dac-84ff-d1e6da6aef2d", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt index fcec115b..fe9f3328 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/67fa68f1-a9a2-4b3e-80bb-d16b5c4be3db/nodes/d1efeae0-0cc6-49b9-8ea1-c0bbb5d07c00/duplicate' -d '{"x": 10, "y": 5, "z": 0}' +curl -i -X POST 'http://localhost:3080/v2/projects/592d493e-cf38-4001-b67d-6887a9607662/nodes/0e78091b-11c1-4643-94e3-9749c03b6178/duplicate' -d '{"x": 10, "y": 5, "z": 0}' -POST /v2/projects/67fa68f1-a9a2-4b3e-80bb-d16b5c4be3db/nodes/d1efeae0-0cc6-49b9-8ea1-c0bbb5d07c00/duplicate HTTP/1.1 +POST /v2/projects/592d493e-cf38-4001-b67d-6887a9607662/nodes/0e78091b-11c1-4643-94e3-9749c03b6178/duplicate HTTP/1.1 { "x": 10, "y": 5, @@ -10,10 +10,10 @@ POST /v2/projects/67fa68f1-a9a2-4b3e-80bb-d16b5c4be3db/nodes/d1efeae0-0cc6-49b9- HTTP/1.1 201 Connection: close -Content-Length: 1174 +Content-Length: 1141 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate { @@ -22,21 +22,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test1", "x": null, "y": -40 }, "name": "test1", "node_directory": null, - "node_id": "2e525f2d-7a23-4d51-8438-8c7cb7d05e8f", + "node_id": "58ea897a-be75-412a-9b51-0c8f3571416d", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -52,7 +52,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate "short_name": "e0" } ], - "project_id": "67fa68f1-a9a2-4b3e-80bb-d16b5c4be3db", + "project_id": "592d493e-cf38-4001-b67d-6887a9607662", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt index cd56996a..885018ec 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt @@ -1,15 +1,15 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/31e2ce15-61f4-49c5-a185-86bd9e65ffb2/nodes/acdd96b0-d025-4bfd-b072-9bc1ebda6e1d/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab/nodes/8ce88cea-94a4-4d80-ad9b-0d9516f67a1f/reload' -d '{}' -POST /v2/projects/31e2ce15-61f4-49c5-a185-86bd9e65ffb2/nodes/acdd96b0-d025-4bfd-b072-9bc1ebda6e1d/reload HTTP/1.1 +POST /v2/projects/d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab/nodes/8ce88cea-94a4-4d80-ad9b-0d9516f67a1f/reload HTTP/1.1 {} HTTP/1.1 200 Connection: close -Content-Length: 1171 +Content-Length: 1138 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload { @@ -18,21 +18,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "acdd96b0-d025-4bfd-b072-9bc1ebda6e1d", + "node_id": "8ce88cea-94a4-4d80-ad9b-0d9516f67a1f", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload "short_name": "e0" } ], - "project_id": "31e2ce15-61f4-49c5-a185-86bd9e65ffb2", + "project_id": "d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt index 72c282c4..04253e22 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt @@ -1,15 +1,15 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/699e9c31-db16-4f8c-9bca-dfe9188e9da8/nodes/50fe7314-76f7-4a11-8bed-7337004f18e6/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/47485f65-b765-423f-a85f-194cb3763c2b/nodes/2d893cfd-a172-4d97-b6d9-fb02a12ba7b8/start' -d '{}' -POST /v2/projects/699e9c31-db16-4f8c-9bca-dfe9188e9da8/nodes/50fe7314-76f7-4a11-8bed-7337004f18e6/start HTTP/1.1 +POST /v2/projects/47485f65-b765-423f-a85f-194cb3763c2b/nodes/2d893cfd-a172-4d97-b6d9-fb02a12ba7b8/start HTTP/1.1 {} HTTP/1.1 200 Connection: close -Content-Length: 1171 +Content-Length: 1138 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/start { @@ -18,21 +18,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/start "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "50fe7314-76f7-4a11-8bed-7337004f18e6", + "node_id": "2d893cfd-a172-4d97-b6d9-fb02a12ba7b8", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/start "short_name": "e0" } ], - "project_id": "699e9c31-db16-4f8c-9bca-dfe9188e9da8", + "project_id": "47485f65-b765-423f-a85f-194cb3763c2b", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt index b2c9bc8c..338bd293 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt @@ -1,15 +1,15 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/c2306549-a93d-4d09-a885-df2f718e401a/nodes/ef1412d8-8ac1-458f-8ca7-36b67e12d850/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/458ca158-c86f-47ed-a773-afcbc878b6be/nodes/a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b/stop' -d '{}' -POST /v2/projects/c2306549-a93d-4d09-a885-df2f718e401a/nodes/ef1412d8-8ac1-458f-8ca7-36b67e12d850/stop HTTP/1.1 +POST /v2/projects/458ca158-c86f-47ed-a773-afcbc878b6be/nodes/a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b/stop HTTP/1.1 {} HTTP/1.1 200 Connection: close -Content-Length: 1171 +Content-Length: 1138 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop { @@ -18,21 +18,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "ef1412d8-8ac1-458f-8ca7-36b67e12d850", + "node_id": "a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop "short_name": "e0" } ], - "project_id": "c2306549-a93d-4d09-a885-df2f718e401a", + "project_id": "458ca158-c86f-47ed-a773-afcbc878b6be", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt index 153bce96..012a4011 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt @@ -1,15 +1,15 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/58b6df40-b0c1-4c1e-97f4-8437b7748482/nodes/c1abbeab-bd3a-419b-8b43-189b410e95cc/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/e885dceb-79f3-4e68-81f3-cd990504796e/nodes/14b1cd8a-5ff5-484c-b509-cd43642fed5b/suspend' -d '{}' -POST /v2/projects/58b6df40-b0c1-4c1e-97f4-8437b7748482/nodes/c1abbeab-bd3a-419b-8b43-189b410e95cc/suspend HTTP/1.1 +POST /v2/projects/e885dceb-79f3-4e68-81f3-cd990504796e/nodes/14b1cd8a-5ff5-484c-b509-cd43642fed5b/suspend HTTP/1.1 {} HTTP/1.1 200 Connection: close -Content-Length: 1171 +Content-Length: 1138 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:23 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:09 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend { @@ -18,21 +18,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "c1abbeab-bd3a-419b-8b43-189b410e95cc", + "node_id": "14b1cd8a-5ff5-484c-b509-cd43642fed5b", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend "short_name": "e0" } ], - "project_id": "58b6df40-b0c1-4c1e-97f4-8437b7748482", + "project_id": "e885dceb-79f3-4e68-81f3-cd990504796e", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesreload.txt b/docs/api/examples/controller_post_projectsprojectidnodesreload.txt index edc75b46..6050d610 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesreload.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/1abf2dbc-4de9-4ca6-b632-7126108a8c74/nodes/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/0b2edeea-997e-48ff-aaa6-fe006192371c/nodes/reload' -d '{}' -POST /v2/projects/1abf2dbc-4de9-4ca6-b632-7126108a8c74/nodes/reload HTTP/1.1 +POST /v2/projects/0b2edeea-997e-48ff-aaa6-fe006192371c/nodes/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/reload diff --git a/docs/api/examples/controller_post_projectsprojectidnodesstart.txt b/docs/api/examples/controller_post_projectsprojectidnodesstart.txt index 64f8ff5a..cea286d9 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesstart.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/01eb833b-133d-4c30-b5cd-9b6a05375e49/nodes/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/288a0429-ac2b-435f-97c0-cf5e3220e1bd/nodes/start' -d '{}' -POST /v2/projects/01eb833b-133d-4c30-b5cd-9b6a05375e49/nodes/start HTTP/1.1 +POST /v2/projects/288a0429-ac2b-435f-97c0-cf5e3220e1bd/nodes/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/start diff --git a/docs/api/examples/controller_post_projectsprojectidnodesstop.txt b/docs/api/examples/controller_post_projectsprojectidnodesstop.txt index 76fa2c97..277ef9da 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesstop.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/9a48e8b3-8579-4a92-8f5e-1714b80f161e/nodes/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/222c37b9-df06-417a-a4c3-9a7359e1c09f/nodes/stop' -d '{}' -POST /v2/projects/9a48e8b3-8579-4a92-8f5e-1714b80f161e/nodes/stop HTTP/1.1 +POST /v2/projects/222c37b9-df06-417a-a4c3-9a7359e1c09f/nodes/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/stop diff --git a/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt b/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt index f579840e..ce89e44f 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/91eebfce-b531-46f1-b2d2-074474ebe346/nodes/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/2f4cb6f7-c7f8-485e-926c-0b4804fe0cab/nodes/suspend' -d '{}' -POST /v2/projects/91eebfce-b531-46f1-b2d2-074474ebe346/nodes/suspend HTTP/1.1 +POST /v2/projects/2f4cb6f7-c7f8-485e-926c-0b4804fe0cab/nodes/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/suspend diff --git a/docs/api/examples/controller_post_projectsprojectidopen.txt b/docs/api/examples/controller_post_projectsprojectidopen.txt index 1c88372f..e649ac72 100644 --- a/docs/api/examples/controller_post_projectsprojectidopen.txt +++ b/docs/api/examples/controller_post_projectsprojectidopen.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/5897b00b-b987-460d-824f-cf1a9b004573/open' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/3b67f766-0094-4686-8890-8dcc6c9abf54/open' -d '{}' -POST /v2/projects/5897b00b-b987-460d-824f-cf1a9b004573/open HTTP/1.1 +POST /v2/projects/3b67f766-0094-4686-8890-8dcc6c9abf54/open HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:11 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/open { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/open "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmp95l4e5d9/projects/5897b00b-b987-460d-824f-cf1a9b004573", - "project_id": "5897b00b-b987-460d-824f-cf1a9b004573", + "path": "/tmp/tmpnkx3ochx/projects/3b67f766-0094-4686-8890-8dcc6c9abf54", + "project_id": "3b67f766-0094-4686-8890-8dcc6c9abf54", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidsnapshots.txt b/docs/api/examples/controller_post_projectsprojectidsnapshots.txt index e12405c6..03ba74ad 100644 --- a/docs/api/examples/controller_post_projectsprojectidsnapshots.txt +++ b/docs/api/examples/controller_post_projectsprojectidsnapshots.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/8b5dfbc7-79eb-46f5-b2d5-387be884e502/snapshots' -d '{"name": "snap1"}' +curl -i -X POST 'http://localhost:3080/v2/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52/snapshots' -d '{"name": "snap1"}' -POST /v2/projects/8b5dfbc7-79eb-46f5-b2d5-387be884e502/snapshots HTTP/1.1 +POST /v2/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52/snapshots HTTP/1.1 { "name": "snap1" } @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 170 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:32 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/snapshots { - "created_at": 1534429412, + "created_at": 1542693683, "name": "snap1", - "project_id": "8b5dfbc7-79eb-46f5-b2d5-387be884e502", - "snapshot_id": "a1670df1-d080-407f-ad08-abf49caa119d" + "project_id": "b8b24edf-6743-4bbd-b071-6fcdae3fcb52", + "snapshot_id": "2c6fa4f6-eda6-43ed-a8d6-cee157627759" } diff --git a/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt b/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt index f228ae9b..a8bcfc37 100644 --- a/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt +++ b/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/830f8f79-cabe-4adc-8c27-46a33e2d4cd6/snapshots/7a57596a-b511-418d-a6ec-2dddf16bfda0/restore' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558/snapshots/128894a2-3948-440a-a3b4-e9f6a943599d/restore' -d '{}' -POST /v2/projects/830f8f79-cabe-4adc-8c27-46a33e2d4cd6/snapshots/7a57596a-b511-418d-a6ec-2dddf16bfda0/restore HTTP/1.1 +POST /v2/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558/snapshots/128894a2-3948-440a-a3b4-e9f6a943599d/restore HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:30 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id}/restore { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id}/restore "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpwu7odplw/projects/830f8f79-cabe-4adc-8c27-46a33e2d4cd6", - "project_id": "830f8f79-cabe-4adc-8c27-46a33e2d4cd6", + "path": "/tmp/tmpm6aoic2c/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558", + "project_id": "013b03b4-61a7-4d6f-9c89-720c7c2be558", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_settings.txt b/docs/api/examples/controller_post_settings.txt deleted file mode 100644 index cd4f872e..00000000 --- a/docs/api/examples/controller_post_settings.txt +++ /dev/null @@ -1,20 +0,0 @@ -curl -i -X POST 'http://localhost:3080/v2/settings' -d '{"test": true}' - -POST /v2/settings HTTP/1.1 -{ - "test": true -} - - -HTTP/1.1 201 -Connection: close -Content-Length: 85 -Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:27 GMT -Server: Python/3.5 GNS3/2.2.0dev2 -X-Route: /v2/settings - -{ - "modification_uuid": "b8acf218-c6e4-4a4f-992f-b57b286897d9", - "test": true -} diff --git a/docs/api/examples/controller_post_shutdown.txt b/docs/api/examples/controller_post_shutdown.txt index 65a9fe66..ed19338b 100644 --- a/docs/api/examples/controller_post_shutdown.txt +++ b/docs/api/examples/controller_post_shutdown.txt @@ -8,7 +8,7 @@ HTTP/1.1 201 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Thu, 16 Aug 2018 14:23:26 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:15 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/shutdown diff --git a/docs/api/examples/controller_post_version.txt b/docs/api/examples/controller_post_version.txt index a4e8731b..199a0e5a 100644 --- a/docs/api/examples/controller_post_version.txt +++ b/docs/api/examples/controller_post_version.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/version' -d '{"version": "2.2.0dev2"}' +curl -i -X POST 'http://localhost:3080/v2/version' -d '{"version": "2.2.0dev4"}' POST /v2/version HTTP/1.1 { - "version": "2.2.0dev2" + "version": "2.2.0dev4" } @@ -10,10 +10,10 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:33 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:23 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/version { - "version": "2.2.0dev2" + "version": "2.2.0dev4" } diff --git a/docs/api/examples/controller_put_computescomputeid.txt b/docs/api/examples/controller_put_computescomputeid.txt index 34fcc0e0..f4bebafd 100644 --- a/docs/api/examples/controller_put_computescomputeid.txt +++ b/docs/api/examples/controller_put_computescomputeid.txt @@ -13,10 +13,10 @@ PUT /v2/computes/my_compute_id HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 335 +Content-Length: 359 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:20 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:03 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/computes/{compute_id} { @@ -28,6 +28,7 @@ X-Route: /v2/computes/{compute_id} "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/examples/controller_put_gns3vm.txt b/docs/api/examples/controller_put_gns3vm.txt index cd0f423b..753205e5 100644 --- a/docs/api/examples/controller_put_gns3vm.txt +++ b/docs/api/examples/controller_put_gns3vm.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 27 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/gns3vm { diff --git a/docs/api/examples/controller_put_projectsprojectid.txt b/docs/api/examples/controller_put_projectsprojectid.txt index 83f4bcee..cd72b5e1 100644 --- a/docs/api/examples/controller_put_projectsprojectid.txt +++ b/docs/api/examples/controller_put_projectsprojectid.txt @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 662 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:24 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:10 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id} { @@ -21,7 +21,7 @@ X-Route: /v2/projects/{project_id} "filename": "test.gns3", "grid_size": 0, "name": "test2", - "path": "/tmp/tmpyonz08qd/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmp7cldkfwl/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt index 2f1ae1a7..bb1eb0b5 100644 --- a/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/9b6bc37a-bf2c-488e-98cf-664fbc065f11/drawings/b85daa17-415e-4418-ad9d-a4564fc2f803' -d '{"x": 42}' +curl -i -X PUT 'http://localhost:3080/v2/projects/0686be16-2d32-4f77-a9c2-0d7c8062d023/drawings/ec49d9aa-6051-483f-bc51-034117cd7b54' -d '{"x": 42}' -PUT /v2/projects/9b6bc37a-bf2c-488e-98cf-664fbc065f11/drawings/b85daa17-415e-4418-ad9d-a4564fc2f803 HTTP/1.1 +PUT /v2/projects/0686be16-2d32-4f77-a9c2-0d7c8062d023/drawings/ec49d9aa-6051-483f-bc51-034117cd7b54 HTTP/1.1 { "x": 42 } @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 323 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:21 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:06 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} { - "drawing_id": "b85daa17-415e-4418-ad9d-a4564fc2f803", - "project_id": "9b6bc37a-bf2c-488e-98cf-664fbc065f11", + "drawing_id": "ec49d9aa-6051-483f-bc51-034117cd7b54", + "project_id": "0686be16-2d32-4f77-a9c2-0d7c8062d023", "rotation": 0, "svg": "", "x": 42, diff --git a/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt index 67d7a2d3..fb838e23 100644 --- a/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/c12478fd-66df-4eac-ace8-fcd9aeb15028/links/873cfd7c-e61a-41c8-ac60-1068f67d2832' -d '{"filters": {"frequency_drop": [50], "latency": [10]}, "nodes": [{"adapter_number": 0, "label": {"text": "Hello", "x": 64, "y": 0}, "node_id": "cbd224a2-fc0e-4a41-9dae-6ddd1b8ce297", "port_number": 3}, {"adapter_number": 2, "node_id": "16dcbe64-5544-443b-bfed-798e6b89bd7d", "port_number": 4}]}' +curl -i -X PUT 'http://localhost:3080/v2/projects/b703f752-a954-4794-958a-8eac176ac316/links/f3893bd7-489a-4d53-a070-fc5bc566ff9c' -d '{"filters": {"frequency_drop": [50], "latency": [10]}, "nodes": [{"adapter_number": 0, "label": {"text": "Hello", "x": 64, "y": 0}, "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", "port_number": 3}, {"adapter_number": 2, "node_id": "763411ab-6843-4908-a667-de022c261e1f", "port_number": 4}]}' -PUT /v2/projects/c12478fd-66df-4eac-ace8-fcd9aeb15028/links/873cfd7c-e61a-41c8-ac60-1068f67d2832 HTTP/1.1 +PUT /v2/projects/b703f752-a954-4794-958a-8eac176ac316/links/f3893bd7-489a-4d53-a070-fc5bc566ff9c HTTP/1.1 { "filters": { "frequency_drop": [ @@ -18,12 +18,12 @@ PUT /v2/projects/c12478fd-66df-4eac-ace8-fcd9aeb15028/links/873cfd7c-e61a-41c8-a "x": 64, "y": 0 }, - "node_id": "cbd224a2-fc0e-4a41-9dae-6ddd1b8ce297", + "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", "port_number": 3 }, { "adapter_number": 2, - "node_id": "16dcbe64-5544-443b-bfed-798e6b89bd7d", + "node_id": "763411ab-6843-4908-a667-de022c261e1f", "port_number": 4 } ] @@ -34,8 +34,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1022 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:07 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/links/{link_id} { @@ -50,7 +50,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} 10 ] }, - "link_id": "873cfd7c-e61a-41c8-ac60-1068f67d2832", + "link_id": "f3893bd7-489a-4d53-a070-fc5bc566ff9c", "link_type": "ethernet", "nodes": [ { @@ -60,7 +60,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": 64, "y": 0 }, - "node_id": "cbd224a2-fc0e-4a41-9dae-6ddd1b8ce297", + "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", "port_number": 3 }, { @@ -72,10 +72,10 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": -10, "y": -10 }, - "node_id": "16dcbe64-5544-443b-bfed-798e6b89bd7d", + "node_id": "763411ab-6843-4908-a667-de022c261e1f", "port_number": 4 } ], - "project_id": "c12478fd-66df-4eac-ace8-fcd9aeb15028", + "project_id": "b703f752-a954-4794-958a-8eac176ac316", "suspend": false } diff --git a/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt index 5bcfae9f..e1b00c7b 100644 --- a/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/16891deb-e0f0-4d26-a78e-510cda7a405e/nodes/7506ebd8-933f-485c-8d12-ba414d5dce50' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' +curl -i -X PUT 'http://localhost:3080/v2/projects/f1f42bfb-0d7c-4580-bb5d-4a074d4564ab/nodes/9f025caf-ae0f-49b0-a1b0-9cb5ec190eab' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' -PUT /v2/projects/16891deb-e0f0-4d26-a78e-510cda7a405e/nodes/7506ebd8-933f-485c-8d12-ba414d5dce50 HTTP/1.1 +PUT /v2/projects/f1f42bfb-0d7c-4580-bb5d-4a074d4564ab/nodes/9f025caf-ae0f-49b0-a1b0-9cb5ec190eab HTTP/1.1 { "compute_id": "example.com", "name": "test", @@ -13,10 +13,10 @@ PUT /v2/projects/16891deb-e0f0-4d26-a78e-510cda7a405e/nodes/7506ebd8-933f-485c-8 HTTP/1.1 200 Connection: close -Content-Length: 1171 +Content-Length: 1138 Content-Type: application/json -Date: Thu, 16 Aug 2018 14:23:22 GMT -Server: Python/3.5 GNS3/2.2.0dev2 +Date: Tue, 20 Nov 2018 06:01:08 GMT +Server: Python/3.6 GNS3/2.2.0dev4 X-Route: /v2/projects/{project_id}/nodes/{node_id} { @@ -25,21 +25,21 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, "height": 59, "label": { "rotation": 0, - "style": "font-size: 10;font-familly: Verdana", + "style": null, "text": "test", "x": null, "y": -40 }, "name": "test", "node_directory": null, - "node_id": "7506ebd8-933f-485c-8d12-ba414d5dce50", + "node_id": "9f025caf-ae0f-49b0-a1b0-9cb5ec190eab", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -55,7 +55,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "short_name": "e0" } ], - "project_id": "16891deb-e0f0-4d26-a78e-510cda7a405e", + "project_id": "f1f42bfb-0d7c-4580-bb5d-4a074d4564ab", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/notifications/appliance.created.json b/docs/api/notifications/appliance.created.json new file mode 100644 index 00000000..0bb9da49 --- /dev/null +++ b/docs/api/notifications/appliance.created.json @@ -0,0 +1,44 @@ +{ + "appliance_id": "a5ee20d1-1217-4c2f-93d8-eefc1fba7a92", + "appliance_type": "ethernet_hub", + "builtin": false, + "category": "switch", + "compute_id": "local", + "default_name_format": "Hub{0}", + "name": "Ethernet hub appliance", + "ports_mapping": [ + { + "name": "Ethernet0", + "port_number": 0 + }, + { + "name": "Ethernet1", + "port_number": 1 + }, + { + "name": "Ethernet2", + "port_number": 2 + }, + { + "name": "Ethernet3", + "port_number": 3 + }, + { + "name": "Ethernet4", + "port_number": 4 + }, + { + "name": "Ethernet5", + "port_number": 5 + }, + { + "name": "Ethernet6", + "port_number": 6 + }, + { + "name": "Ethernet7", + "port_number": 7 + } + ], + "symbol": ":/symbols/hub.svg" +} \ No newline at end of file diff --git a/docs/api/notifications/appliance.deleted.json b/docs/api/notifications/appliance.deleted.json new file mode 100644 index 00000000..b4bcd158 --- /dev/null +++ b/docs/api/notifications/appliance.deleted.json @@ -0,0 +1,13 @@ +{ + "appliance_id": "259b41b8-d70a-4882-8ba3-017ee11ecd99", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": false, + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "symbol": ":/symbols/vpcs_guest.svg" +} \ No newline at end of file diff --git a/docs/api/notifications/appliance.updated.json b/docs/api/notifications/appliance.updated.json new file mode 100644 index 00000000..65269b3f --- /dev/null +++ b/docs/api/notifications/appliance.updated.json @@ -0,0 +1,13 @@ +{ + "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": false, + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST_RENAMED", + "symbol": ":/symbols/vpcs_guest.svg" +} \ No newline at end of file diff --git a/docs/api/notifications/compute.created.json b/docs/api/notifications/compute.created.json index 48759ae3..9eca2c8e 100644 --- a/docs/api/notifications/compute.created.json +++ b/docs/api/notifications/compute.created.json @@ -7,6 +7,7 @@ "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/notifications/compute.deleted.json b/docs/api/notifications/compute.deleted.json index 2c489ad4..9eee3296 100644 --- a/docs/api/notifications/compute.deleted.json +++ b/docs/api/notifications/compute.deleted.json @@ -7,6 +7,7 @@ "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/notifications/compute.updated.json b/docs/api/notifications/compute.updated.json index 75d786f7..8d898760 100644 --- a/docs/api/notifications/compute.updated.json +++ b/docs/api/notifications/compute.updated.json @@ -7,6 +7,7 @@ "connected": false, "cpu_usage_percent": null, "host": "localhost", + "last_error": null, "memory_usage_percent": null, "name": "http://julien@localhost:84", "port": 84, diff --git a/docs/api/notifications/drawing.created.json b/docs/api/notifications/drawing.created.json index f571dee6..0e365430 100644 --- a/docs/api/notifications/drawing.created.json +++ b/docs/api/notifications/drawing.created.json @@ -1,6 +1,6 @@ { - "drawing_id": "7fa89480-cde4-4c94-ad52-927c47594540", - "project_id": "48d90a34-d353-42c2-85be-6e2a10f42be6", + "drawing_id": "06bde5d8-99a7-4ebf-a1e0-60e0602cdeed", + "project_id": "e4a1f1ad-189c-4445-8945-9cc9abaded88", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/notifications/drawing.deleted.json b/docs/api/notifications/drawing.deleted.json index e95b99a9..cad60fab 100644 --- a/docs/api/notifications/drawing.deleted.json +++ b/docs/api/notifications/drawing.deleted.json @@ -1,6 +1,6 @@ { - "drawing_id": "53cd97b3-da8e-4eae-b985-e592abcae6b7", - "project_id": "4fcc569a-a6b1-4f27-9acd-a6082d7082e4", + "drawing_id": "ed1a39d3-0452-4589-aa6e-92b38f0865c6", + "project_id": "3993dfb6-2aa7-4511-8a40-51938283126a", "rotation": 0, "svg": "", "x": 0, diff --git a/docs/api/notifications/drawing.updated.json b/docs/api/notifications/drawing.updated.json index 87ba3d59..8268ac39 100644 --- a/docs/api/notifications/drawing.updated.json +++ b/docs/api/notifications/drawing.updated.json @@ -1,6 +1,6 @@ { - "drawing_id": "b85daa17-415e-4418-ad9d-a4564fc2f803", - "project_id": "9b6bc37a-bf2c-488e-98cf-664fbc065f11", + "drawing_id": "ec49d9aa-6051-483f-bc51-034117cd7b54", + "project_id": "0686be16-2d32-4f77-a9c2-0d7c8062d023", "rotation": 0, "x": 42, "y": 20, diff --git a/docs/api/notifications/link.created.json b/docs/api/notifications/link.created.json index ba00598a..c7159a92 100644 --- a/docs/api/notifications/link.created.json +++ b/docs/api/notifications/link.created.json @@ -10,7 +10,7 @@ 10 ] }, - "link_id": "ac0d4a76-5120-4f5a-bfea-33fd674d8416", + "link_id": "43f9af37-d478-4727-8aef-c761aa24e680", "link_type": "ethernet", "nodes": [ { @@ -22,7 +22,7 @@ "x": -10, "y": -10 }, - "node_id": "d1753166-6ea0-4f4e-878c-4bf1f754d87c", + "node_id": "35c89170-3bd9-44db-8287-95a653af80e4", "port_number": 3 }, { @@ -34,10 +34,10 @@ "x": -10, "y": -10 }, - "node_id": "5925fab7-04e2-4872-8100-c1bc4f285bb3", + "node_id": "655110f6-65e2-4d19-9962-182264b6d653", "port_number": 4 } ], - "project_id": "849c8478-639a-493e-9528-6f4b6b496dff", + "project_id": "ea40035b-2c6b-4e64-ad82-fa07698c3840", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/link.deleted.json b/docs/api/notifications/link.deleted.json index 2deaaec8..5afd36ca 100644 --- a/docs/api/notifications/link.deleted.json +++ b/docs/api/notifications/link.deleted.json @@ -3,9 +3,9 @@ "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "8cdcab06-40e7-41a0-b4b4-4d17b8b1ac7f", + "link_id": "9797461f-7f75-4515-b6dd-0f139e946b10", "link_type": "ethernet", "nodes": [], - "project_id": "52a0b14c-074d-433a-9e1d-0041a5dcca39", + "project_id": "adf14fe8-9385-4261-8e66-16de2783ecc7", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/link.updated.json b/docs/api/notifications/link.updated.json index 7da3d85b..2bdc3bf4 100644 --- a/docs/api/notifications/link.updated.json +++ b/docs/api/notifications/link.updated.json @@ -10,7 +10,7 @@ 10 ] }, - "link_id": "873cfd7c-e61a-41c8-ac60-1068f67d2832", + "link_id": "f3893bd7-489a-4d53-a070-fc5bc566ff9c", "link_type": "ethernet", "nodes": [ { @@ -20,7 +20,7 @@ "x": 64, "y": 0 }, - "node_id": "cbd224a2-fc0e-4a41-9dae-6ddd1b8ce297", + "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", "port_number": 3 }, { @@ -32,10 +32,10 @@ "x": -10, "y": -10 }, - "node_id": "16dcbe64-5544-443b-bfed-798e6b89bd7d", + "node_id": "763411ab-6843-4908-a667-de022c261e1f", "port_number": 4 } ], - "project_id": "c12478fd-66df-4eac-ace8-fcd9aeb15028", + "project_id": "b703f752-a954-4794-958a-8eac176ac316", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/node.updated.json b/docs/api/notifications/node.updated.json index d02e107a..ec1409f7 100644 --- a/docs/api/notifications/node.updated.json +++ b/docs/api/notifications/node.updated.json @@ -17,7 +17,7 @@ "y": -25 }, "name": "PC2", - "node_directory": "/tmp/pytest-of-grossmj/pytest-19/test_load_project0/project-files/vpcs/748bcd89-624a-40eb-a8d3-1d2e85c99b51", + "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_load_project0/project-files/vpcs/748bcd89-624a-40eb-a8d3-1d2e85c99b51", "node_id": "748bcd89-624a-40eb-a8d3-1d2e85c99b51", "node_type": "vpcs", "port_name_format": "Ethernet{0}", diff --git a/docs/api/notifications/project.closed.json b/docs/api/notifications/project.closed.json index 42ed5bd6..3824d8b5 100644 --- a/docs/api/notifications/project.closed.json +++ b/docs/api/notifications/project.closed.json @@ -5,8 +5,8 @@ "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmp1r2zarnx/projects/8b5dfbc7-79eb-46f5-b2d5-387be884e502", - "project_id": "8b5dfbc7-79eb-46f5-b2d5-387be884e502", + "path": "/tmp/tmpt6b7x6sl/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52", + "project_id": "b8b24edf-6743-4bbd-b071-6fcdae3fcb52", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/notifications/project.updated.json b/docs/api/notifications/project.updated.json index c0d054f7..557a3a3a 100644 --- a/docs/api/notifications/project.updated.json +++ b/docs/api/notifications/project.updated.json @@ -5,7 +5,7 @@ "filename": "test.gns3", "grid_size": 0, "name": "test2", - "path": "/tmp/tmpyonz08qd/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmp7cldkfwl/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/notifications/settings.updated.json b/docs/api/notifications/settings.updated.json deleted file mode 100644 index 83e51d64..00000000 --- a/docs/api/notifications/settings.updated.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "modification_uuid": "b8acf218-c6e4-4a4f-992f-b57b286897d9", - "test": true -} \ No newline at end of file diff --git a/docs/api/notifications/snapshot.restored.json b/docs/api/notifications/snapshot.restored.json index 764fa630..618bfc6b 100644 --- a/docs/api/notifications/snapshot.restored.json +++ b/docs/api/notifications/snapshot.restored.json @@ -1,6 +1,6 @@ { - "created_at": 1534429407, + "created_at": 1542693676, "name": "test", - "project_id": "830f8f79-cabe-4adc-8c27-46a33e2d4cd6", - "snapshot_id": "7a57596a-b511-418d-a6ec-2dddf16bfda0" + "project_id": "013b03b4-61a7-4d6f-9c89-720c7c2be558", + "snapshot_id": "128894a2-3948-440a-a3b4-e9f6a943599d" } \ No newline at end of file diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index f5e41e80..16feb6f9 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,14 @@ Stop a packet capture on an ATM switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodes.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodes.rst index a5ecf913..1e843178 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodes.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeid.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeid.rst index 631f933a..43432e55 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeid.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeid.rst @@ -86,7 +86,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index b990e90e..cfda08c3 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to an ATM switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist @@ -27,14 +27,14 @@ Remove a NIO from an ATM switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 285a9fe2..57ad186f 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on an ATM switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstart.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstart.rst index 8b113ea0..e52cccb8 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstart.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstop.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstop.rst index d51ff99a..a7a9d18b 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstop.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidsuspend.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidsuspend.rst index d97c8439..0c541fcf 100644 --- a/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodes.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodes.rst index 4cb8cba0..6d805a3b 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodes.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeid.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeid.rst index 1c54a1c2..e35a2c09 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeid.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeid.rst @@ -133,9 +133,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index b5c5fed4..7c42a8bd 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a cloud instance Parameters ********** -- **adapter_number**: Adapter on the cloud (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the cloud (always 0) - **port_number**: Port on the cloud Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/cloud/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Cloud instance +Update a NIO on a Cloud instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a cloud instance Parameters ********** -- **adapter_number**: Adapter on the cloud (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the cloud (always 0) - **port_number**: Port on the cloud Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 3a668f04..099aa86a 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a cloud instance Parameters ********** -- **adapter_number**: Adapter on the cloud (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the cloud (always 0) - **port_number**: Port on the cloud Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index ae65d5df..cc94b45e 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a cloud instance Parameters ********** -- **adapter_number**: Adapter on the cloud (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the cloud (always 0) - **port_number**: Port on the cloud Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstart.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstart.rst index 64a379fa..c57ec5e6 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstart.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstop.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstop.rst index 06a1d80d..90168769 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstop.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidsuspend.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidsuspend.rst index 2cd6aadd..05e97929 100644 --- a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodes.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodes.rst index b0f033a1..4d974a6d 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodes.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeid.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeid.rst index 088cf66c..ac0c5ce2 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeid.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeid.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted PUT /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}** diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.rst index b442a2c1..a32ce09b 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a Docker container Parameters ********** -- **adapter_number**: Adapter where the nio should be added - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter where the nio should be added - **port_number**: Port on the adapter (always 0) Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Docker instance +Update a NIO on a Docker instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID -- **port_number**: Port from where the nio should be updated +- **adapter_number**: Network adapter where the nio is located +- **port_number**: Port from where the nio should be updated (always 0) Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a Docker container Parameters ********** -- **adapter_number**: Adapter where the nio should be added - **project_id**: Project UUID - **node_id**: Node UUID -- **port_number**: Port on the adapter +- **adapter_number**: Adapter where the nio should be added +- **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index bd6dd688..08e218b7 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,10 +9,10 @@ Start a packet capture on a Docker container instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID -- **port_number**: Port on the adapter +- **adapter_number**: Adapter to start a packet capture +- **port_number**: Port on the adapter (always 0) Response status codes ********************** diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 8ff5ff39..e227f8a0 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,16 +9,16 @@ Stop a packet capture on a Docker container instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped - **409**: Container not started Sample session diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidpause.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidpause.rst index 6e2b1547..89a92fa4 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidpause.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidpause.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance paused - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance paused diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidreload.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidreload.rst index f88df489..8f6e006b 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidreload.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidreload.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance restarted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance restarted diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstart.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstart.rst index cf4c5131..0f0a3cc6 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstart.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstop.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstop.rst index f1f688d4..65e9d5d4 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstop.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidsuspend.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidsuspend.rst index b9fa1298..216ccb3f 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidsuspend.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidunpause.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidunpause.rst index 281800d0..37e97c15 100644 --- a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidunpause.rst +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidunpause.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance unpaused - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance unpaused diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodes.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodes.rst index 5b85bd7c..0f4c1cd8 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodes.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeid.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeid.rst index 0df8662e..e05cebc8 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeid.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeid.rst @@ -193,7 +193,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index d34a9854..c8136043 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,33 +9,33 @@ Add a NIO to a Dynamips VM instance Parameters ********** -- **adapter_number**: Adapter where the nio should be added - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter where the nio should be added - **port_number**: Port on the adapter Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist PUT /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Dynamips instance +Update a NIO on a Dynamips instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist @@ -45,14 +45,14 @@ Remove a NIO from a Dynamips VM instance Parameters ********** -- **adapter_number**: Adapter from where the nio should be removed - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter from where the nio should be removed - **port_number**: Port on the adapter Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 59ba12b3..11b2aa3f 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a Dynamips VM instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter Response status codes diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 34f5745a..f305598c 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,14 @@ Stop a packet capture on a Dynamips VM instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidreload.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidreload.rst index 655f3522..d313251a 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidreload.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidreload.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidresume.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidresume.rst index 53f7ef21..15887578 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidresume.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidresume.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance resumed - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance resumed diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstart.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstart.rst index 0729560f..9df36fba 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstart.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstop.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstop.rst index e09a2d31..304f905a 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstop.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidsuspend.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidsuspend.rst index ffa73f96..33412332 100644 --- a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodes.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodes.rst index f03edce8..fb2c29e9 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodes.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeid.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeid.rst index 51387cd4..cb5d605a 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeid.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeid.rst @@ -102,7 +102,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index 75cd144e..7d2b087b 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to an Ethernet hub instance Parameters ********** -- **adapter_number**: Adapter on the hub (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the hub (always 0) - **port_number**: Port on the hub Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist @@ -27,14 +27,14 @@ Remove a NIO from an Ethernet hub instance Parameters ********** -- **adapter_number**: Adapter on the hub (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the hub (always 0) - **port_number**: Port on the hub Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 5cafdf72..a24e1577 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on an Ethernet hub instance Parameters ********** -- **adapter_number**: Adapter on the hub (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the hub (always 0) - **port_number**: Port on the hub Response status codes diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index f59217f4..650b46db 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,14 @@ Stop a packet capture on an Ethernet hub instance Parameters ********** -- **adapter_number**: Adapter on the hub (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the hub (always 0) - **port_number**: Port on the hub Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstart.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstart.rst index 04d7e9d2..7b20e5c3 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstart.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstop.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstop.rst index 5ea86cc0..7940753a 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstop.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidsuspend.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidsuspend.rst index c66e9d82..b4678be3 100644 --- a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodes.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodes.rst index 6db60587..dcbfcb5d 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodes.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeid.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeid.rst index f022de5f..8a56fe64 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeid.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeid.rst @@ -111,7 +111,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index e369666a..8c2eaa7e 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to an Ethernet switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist @@ -27,14 +27,14 @@ Remove a NIO from an Ethernet switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index e27c5eb8..62938b61 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on an Ethernet switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 41fa022e..f9c6275c 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,14 @@ Stop a packet capture on an Ethernet switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstart.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstart.rst index a5b9c7a4..58d551a1 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstart.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstop.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstop.rst index 6ac3a291..4531d526 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstop.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidsuspend.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidsuspend.rst index 728d43d1..e1c568cb 100644 --- a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodes.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodes.rst index c916f2b8..6cb46089 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodes.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeid.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeid.rst index 29d2d415..1384ed9e 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeid.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeid.rst @@ -86,7 +86,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index a232d3d1..8a17eba7 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a Frame Relay switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist @@ -27,14 +27,14 @@ Remove a NIO from a Frame Relay switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 0f31edab..92ea49c0 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a Frame Relay switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 2945b07a..ef36dc08 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,14 @@ Stop a packet capture on a Frame Relay switch instance Parameters ********** -- **adapter_number**: Adapter on the switch (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the switch (always 0) - **port_number**: Port on the switch Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstart.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstart.rst index 0b1ae513..bd3716e0 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstart.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstop.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstop.rst index e8f144f1..0b37be95 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstop.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidsuspend.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidsuspend.rst index 473d2498..ed21ba49 100644 --- a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodes.rst b/docs/api/v2/compute/iou/projectsprojectidiounodes.rst index 9c5dd5f2..fb92fbf2 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodes.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeid.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeid.rst index f5ba18ec..de78917c 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeid.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeid.rst @@ -134,9 +134,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.rst index d5908f6f..7713c21b 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a IOU instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port where the nio should be added Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/iou/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a IOU instance +Update a NIO on an IOU instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port where the nio should be added Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a IOU instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be removed Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index fc66bd40..e957b80b 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on an IOU VM instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter Response status codes diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 7c29253a..6cd4afb9 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,16 +9,16 @@ Stop a packet capture on an IOU VM instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped - **409**: VM not started Sample session diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidreload.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidreload.rst index fcf350cd..19af3275 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidreload.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstart.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstart.rst index c9b84c6e..501dc241 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstart.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstart.rst @@ -25,6 +25,7 @@ Input +
Name Mandatory Type Description
iourc_content ['string', 'null'] Content of the iourc file. Ignored if Null
license_check boolean Whether the license should be checked
Output diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstop.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstop.rst index 45c52663..7934e045 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstop.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidsuspend.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidsuspend.rst index 71cf75ec..93f15640 100644 --- a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidsuspend.rst +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodes.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodes.rst index 99cb0344..1d6e2672 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodes.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeid.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeid.rst index 28509197..7507a612 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeid.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeid.rst @@ -98,9 +98,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index 7aa020ae..c71f9ff2 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a nat instance Parameters ********** -- **adapter_number**: Adapter on the nat (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the nat (always 0) - **port_number**: Port on the nat Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/nat/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a NAT instance +Update a NIO on a NAT instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a nat instance Parameters ********** -- **adapter_number**: Adapter on the nat (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the nat (always 0) - **port_number**: Port on the nat Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 085fb790..f7ce3e87 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a nat instance Parameters ********** -- **adapter_number**: Adapter on the nat (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the nat (always 0) - **port_number**: Port on the nat Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 20efb5fa..855d3fac 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a nat instance Parameters ********** -- **adapter_number**: Adapter on the nat (always 0) - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter on the nat (always 0) - **port_number**: Port on the nat Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstart.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstart.rst index 2da40ba2..ca31ef98 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstart.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstart.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstop.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstop.rst index ea9d3b10..42f722f2 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstop.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstop.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidsuspend.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidsuspend.rst index e42eef2a..940f0e2e 100644 --- a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/project/projectsprojectid.rst b/docs/api/v2/compute/project/projectsprojectid.rst index c8d87427..42caf175 100644 --- a/docs/api/v2/compute/project/projectsprojectid.rst +++ b/docs/api/v2/compute/project/projectsprojectid.rst @@ -124,8 +124,8 @@ Parameters Response status codes ********************** -- **404**: The project doesn't exist - **204**: Changes have been written on disk +- **404**: The project doesn't exist Sample session *************** diff --git a/docs/api/v2/compute/project/projectsprojectidclose.rst b/docs/api/v2/compute/project/projectsprojectidclose.rst index 45c77199..b507cae8 100644 --- a/docs/api/v2/compute/project/projectsprojectidclose.rst +++ b/docs/api/v2/compute/project/projectsprojectidclose.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **404**: The project doesn't exist - **204**: Project closed +- **404**: The project doesn't exist Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodes.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodes.rst index b71b0bd9..14549c8b 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodes.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input @@ -27,7 +27,7 @@ Input adapters ['integer', 'null'] Number of adapters bios_image string QEMU bios image path bios_image_md5sum ['string', 'null'] QEMU bios image checksum - boot_priority enum Possible values: c, d, n, cn, cd + boot_priority enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image string QEMU cdrom image path cdrom_image_md5sum ['string', 'null'] QEMU cdrom image checksum console ['integer', 'null'] Console TCP port @@ -59,7 +59,7 @@ Input node_id Node UUID on_close enum Possible values: power_off, shutdown_signal, save_vm_state options ['string', 'null'] Additional QEMU options - platform enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null + platform enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null, null process_priority enum Possible values: realtime, very high, high, normal, low, very low, null qemu_path ['string', 'null'] Path to QEMU ram ['integer', 'null'] Amount of RAM in MB @@ -76,7 +76,7 @@ Output adapters ✔ integer Number of adapters bios_image ✔ string QEMU bios image path bios_image_md5sum ✔ ['string', 'null'] QEMU bios image checksum - boot_priority ✔ enum Possible values: c, d, n, cn, cd + boot_priority ✔ enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image ✔ string QEMU cdrom image path cdrom_image_md5sum ✔ ['string', 'null'] QEMU cdrom image checksum command_line ✔ string Last command line used by GNS3 to start QEMU @@ -108,7 +108,7 @@ Output node_id ✔ string Node UUID on_close ✔ enum Possible values: power_off, shutdown_signal, save_vm_state options ✔ string Additional QEMU options - platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb + platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null process_priority ✔ enum Possible values: realtime, very high, high, normal, low, very low project_id ✔ string Project UUID qemu_path ✔ string Path to QEMU diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeid.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeid.rst index 3e189b4e..fa458038 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeid.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeid.rst @@ -28,7 +28,7 @@ Output adapters ✔ integer Number of adapters bios_image ✔ string QEMU bios image path bios_image_md5sum ✔ ['string', 'null'] QEMU bios image checksum - boot_priority ✔ enum Possible values: c, d, n, cn, cd + boot_priority ✔ enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image ✔ string QEMU cdrom image path cdrom_image_md5sum ✔ ['string', 'null'] QEMU cdrom image checksum command_line ✔ string Last command line used by GNS3 to start QEMU @@ -60,7 +60,7 @@ Output node_id ✔ string Node UUID on_close ✔ enum Possible values: power_off, shutdown_signal, save_vm_state options ✔ string Additional QEMU options - platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb + platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null process_priority ✔ enum Possible values: realtime, very high, high, normal, low, very low project_id ✔ string Project UUID qemu_path ✔ string Path to QEMU @@ -103,7 +103,7 @@ Input adapters ['integer', 'null'] Number of adapters bios_image string QEMU bios image path bios_image_md5sum ['string', 'null'] QEMU bios image checksum - boot_priority enum Possible values: c, d, n, cn, cd + boot_priority enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image string QEMU cdrom image path cdrom_image_md5sum ['string', 'null'] QEMU cdrom image checksum console ['integer', 'null'] Console TCP port @@ -134,7 +134,7 @@ Input name ['string', 'null'] QEMU VM instance name on_close enum Possible values: power_off, shutdown_signal, save_vm_state options ['string', 'null'] Additional QEMU options - platform enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null + platform enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null, null process_priority enum Possible values: realtime, very high, high, normal, low, very low, null qemu_path ['string', 'null'] Path to QEMU ram ['integer', 'null'] Amount of RAM in MB @@ -151,7 +151,7 @@ Output adapters ✔ integer Number of adapters bios_image ✔ string QEMU bios image path bios_image_md5sum ✔ ['string', 'null'] QEMU bios image checksum - boot_priority ✔ enum Possible values: c, d, n, cn, cd + boot_priority ✔ enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image ✔ string QEMU cdrom image path cdrom_image_md5sum ✔ ['string', 'null'] QEMU cdrom image checksum command_line ✔ string Last command line used by GNS3 to start QEMU @@ -183,7 +183,7 @@ Output node_id ✔ string Node UUID on_close ✔ enum Possible values: power_off, shutdown_signal, save_vm_state options ✔ string Additional QEMU options - platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb + platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null process_priority ✔ enum Possible values: realtime, very high, high, normal, low, very low project_id ✔ string Project UUID qemu_path ✔ string Path to QEMU @@ -211,9 +211,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.rst index def642b9..171a96a4 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a Qemu VM instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port on the adapter (always 0) Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/qemu/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Qemu instance +Update a NIO on a Qemu instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a Qemu VM instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index fc8e705f..40043b68 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a Qemu VM instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter (always 0) Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index c048a903..681aea4a 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a Qemu VM instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidreload.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidreload.rst index 57a0c1c4..f7346523 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidreload.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidresume.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidresume.rst index ab5190f3..f6c35a56 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidresume.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidresume.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance resumed - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance resumed Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstart.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstart.rst index 907ea6a2..5df86864 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstart.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstart.rst @@ -28,7 +28,7 @@ Output adapters ✔ integer Number of adapters bios_image ✔ string QEMU bios image path bios_image_md5sum ✔ ['string', 'null'] QEMU bios image checksum - boot_priority ✔ enum Possible values: c, d, n, cn, cd + boot_priority ✔ enum Possible values: c, d, n, cn, cd, dn, dc, nc, nd cdrom_image ✔ string QEMU cdrom image path cdrom_image_md5sum ✔ ['string', 'null'] QEMU cdrom image checksum command_line ✔ string Last command line used by GNS3 to start QEMU @@ -60,7 +60,7 @@ Output node_id ✔ string Node UUID on_close ✔ enum Possible values: power_off, shutdown_signal, save_vm_state options ✔ string Additional QEMU options - platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb + platform ✔ enum Possible values: aarch64, alpha, arm, cris, i386, lm32, m68k, microblaze, microblazeel, mips, mips64, mips64el, mipsel, moxie, or32, ppc, ppc64, ppcemb, s390x, sh4, sh4eb, sparc, sparc64, tricore, unicore32, x86_64, xtensa, xtensaeb, null process_priority ✔ enum Possible values: realtime, very high, high, normal, low, very low project_id ✔ string Project UUID qemu_path ✔ string Path to QEMU diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstop.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstop.rst index e25400f6..405185e7 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstop.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidsuspend.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidsuspend.rst index dd81c58d..78af62ee 100644 --- a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidsuspend.rst +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidsuspend.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended Sample session *************** diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodes.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodes.rst index ad6240fb..f3943793 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodes.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeid.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeid.rst index 32f9f78e..9ebca68e 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeid.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeid.rst @@ -108,9 +108,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index 1f752007..138fad91 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a TraceNG instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port where the nio should be added Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/traceng/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a TraceNG instance +Update a NIO on a TraceNG instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a TraceNG instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be removed Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 5400ba5a..6a5bdaf4 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a TraceNG instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index e55b1210..76d419b8 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a TraceNG instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidreload.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidreload.rst index a64a5d2c..793efd2a 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidreload.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstart.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstart.rst index 9c6c5e9a..0f170d5a 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstart.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstart.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started Input ******* diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstop.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstop.rst index ea653ab9..dd5a3acc 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstop.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidsuspend.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidsuspend.rst index 26f4609f..e62d3c85 100644 --- a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodes.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodes.rst index 2c5dfc7e..23888c0c 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodes.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeid.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeid.rst index 0745e4f4..e87ce56a 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeid.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeid.rst @@ -131,7 +131,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index f5518ab6..77a5e3f9 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a VirtualBox VM instance Parameters ********** -- **adapter_number**: Adapter where the nio should be added - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter where the nio should be added - **port_number**: Port on the adapter (always 0) Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/virtualbox/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Virtualbox instance +Update a NIO on a Virtualbox instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a VirtualBox VM instance Parameters ********** -- **adapter_number**: Adapter from where the nio should be removed - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter from where the nio should be removed - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index 8cdcf998..569b8b26 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a VirtualBox VM instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter (always 0) Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 29836cc7..ae8162b6 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a VirtualBox VM instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidreload.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidreload.rst index 03b5c253..87344ad3 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidreload.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidresume.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidresume.rst index c3c15852..72a76026 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidresume.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidresume.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance resumed - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance resumed Sample session *************** diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstart.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstart.rst index 999f5bca..1efeb459 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstart.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstart.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started Sample session *************** diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstop.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstop.rst index 5f116158..6b747d82 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstop.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidsuspend.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidsuspend.rst index 212c6ebf..7fba3344 100644 --- a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidsuspend.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodes.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodes.rst index 03e21bc6..209e9057 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodes.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeid.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeid.rst index f9825cba..8dc1115f 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeid.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeid.rst @@ -128,7 +128,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.rst index 1acb803a..72d55fb2 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a VMware VM instance Parameters ********** -- **adapter_number**: Adapter where the nio should be added - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter where the nio should be added - **port_number**: Port on the adapter (always 0) Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/vmware/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a Virtualbox instance +Update a NIO on a VMware VM instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a VMware VM instance Parameters ********** -- **adapter_number**: Adapter from where the nio should be removed - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter from where the nio should be removed - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index a180a8ef..6b18bd1c 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a VMware VM instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter (always 0) Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 100cce2c..506f2c89 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a VMware VM instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter (always 0) Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidreload.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidreload.rst index aa8cbd91..c6dc34cc 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidreload.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidresume.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidresume.rst index 21cfdf66..c9ef0e0c 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidresume.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidresume.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance resumed - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance resumed Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstart.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstart.rst index 8078f514..da9b5f4f 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstart.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstart.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstop.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstop.rst index 36aa11f8..d6acd738 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstop.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidsuspend.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidsuspend.rst index eb6f75e2..b2bd8836 100644 --- a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidsuspend.rst +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidsuspend.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended Sample session *************** diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodes.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodes.rst index b0816cb6..59274280 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodes.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request - **409**: Conflict Input diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeid.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeid.rst index cffa66d3..7d28b2f5 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeid.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeid.rst @@ -102,9 +102,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst index 7054d40e..05abe714 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst @@ -9,15 +9,15 @@ Add a NIO to a VPCS instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port where the nio should be added Response status codes ********************** -- **400**: Invalid request - **201**: NIO created +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -29,19 +29,19 @@ Sample session PUT /v2/compute/projects/**{project_id}**/vpcs/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/nio ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a NIO from a VPCS instance +Update a NIO on a VPCS instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be updated Response status codes ********************** -- **400**: Invalid request - **201**: NIO updated +- **400**: Invalid request - **404**: Instance doesn't exist Sample session @@ -57,16 +57,16 @@ Remove a NIO from a VPCS instance Parameters ********** -- **adapter_number**: Network adapter where the nio is located - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Network adapter where the nio is located - **port_number**: Port from where the nio should be removed Response status codes ********************** +- **204**: NIO deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: NIO deleted Sample session *************** diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst index ccf853ab..d63c1789 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst @@ -9,9 +9,9 @@ Start a packet capture on a VPCS instance Parameters ********** -- **adapter_number**: Adapter to start a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to start a packet capture - **port_number**: Port on the adapter Response status codes @@ -30,3 +30,9 @@ Input data_link_type enum Possible values: DLT_ATM_RFC1483, DLT_EN10MB, DLT_FRELAY, DLT_C_HDLC, DLT_PPP_SERIAL +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt + diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst index 3b1ed1db..3a6311ee 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst @@ -9,14 +9,20 @@ Stop a packet capture on a VPCS instance Parameters ********** -- **adapter_number**: Adapter to stop a packet capture - **project_id**: Project UUID - **node_id**: Node UUID +- **adapter_number**: Adapter to stop a packet capture - **port_number**: Port on the adapter Response status codes ********************** +- **204**: Capture stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Capture stopped + +Sample session +*************** + + +.. literalinclude:: ../../../examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidreload.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidreload.rst index 1689078c..b8f95b67 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidreload.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidreload.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstart.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstart.rst index 1663e4ed..aaf30e31 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstart.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstart.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance started Output ******* diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstop.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstop.rst index 779f0ad5..3c1b34ae 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstop.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidstop.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance stopped Sample session *************** diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidsuspend.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidsuspend.rst index 322b2c4a..7f785678 100644 --- a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidsuspend.rst +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidsuspend.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** +- **204**: Instance suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance suspended diff --git a/docs/api/v2/controller/appliance/appliances.rst b/docs/api/v2/controller/appliance/appliances.rst index 15f47cea..439df34e 100644 --- a/docs/api/v2/controller/appliance/appliances.rst +++ b/docs/api/v2/controller/appliance/appliances.rst @@ -3,6 +3,54 @@ .. contents:: +POST /v2/appliances +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Create a new appliance + +Response status codes +********************** +- **201**: Appliance created +- **400**: Invalid request + +Input +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Output +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_post_appliances.txt + + GET /v2/appliances ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ List of appliance diff --git a/docs/api/v2/controller/appliance/projectsprojectidappliancesapplianceid.rst b/docs/api/v2/controller/appliance/projectsprojectidappliancesapplianceid.rst index e959f96c..5de1dce7 100644 --- a/docs/api/v2/controller/appliance/projectsprojectidappliancesapplianceid.rst +++ b/docs/api/v2/controller/appliance/projectsprojectidappliancesapplianceid.rst @@ -10,12 +10,12 @@ Create a node from an appliance Parameters ********** - **project_id**: Project UUID -- **appliance_id**: Appliance template UUID +- **appliance_id**: Appliance UUID Response status codes ********************** - **201**: Node created -- **404**: The project or template doesn't exist +- **404**: The project or appliance doesn't exist Input ******* diff --git a/docs/api/v2/controller/compute/s.rst b/docs/api/v2/controller/compute/s.rst index 5b253638..b9f6dd13 100644 --- a/docs/api/v2/controller/compute/s.rst +++ b/docs/api/v2/controller/compute/s.rst @@ -37,6 +37,7 @@ Output connected boolean Whether the controller is connected to the compute server or not cpu_usage_percent ['number', 'null'] CPU usage of the compute. Read only host ✔ string Server host + last_error ['string', 'null'] Last error on the compute memory_usage_percent ['number', 'null'] RAM usage of the compute. Read only name ✔ string Server name port ✔ integer Server port diff --git a/docs/api/v2/controller/compute/sid.rst b/docs/api/v2/controller/compute/sid.rst index aab5eb2f..7db81be5 100644 --- a/docs/api/v2/controller/compute/sid.rst +++ b/docs/api/v2/controller/compute/sid.rst @@ -5,7 +5,7 @@ PUT /v2/computes/**{compute_id}** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Get a compute server information +Update a compute server Response status codes ********************** @@ -39,6 +39,7 @@ Output connected boolean Whether the controller is connected to the compute server or not cpu_usage_percent ['number', 'null'] CPU usage of the compute. Read only host ✔ string Server host + last_error ['string', 'null'] Last error on the compute memory_usage_percent ['number', 'null'] RAM usage of the compute. Read only name ✔ string Server name port ✔ integer Server port @@ -66,6 +67,7 @@ Output connected boolean Whether the controller is connected to the compute server or not cpu_usage_percent ['number', 'null'] CPU usage of the compute. Read only host ✔ string Server host + last_error ['string', 'null'] Last error on the compute memory_usage_percent ['number', 'null'] RAM usage of the compute. Read only name ✔ string Server name port ✔ integer Server port @@ -84,7 +86,7 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted diff --git a/docs/api/v2/controller/drawing/projectsprojectiddrawings.rst b/docs/api/v2/controller/drawing/projectsprojectiddrawings.rst index 85658213..6886511c 100644 --- a/docs/api/v2/controller/drawing/projectsprojectiddrawings.rst +++ b/docs/api/v2/controller/drawing/projectsprojectiddrawings.rst @@ -32,8 +32,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Drawing created +- **400**: Invalid request Input ******* diff --git a/docs/api/v2/controller/drawing/projectsprojectiddrawingsdrawingid.rst b/docs/api/v2/controller/drawing/projectsprojectiddrawingsdrawingid.rst index be919148..c3906946 100644 --- a/docs/api/v2/controller/drawing/projectsprojectiddrawingsdrawingid.rst +++ b/docs/api/v2/controller/drawing/projectsprojectiddrawingsdrawingid.rst @@ -51,8 +51,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Drawing updated +- **400**: Invalid request Input ******* @@ -102,8 +102,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **204**: Drawing deleted +- **400**: Invalid request Sample session *************** diff --git a/docs/api/v2/controller/link/projectsprojectidlinks.rst b/docs/api/v2/controller/link/projectsprojectidlinks.rst index 2975ab1f..55a35849 100644 --- a/docs/api/v2/controller/link/projectsprojectidlinks.rst +++ b/docs/api/v2/controller/link/projectsprojectidlinks.rst @@ -32,8 +32,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Link created +- **400**: Invalid request Input ******* diff --git a/docs/api/v2/controller/link/projectsprojectidlinkslinkid.rst b/docs/api/v2/controller/link/projectsprojectidlinkslinkid.rst index eeefc924..af82e77b 100644 --- a/docs/api/v2/controller/link/projectsprojectidlinkslinkid.rst +++ b/docs/api/v2/controller/link/projectsprojectidlinkslinkid.rst @@ -53,8 +53,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Link updated +- **400**: Invalid request Input ******* @@ -108,8 +108,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **204**: Link deleted +- **400**: Invalid request Sample session *************** diff --git a/docs/api/v2/controller/link/projectsprojectidlinkslinkidpcap.rst b/docs/api/v2/controller/link/projectsprojectidlinkslinkidpcap.rst index 48426bdd..5724af9e 100644 --- a/docs/api/v2/controller/link/projectsprojectidlinkslinkidpcap.rst +++ b/docs/api/v2/controller/link/projectsprojectidlinkslinkidpcap.rst @@ -5,7 +5,7 @@ GET /v2/projects/**{project_id}**/links/**{link_id}**/pcap ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Stream the pcap capture file +Stream the PCAP capture file from compute Parameters ********** diff --git a/docs/api/v2/controller/link/projectsprojectidlinkslinkidstartcapture.rst b/docs/api/v2/controller/link/projectsprojectidlinkslinkidstartcapture.rst index c5430ffd..e6358ee9 100644 --- a/docs/api/v2/controller/link/projectsprojectidlinkslinkidstartcapture.rst +++ b/docs/api/v2/controller/link/projectsprojectidlinkslinkidstartcapture.rst @@ -14,8 +14,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Capture started +- **400**: Invalid request Input ******* diff --git a/docs/api/v2/controller/link/projectsprojectidlinkslinkidstopcapture.rst b/docs/api/v2/controller/link/projectsprojectidlinkslinkidstopcapture.rst index da2bcb29..51ec1be7 100644 --- a/docs/api/v2/controller/link/projectsprojectidlinkslinkidstopcapture.rst +++ b/docs/api/v2/controller/link/projectsprojectidlinkslinkidstopcapture.rst @@ -14,8 +14,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Capture stopped +- **400**: Invalid request Sample session *************** diff --git a/docs/api/v2/controller/node/projectsprojectidnodes.rst b/docs/api/v2/controller/node/projectsprojectidnodes.rst index 5925c6b5..c9f5b50d 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodes.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodes.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance created +- **400**: Invalid request Input ******* diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeid.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeid.rst index 8ab30041..ddf2685c 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeid.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeid.rst @@ -5,7 +5,7 @@ GET /v2/projects/**{project_id}**/nodes/**{node_id}** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Update a node instance +Get a node Response status codes ********************** @@ -150,9 +150,9 @@ Parameters Response status codes ********************** +- **204**: Instance deleted - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance deleted Sample session *************** diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeidduplicate.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeidduplicate.rst index 16b00608..d17689a6 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeidduplicate.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeidduplicate.rst @@ -14,8 +14,8 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Instance duplicated +- **400**: Invalid request - **404**: Instance doesn't exist Input diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsautoidlepc.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsautoidlepc.rst index 3b74b947..28d3bbfa 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsautoidlepc.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsautoidlepc.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsidlepcproposals.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsidlepcproposals.rst index 3ee287e4..bc42aeca 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsidlepcproposals.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeiddynamipsidlepcproposals.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded Sample session *************** diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeidfilespath.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeidfilespath.rst index 249f6341..3fc4bbaf 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeidfilespath.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeidfilespath.rst @@ -14,9 +14,9 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded POST /v2/projects/**{project_id}**/nodes/**{node_id}**/files/**{path:.+}** @@ -30,7 +30,7 @@ Parameters Response status codes ********************** +- **204**: Instance reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: Instance reloaded diff --git a/docs/api/v2/controller/node/projectsprojectidnodesnodeidresizedisk.rst b/docs/api/v2/controller/node/projectsprojectidnodesnodeidresizedisk.rst index cfb32c66..76aec3e8 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesnodeidresizedisk.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesnodeidresizedisk.rst @@ -14,7 +14,7 @@ Parameters Response status codes ********************** -- **400**: Invalid request - **201**: Disk image resized +- **400**: Invalid request - **404**: Instance doesn't exist diff --git a/docs/api/v2/controller/node/projectsprojectidnodesreload.rst b/docs/api/v2/controller/node/projectsprojectidnodesreload.rst index 7aed3272..3521f546 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesreload.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesreload.rst @@ -13,9 +13,9 @@ Parameters Response status codes ********************** +- **204**: All nodes successfully reloaded - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: All nodes successfully reloaded Output ******* diff --git a/docs/api/v2/controller/node/projectsprojectidnodesstart.rst b/docs/api/v2/controller/node/projectsprojectidnodesstart.rst index 86303a4e..7cc250e2 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesstart.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesstart.rst @@ -13,9 +13,9 @@ Parameters Response status codes ********************** +- **204**: All nodes successfully started - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: All nodes successfully started Output ******* diff --git a/docs/api/v2/controller/node/projectsprojectidnodesstop.rst b/docs/api/v2/controller/node/projectsprojectidnodesstop.rst index af94779f..c19a7243 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodesstop.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodesstop.rst @@ -13,9 +13,9 @@ Parameters Response status codes ********************** +- **204**: All nodes successfully stopped - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: All nodes successfully stopped Output ******* diff --git a/docs/api/v2/controller/node/projectsprojectidnodessuspend.rst b/docs/api/v2/controller/node/projectsprojectidnodessuspend.rst index ee6b684f..029d6000 100644 --- a/docs/api/v2/controller/node/projectsprojectidnodessuspend.rst +++ b/docs/api/v2/controller/node/projectsprojectidnodessuspend.rst @@ -13,9 +13,9 @@ Parameters Response status codes ********************** +- **204**: All nodes successfully suspended - **400**: Invalid request - **404**: Instance doesn't exist -- **204**: All nodes successfully suspended Output ******* diff --git a/docs/api/v2/controller/project/projectsprojectid.rst b/docs/api/v2/controller/project/projectsprojectid.rst index d4b3b0ad..1e88a74f 100644 --- a/docs/api/v2/controller/project/projectsprojectid.rst +++ b/docs/api/v2/controller/project/projectsprojectid.rst @@ -99,8 +99,8 @@ Parameters Response status codes ********************** -- **404**: The project doesn't exist - **204**: Changes have been written on disk +- **404**: The project doesn't exist Sample session *************** diff --git a/docs/api/v2/controller/project/projectsprojectidclose.rst b/docs/api/v2/controller/project/projectsprojectidclose.rst index dfe2fbba..3ad92940 100644 --- a/docs/api/v2/controller/project/projectsprojectidclose.rst +++ b/docs/api/v2/controller/project/projectsprojectidclose.rst @@ -13,8 +13,8 @@ Parameters Response status codes ********************** -- **404**: The project doesn't exist - **204**: The project has been closed +- **404**: The project doesn't exist Output ******* diff --git a/docs/api/v2/controller/server/debug.rst b/docs/api/v2/controller/server/debug.rst index 1e362ef3..80d20fc1 100644 --- a/docs/api/v2/controller/server/debug.rst +++ b/docs/api/v2/controller/server/debug.rst @@ -9,5 +9,5 @@ Dump debug information to disk (debug directory in config directory). Work only Response status codes ********************** -- **201**: Writed +- **201**: Written diff --git a/docs/api/v2/controller/server/settings.rst b/docs/api/v2/controller/server/settings.rst deleted file mode 100644 index 187cf280..00000000 --- a/docs/api/v2/controller/server/settings.rst +++ /dev/null @@ -1,34 +0,0 @@ -/v2/settings ------------------------------------------------------------------------------------------------------------------------------------------- - -.. contents:: - -GET /v2/settings -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Retrieve gui settings from the server. Temporary will we removed in later release - -Response status codes -********************** -- **200**: OK - -Sample session -*************** - - -.. literalinclude:: ../../../examples/controller_get_settings.txt - - -POST /v2/settings -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Write gui settings on the server. Temporary will we removed in later releases - -Response status codes -********************** -- **201**: Settings saved - -Sample session -*************** - - -.. literalinclude:: ../../../examples/controller_post_settings.txt - diff --git a/docs/api/v2/controller/snapshot/projectsprojectidsnapshotssnapshotid.rst b/docs/api/v2/controller/snapshot/projectsprojectidsnapshotssnapshotid.rst index f949f4a8..bf3a0e59 100644 --- a/docs/api/v2/controller/snapshot/projectsprojectidsnapshotssnapshotid.rst +++ b/docs/api/v2/controller/snapshot/projectsprojectidsnapshotssnapshotid.rst @@ -14,8 +14,8 @@ Parameters Response status codes ********************** -- **404**: The project or snapshot doesn't exist - **204**: Changes have been written on disk +- **404**: The project or snapshot doesn't exist Sample session *************** diff --git a/docs/controller_notifications.rst b/docs/controller_notifications.rst index 64743613..2aad8b3e 100644 --- a/docs/controller_notifications.rst +++ b/docs/controller_notifications.rst @@ -28,15 +28,14 @@ Keep-alive between client and controller. Also used to receive the current CPU a compute.created ----------------- +--------------- A compute has been created. .. literalinclude:: api/notifications/compute.created.json - compute.updated ----------------- +--------------- A compute has been updated. @@ -50,6 +49,31 @@ A compute has been deleted. .. literalinclude:: api/notifications/compute.deleted.json + +appliance.created +----------------- + +An appliance has been created. + +.. literalinclude:: api/notifications/appliance.created.json + + +appliance.updated +----------------- + +An appliance has been updated. + +.. literalinclude:: api/notifications/appliance.updated.json + + +appliance.deleted +----------------- + +An appliance has been deleted. + +.. literalinclude:: api/notifications/appliance.deleted.json + + log.error --------- @@ -72,11 +96,3 @@ log.info Sends an information .. literalinclude:: api/notifications/log.info.json - - -settings.updated ------------------ - -GUI settings have been updated. Will be removed in a later release. - -.. literalinclude:: api/notifications/settings.updated.json diff --git a/docs/gns3_file.json b/docs/gns3_file.json index 14231568..573256ae 100644 --- a/docs/gns3_file.json +++ b/docs/gns3_file.json @@ -1,108 +1,83 @@ { "$schema": "http://json-schema.org/draft-04/schema#", - "additionalProperties": false, - "required": [ - "project_id", - "type", - "revision", - "version", - "name", - "topology" - ], + "description": "The topology", "type": "object", "properties": { - "auto_open": { - "type": "boolean", - "description": "Open the topology with GNS3" + "project_id": { + "description": "Project UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, - "snap_to_grid": { - "type": "boolean", - "description": "Snap to grid on the drawing area" + "type": { + "description": "Type of file. It's always topology", + "enum": [ + "topology" + ] }, - "scene_width": { - "type": "integer", - "description": "Width of the drawing area" + "auto_start": { + "description": "Start the topology when opened", + "type": "boolean" }, - "scene_height": { - "type": "integer", - "description": "Height of the drawing area" + "auto_close": { + "description": "Close the topology when no client is connected", + "type": "boolean" }, - "show_layers": { - "type": "boolean", - "description": "Show layers on the drawing area" + "auto_open": { + "description": "Open the topology with GNS3", + "type": "boolean" }, - "show_interface_labels": { - "type": "boolean", - "description": "Show interface labels on the drawing area" + "revision": { + "description": "Version of the .gns3 specification.", + "type": "integer" }, "version": { - "type": "string", - "description": "Version of the GNS3 software which have update the file for the last time" - }, - "variables": { - "type": [ - "array", - "null" - ], - "items": { - "properties": { - "value": { - "type": "string", - "description": "Variable value" - }, - "name": { - "type": "string", - "description": "Variable name" - } - }, - "required": [ - "name" - ] - }, - "description": "Variables required to run the project" + "description": "Version of the GNS3 software which have update the file for the last time", + "type": "string" }, "name": { "type": "string", "description": "Name of the project" }, - "zoom": { + "scene_height": { "type": "integer", - "description": "Zoom of the drawing area" + "description": "Height of the drawing area" }, - "project_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Project UUID", - "minLength": 36 + "scene_width": { + "type": "integer", + "description": "Width of the drawing area" }, - "grid_size": { + "zoom": { "type": "integer", - "description": "Grid size for the drawing area" + "description": "Zoom of the drawing area" }, - "auto_close": { + "show_layers": { "type": "boolean", - "description": "Close the topology when no client is connected" + "description": "Show layers on the drawing area" }, - "type": { - "enum": [ - "topology" - ], - "description": "Type of file. It's always topology" + "snap_to_grid": { + "type": "boolean", + "description": "Snap to grid on the drawing area" }, "show_grid": { "type": "boolean", "description": "Show the grid on the drawing area" }, - "auto_start": { + "grid_size": { + "type": "integer", + "description": "Grid size for the drawing area" + }, + "show_interface_labels": { "type": "boolean", - "description": "Start the topology when opened" + "description": "Show interface labels on the drawing area" }, "supplier": { "type": [ "object", "null" ], + "description": "Supplier of the project", "properties": { "logo": { "type": "string", @@ -112,610 +87,649 @@ "type": "string", "description": "URL to the project supplier site" } - }, - "description": "Supplier of the project" + } + }, + "variables": { + "type": [ + "array", + "null" + ], + "description": "Variables required to run the project", + "items": { + "properties": { + "name": { + "type": "string", + "description": "Variable name" + }, + "value": { + "type": "string", + "description": "Variable value" + } + }, + "required": [ + "name" + ] + } }, "topology": { + "description": "The topology content", "type": "object", "properties": { - "links": { + "computes": { + "description": "Computes servers", "type": "array", "items": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Request validation to a GNS3 compute object instance", "type": "object", "properties": { - "capture_file_name": { - "type": [ - "string", - "null" - ], - "description": "Read only property. The name of the capture file if capture is running" + "compute_id": { + "description": "Server identifier", + "type": "string" }, - "project_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Project UUID", - "minLength": 36 + "name": { + "description": "Server name", + "type": "string" }, - "link_type": { + "protocol": { + "description": "Server protocol", "enum": [ - "ethernet", - "serial" - ], - "description": "Type of link" + "http", + "https" + ] }, - "capture_file_path": { + "host": { + "description": "Server host", + "type": "string" + }, + "port": { + "description": "Server port", + "type": "integer" + }, + "user": { + "description": "User for authentication", "type": [ "string", "null" - ], - "description": "Read only property. The full path of the capture file if capture is running" - }, - "suspend": { - "type": "boolean", - "description": "Suspend the link" - }, - "capturing": { - "type": "boolean", - "description": "Read only property. True if a capture running on the link" - }, - "nodes": { - "type": "array", - "items": { - "type": "object", - "properties": { - "label": { - "type": "object", - "properties": { - "text": { - "type": "string" - }, - "rotation": { - "type": "integer", - "maximum": 360, - "minimum": -359, - "description": "Rotation of the label" - }, - "style": { - "type": "string", - "description": "SVG style attribute" - }, - "y": { - "type": "integer", - "description": "Relative Y position of the label" - }, - "x": { - "type": [ - "integer", - "null" - ], - "description": "Relative X position of the label. If null center it" - } - }, - "additionalProperties": false, - "required": [ - "text", - "x", - "y" - ] - }, - "adapter_number": { - "type": "integer", - "description": "Adapter number" - }, - "node_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Node UUID", - "minLength": 36 - }, - "port_number": { - "type": "integer", - "description": "Port number" - } - }, - "additionalProperties": false, - "required": [ - "node_id", - "adapter_number", - "port_number" - ] - }, - "description": "List of the VMS" + ] }, - "filters": { - "type": "object", - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "Packet filter. This allow to simulate latency and errors" + "connected": { + "description": "Whether the controller is connected to the compute server or not", + "type": "boolean" }, - "link_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Link UUID", - "minLength": 36 - } - }, - "$schema": "http://json-schema.org/draft-04/schema#", - "additionalProperties": false, - "description": "A link object" - }, - "description": "Link elements" - }, - "nodes": { - "type": "array", - "items": { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "A node object", - "required": [ - "name", - "node_type", - "compute_id" - ], - "type": "object", - "properties": { - "first_port_name": { + "cpu_usage_percent": { + "description": "CPU usage of the compute. Read only", "type": [ - "string", + "number", "null" ], - "description": "Name of the first port" - }, - "compute_id": { - "type": "string", - "description": "Compute identifier" - }, - "port_segment_size": { - "type": "integer", - "minimum": 0, - "description": "Size of the port segment" - }, - "y": { - "type": "integer", - "description": "Y position of the node" + "maximum": 100, + "minimum": 0 }, - "appliance_id": { + "memory_usage_percent": { + "description": "RAM usage of the compute. Read only", "type": [ - "null", - "string" + "number", + "null" ], - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Appliance UUID from which the node has been created. Read only", - "minLength": 36 - }, - "z": { - "type": "integer", - "description": "Z position of the node" + "maximum": 100, + "minimum": 0 }, - "symbol": { + "last_error": { + "description": "Last error on the compute", "type": [ "string", "null" + ] + }, + "capabilities": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Get what a server support", + "type": "object", + "required": [ + "version", + "node_types" ], - "description": "Symbol of the node", - "minLength": 1 + "properties": { + "version": { + "description": "Version number", + "type": [ + "string", + "null" + ] + }, + "node_types": { + "type": "array", + "items": { + "description": "Type of node", + "enum": [ + "cloud", + "nat", + "ethernet_hub", + "ethernet_switch", + "frame_relay_switch", + "atm_switch", + "docker", + "dynamips", + "vpcs", + "traceng", + "virtualbox", + "vmware", + "iou", + "qemu" + ] + }, + "description": "Node type supported by the compute" + }, + "platform": { + "type": "string", + "description": "Platform where the compute is running" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false, + "required": [ + "compute_id", + "protocol", + "host", + "port", + "name" + ] + } + }, + "drawings": { + "description": "Drawings elements", + "type": "array", + "items": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "An drawing object", + "type": "object", + "properties": { + "drawing_id": { + "description": "Drawing UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, - "console_host": { + "project_id": { + "description": "Project UUID", "type": "string", - "description": "Console host. Warning if the host is 0.0.0.0 or :: (listen on all interfaces) you need to use the same address you use to connect to the controller.", - "minLength": 1 + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, - "console_auto_start": { + "x": { + "description": "X property", + "type": "integer" + }, + "y": { + "description": "Y property", + "type": "integer" + }, + "z": { + "description": "Z property", + "type": "integer" + }, + "rotation": { + "description": "Rotation of the element", + "type": "integer", + "minimum": -359, + "maximum": 360 + }, + "svg": { + "description": "SVG content of the drawing", + "type": "string" + } + }, + "additionalProperties": false + } + }, + "links": { + "description": "Link elements", + "type": "array", + "items": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A link object", + "type": "object", + "properties": { + "link_id": { + "description": "Link UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "project_id": { + "description": "Project UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "nodes": { + "description": "List of the VMS", + "type": "array", + "items": { + "type": "object", + "properties": { + "node_id": { + "description": "Node UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "adapter_number": { + "description": "Adapter number", + "type": "integer" + }, + "port_number": { + "description": "Port number", + "type": "integer" + }, + "label": { + "type": "object", + "properties": { + "text": { + "type": "string" + }, + "style": { + "description": "SVG style attribute. Apply default style if null", + "type": [ + "string", + "null" + ] + }, + "x": { + "description": "Relative X position of the label. Center it if null", + "type": [ + "integer", + "null" + ] + }, + "y": { + "description": "Relative Y position of the label", + "type": "integer" + }, + "rotation": { + "description": "Rotation of the label", + "type": "integer", + "minimum": -359, + "maximum": 360 + } + }, + "required": [ + "text", + "x", + "y" + ], + "additionalProperties": false + } + }, + "required": [ + "node_id", + "adapter_number", + "port_number" + ], + "additionalProperties": false + } + }, + "suspend": { "type": "boolean", - "description": "Automatically start the console when the node has started" + "description": "Suspend the link" }, - "command_line": { + "filters": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Packet filter. This allow to simulate latency and errors", + "type": "object" + }, + "capturing": { + "description": "Read only property. True if a capture running on the link", + "type": "boolean" + }, + "capture_file_name": { + "description": "Read only property. The name of the capture file if capture is running", + "type": [ + "string", + "null" + ] + }, + "capture_file_path": { + "description": "Read only property. The full path of the capture file if capture is running", + "type": [ + "string", + "null" + ] + }, + "link_type": { + "description": "Type of link", + "enum": [ + "ethernet", + "serial" + ] + } + }, + "additionalProperties": false + } + }, + "nodes": { + "description": "Nodes elements", + "type": "array", + "items": { + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "A node object", + "type": "object", + "properties": { + "compute_id": { + "description": "Compute identifier", + "type": "string" + }, + "project_id": { + "description": "Project UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "node_id": { + "description": "Node UUID", + "type": "string", + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + }, + "appliance_id": { + "description": "Appliance UUID from which the node has been created. Read only", "type": [ "null", "string" ], - "description": "Command line use to start the node" + "minLength": 36, + "maxLength": 36, + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, - "properties": { - "type": "object", - "description": "Properties specific to an emulator" + "node_type": { + "description": "Type of node", + "enum": [ + "cloud", + "nat", + "ethernet_hub", + "ethernet_switch", + "frame_relay_switch", + "atm_switch", + "docker", + "dynamips", + "vpcs", + "traceng", + "virtualbox", + "vmware", + "iou", + "qemu" + ] + }, + "node_directory": { + "description": "Working directory of the node. Read only", + "type": [ + "null", + "string" + ] + }, + "command_line": { + "description": "Command line use to start the node", + "type": [ + "null", + "string" + ] }, "name": { - "type": "string", "description": "Node name", + "type": "string", "minLength": 1 }, + "console": { + "description": "Console TCP port", + "minimum": 1, + "maximum": 65535, + "type": [ + "integer", + "null" + ] + }, + "console_host": { + "description": "Console host. Warning if the host is 0.0.0.0 or :: (listen on all interfaces) you need to use the same address you use to connect to the controller.", + "type": "string", + "minLength": 1 + }, + "console_type": { + "description": "Console type", + "enum": [ + "vnc", + "telnet", + "http", + "https", + "spice", + "spice+agent", + "none", + null + ] + }, + "console_auto_start": { + "description": "Automatically start the console when the node has started", + "type": "boolean" + }, + "properties": { + "description": "Properties specific to an emulator", + "type": "object" + }, + "status": { + "description": "Status of the node", + "enum": [ + "stopped", + "started", + "suspended" + ] + }, "label": { "type": "object", "properties": { "text": { "type": "string" }, - "rotation": { - "type": "integer", - "maximum": 360, - "minimum": -359, - "description": "Rotation of the label" - }, "style": { - "type": "string", - "description": "SVG style attribute" - }, - "y": { - "type": "integer", - "description": "Relative Y position of the label" + "description": "SVG style attribute. Apply default style if null", + "type": [ + "string", + "null" + ] }, "x": { + "description": "Relative X position of the label. Center it if null", "type": [ "integer", "null" - ], - "description": "Relative X position of the label. If null center it" + ] + }, + "y": { + "description": "Relative Y position of the label", + "type": "integer" + }, + "rotation": { + "description": "Rotation of the label", + "type": "integer", + "minimum": -359, + "maximum": 360 } }, - "additionalProperties": false, "required": [ "text", "x", "y" - ] - }, - "x": { - "type": "integer", - "description": "X position of the node" - }, - "status": { - "enum": [ - "stopped", - "started", - "suspended" ], - "description": "Status of the node" + "additionalProperties": false }, - "console": { - "maximum": 65535, + "symbol": { + "description": "Symbol of the node", "type": [ - "integer", + "string", "null" ], - "minimum": 1, - "description": "Console TCP port" + "minLength": 1 }, - "node_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Node UUID", - "minLength": 36 + "width": { + "description": "Width of the node (Read only)", + "type": "integer" }, "height": { - "type": "integer", - "description": "Height of the node (Read only)" + "description": "Height of the node (Read only)", + "type": "integer" }, - "console_type": { - "enum": [ - "vnc", - "telnet", - "http", - "https", - "spice", - "spice+agent", - "none", - null - ], - "description": "Console type" + "x": { + "description": "X position of the node", + "type": "integer" }, - "node_directory": { + "y": { + "description": "Y position of the node", + "type": "integer" + }, + "z": { + "description": "Z position of the node", + "type": "integer" + }, + "port_name_format": { + "description": "Formating for port name {0} will be replace by port number", + "type": "string" + }, + "port_segment_size": { + "description": "Size of the port segment", + "type": "integer", + "minimum": 0 + }, + "first_port_name": { + "description": "Name of the first port", "type": [ - "null", - "string" - ], - "description": "Working directory of the node. Read only" + "string", + "null" + ] + }, + "custom_adapters": { + "type": "array", + "default": [], + "items": { + "type": "object", + "description": "Custom properties", + "properties": { + "adapter_number": { + "type": "integer", + "description": "Adapter number" + }, + "port_name": { + "type": "string", + "description": "Custom port name", + "minLength": 1 + }, + "adapter_type": { + "type": "string", + "description": "Custom adapter type", + "minLength": 1 + }, + "mac_address": { + "description": "Custom MAC address", + "type": "string", + "minLength": 1, + "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$" + } + }, + "additionalProperties": false, + "required": [ + "adapter_number" + ] + } }, "ports": { + "description": "List of node ports READ only", "type": "array", "items": { "type": "object", + "description": "A node port", "properties": { - "adapter_number": { - "type": "integer", - "description": "Adapter slot" - }, - "data_link_types": { - "type": "object", - "properties": {}, - "description": "Available PCAP types for capture" + "name": { + "type": "string", + "description": "Port name" }, "short_name": { "type": "string", "description": "Short version of port name" }, - "link_type": { - "enum": [ - "ethernet", - "serial" - ], - "description": "Type of link" + "adapter_number": { + "type": "integer", + "description": "Adapter slot" }, - "mac_address": { + "adapter_type": { + "description": "Adapter type", "type": [ "string", "null" ], - "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$", - "description": "MAC address (if available)", "minLength": 1 }, "port_number": { "type": "integer", "description": "Port slot" }, - "adapter_type": { + "link_type": { + "description": "Type of link", + "enum": [ + "ethernet", + "serial" + ] + }, + "data_link_types": { + "type": "object", + "description": "Available PCAP types for capture", + "properties": {} + }, + "mac_address": { + "description": "MAC address (if available)", "type": [ "string", "null" ], - "description": "Adapter type", - "minLength": 1 - }, - "name": { - "type": "string", - "description": "Port name" - } - }, - "additionalProperties": false, - "description": "A node port" - }, - "description": "List of node ports READ only" - }, - "project_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Project UUID", - "minLength": 36 - }, - "custom_adapters": { - "type": "array", - "items": { - "type": "object", - "properties": { - "port_name": { - "type": "string", - "description": "Custom port name", - "minLength": 1 - }, - "adapter_number": { - "type": "integer", - "description": "Adapter number" - }, - "mac_address": { - "type": "string", - "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$", - "description": "Custom MAC address", - "minLength": 1 - }, - "adapter_type": { - "type": "string", - "description": "Custom adapter type", - "minLength": 1 + "minLength": 1, + "pattern": "^([0-9a-fA-F]{2}[:]){5}([0-9a-fA-F]{2})$" } }, - "additionalProperties": false, - "description": "Custom properties", - "required": [ - "adapter_number" - ] + "additionalProperties": false } - }, - "port_name_format": { - "type": "string", - "description": "Formating for port name {0} will be replace by port number" - }, - "node_type": { - "enum": [ - "cloud", - "nat", - "ethernet_hub", - "ethernet_switch", - "frame_relay_switch", - "atm_switch", - "docker", - "dynamips", - "vpcs", - "traceng", - "virtualbox", - "vmware", - "iou", - "qemu" - ], - "description": "Type of node" - }, - "width": { - "type": "integer", - "description": "Width of the node (Read only)" - } - }, - "additionalProperties": false - }, - "description": "Nodes elements" - }, - "drawings": { - "type": "array", - "items": { - "type": "object", - "properties": { - "svg": { - "type": "string", - "description": "SVG content of the drawing" - }, - "project_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Project UUID", - "minLength": 36 - }, - "drawing_id": { - "type": "string", - "maxLength": 36, - "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", - "description": "Drawing UUID", - "minLength": 36 - }, - "y": { - "type": "integer", - "description": "Y property" - }, - "rotation": { - "type": "integer", - "maximum": 360, - "minimum": -359, - "description": "Rotation of the element" - }, - "z": { - "type": "integer", - "description": "Z property" - }, - "x": { - "type": "integer", - "description": "X property" } }, - "$schema": "http://json-schema.org/draft-04/schema#", "additionalProperties": false, - "description": "An drawing object" - }, - "description": "Drawings elements" - }, - "computes": { - "type": "array", - "items": { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "Request validation to a GNS3 compute object instance", "required": [ - "compute_id", - "protocol", - "host", - "port", - "name" - ], - "type": "object", - "properties": { - "memory_usage_percent": { - "type": [ - "number", - "null" - ], - "maximum": 100, - "minimum": 0, - "description": "RAM usage of the compute. Read only" - }, - "cpu_usage_percent": { - "type": [ - "number", - "null" - ], - "maximum": 100, - "minimum": 0, - "description": "CPU usage of the compute. Read only" - }, - "capabilities": { - "$schema": "http://json-schema.org/draft-04/schema#", - "additionalProperties": false, - "required": [ - "version", - "node_types" - ], - "type": "object", - "properties": { - "version": { - "type": [ - "string", - "null" - ], - "description": "Version number" - }, - "platform": { - "type": "string", - "description": "Platform where the compute is running" - }, - "node_types": { - "type": "array", - "items": { - "enum": [ - "cloud", - "nat", - "ethernet_hub", - "ethernet_switch", - "frame_relay_switch", - "atm_switch", - "docker", - "dynamips", - "vpcs", - "traceng", - "virtualbox", - "vmware", - "iou", - "qemu" - ], - "description": "Type of node" - }, - "description": "Node type supported by the compute" - } - }, - "description": "Get what a server support" - }, - "connected": { - "type": "boolean", - "description": "Whether the controller is connected to the compute server or not" - }, - "user": { - "type": [ - "string", - "null" - ], - "description": "User for authentication" - }, - "port": { - "type": "integer", - "description": "Server port" - }, - "protocol": { - "enum": [ - "http", - "https" - ], - "description": "Server protocol" - }, - "host": { - "type": "string", - "description": "Server host" - }, - "compute_id": { - "type": "string", - "description": "Server identifier" - }, - "name": { - "type": "string", - "description": "Server name" - } - }, - "additionalProperties": false - }, - "description": "Computes servers" + "name", + "node_type", + "compute_id" + ] + } } }, - "additionalProperties": false, - "description": "The topology content", "required": [ "nodes", "links", "drawings", "computes" - ] - }, - "revision": { - "type": "integer", - "description": "Version of the .gns3 specification." + ], + "additionalProperties": false } }, - "description": "The topology" + "required": [ + "project_id", + "type", + "revision", + "version", + "name", + "topology" + ], + "additionalProperties": false } \ No newline at end of file diff --git a/scripts/documentation.sh b/scripts/documentation.sh index 065280eb..d75e6b0e 100755 --- a/scripts/documentation.sh +++ b/scripts/documentation.sh @@ -28,7 +28,7 @@ export PYTEST_BUILD_DOCUMENTATION=1 rm -Rf docs/api/ mkdir -p docs/api/examples -py.test-3 -v tests +python3 -m pytest -v tests export PYTHONPATH=. python3 gns3server/web/documentation.py From bc5eda82596ef346e872e142186473f2fdefea3f Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 14:36:18 +0700 Subject: [PATCH 28/33] Restore previously removed test. --- tests/utils/test_asyncio.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/utils/test_asyncio.py b/tests/utils/test_asyncio.py index 6254432f..004704f1 100644 --- a/tests/utils/test_asyncio.py +++ b/tests/utils/test_asyncio.py @@ -45,6 +45,15 @@ def test_exception_wait_run_in_executor(loop): result = loop.run_until_complete(asyncio.ensure_future(exec)) +@pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows") +def test_subprocess_check_output(loop, tmpdir, restore_original_path): + + path = str(tmpdir / "test") + exec = subprocess_check_output("echo", "-n", path) + result = loop.run_until_complete(asyncio.ensure_future(exec)) + assert result == path + + def test_wait_for_process_termination(loop): if sys.version_info >= (3, 5): From 53928b884ffc08bd9c0b05ed69624cb145d0bfeb Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 14:37:38 +0700 Subject: [PATCH 29/33] Bump version to 2.2.0dev5 --- gns3server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gns3server/version.py b/gns3server/version.py index 60184f10..330c2eb4 100644 --- a/gns3server/version.py +++ b/gns3server/version.py @@ -23,7 +23,7 @@ # or negative for a release candidate or beta (after the base version # number has been incremented) -__version__ = "2.2.0dev4" +__version__ = "2.2.0dev5" __version_info__ = (2, 2, 0, 99) # If it's a git checkout try to add the commit From 1289d20a14a57b9d7007df4b3a51bb861c27fdd0 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 15:19:44 +0700 Subject: [PATCH 30/33] Add missing files for API documentation. --- ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ternumberdportsportnumberdstartcapture.txt | 20 ++++ ...pternumberdportsportnumberdstopcapture.txt | 14 +++ ...ontroller_delete_appliancesapplianceid.txt | 14 +++ .../controller_get_appliancesapplianceid.txt | 28 +++++ .../examples/controller_post_appliances.txt | 62 ++++++++++ ...er_post_appliancesapplianceidduplicate.txt | 27 +++++ .../controller_put_appliancesapplianceid.txt | 38 +++++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ docs/api/v2/compute/network/networkports.rst | 13 +++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ ...tersadapternumberdportsportnumberdpcap.rst | 22 ++++ .../appliance/appliancesapplianceid.rst | 107 ++++++++++++++++++ .../appliancesapplianceidduplicate.rst | 41 +++++++ docs/api/v2/controller/compute/sidports.rst | 29 +++++ docs/api/v2/controller/server/ioulicense.rst | 22 ++++ 38 files changed, 927 insertions(+) create mode 100644 docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt create mode 100644 docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt create mode 100644 docs/api/examples/controller_delete_appliancesapplianceid.txt create mode 100644 docs/api/examples/controller_get_appliancesapplianceid.txt create mode 100644 docs/api/examples/controller_post_appliances.txt create mode 100644 docs/api/examples/controller_post_appliancesapplianceidduplicate.txt create mode 100644 docs/api/examples/controller_put_appliancesapplianceid.txt create mode 100644 docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/network/networkports.rst create mode 100644 docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst create mode 100644 docs/api/v2/controller/appliance/appliancesapplianceid.rst create mode 100644 docs/api/v2/controller/appliance/appliancesapplianceidduplicate.rst create mode 100644 docs/api/v2/controller/compute/sidports.rst create mode 100644 docs/api/v2/controller/server/ioulicense.rst diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..abfc64cc --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/e6bc5a49-d2ce-4799-a65b-f118646eca13/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/e6bc5a49-d2ce-4799-a65b-f118646eca13/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 104 +Content-Type: application/json +Date: Tue, 20 Nov 2018 05:59:53 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..e0d2e110 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/abfd8d3a-3c56-4b15-95d8-1da6c1c8faf3/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/abfd8d3a-3c56-4b15-95d8-1da6c1c8faf3/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 05:59:53 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..fc12dc53 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2edccb95-7fae-4448-bd31-16994adbadac/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2edccb95-7fae-4448-bd31-16994adbadac/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 104 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..91657555 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/7971dba5-3e69-4171-a2eb-4d536306de70/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/7971dba5-3e69-4171-a2eb-4d536306de70/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..6879682e --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3cccca4a-df04-435b-9005-d5958ad2313e/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3cccca4a-df04-435b-9005-d5958ad2313e/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 123 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:37 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..f05bd718 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/8550cc69-3698-4397-a0f6-4fde1152de95/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/8550cc69-3698-4397-a0f6-4fde1152de95/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:37 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..86e55122 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/837982bc-0f0c-4869-b121-fb59ee30bc85/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/837982bc-0f0c-4869-b121-fb59ee30bc85/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 123 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..953e2926 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d49396d8-b927-4a55-a99b-b5f858e60cf5/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d49396d8-b927-4a55-a99b-b5f858e60cf5/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:39 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..befe91fd --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a8bd1f77-0840-47ab-9cfa-895ce462d3fc/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a8bd1f77-0840-47ab-9cfa-895ce462d3fc/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 123 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..878ba5f3 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/452ccaf9-fc46-47ae-b36d-30370ce380c6/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/452ccaf9-fc46-47ae-b36d-30370ce380c6/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:40 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..43bbbfb8 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a860e414-f9c6-4135-a72b-465eb93eb898/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a860e414-f9c6-4135-a72b-465eb93eb898/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 123 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:54 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..464b5667 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/246d16ac-c644-4ad5-8614-b0edc0a954c5/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/246d16ac-c644-4ad5-8614-b0edc0a954c5/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:55 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt new file mode 100644 index 00000000..d44abf4a --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -0,0 +1,20 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/05aec68c-9d56-48cb-aa00-7a693aede93e/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/05aec68c-9d56-48cb-aa00-7a693aede93e/adapters/0/ports/0/start_capture HTTP/1.1 +{ + "capture_file_name": "test.pcap", + "data_link_type": "DLT_EN10MB" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 123 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture + +{ + "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" +} diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt new file mode 100644 index 00000000..64ad7965 --- /dev/null +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -0,0 +1,14 @@ +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96e6d109-d260-4bbb-9765-149098ac4fb3/adapters/0/ports/0/stop_capture' -d '{}' + +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96e6d109-d260-4bbb-9765-149098ac4fb3/adapters/0/ports/0/stop_capture HTTP/1.1 +{} + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:00:59 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture + diff --git a/docs/api/examples/controller_delete_appliancesapplianceid.txt b/docs/api/examples/controller_delete_appliancesapplianceid.txt new file mode 100644 index 00000000..02eb26a4 --- /dev/null +++ b/docs/api/examples/controller_delete_appliancesapplianceid.txt @@ -0,0 +1,14 @@ +curl -i -X DELETE 'http://localhost:3080/v2/appliances/259b41b8-d70a-4882-8ba3-017ee11ecd99' + +DELETE /v2/appliances/259b41b8-d70a-4882-8ba3-017ee11ecd99 HTTP/1.1 + + + +HTTP/1.1 204 +Connection: close +Content-Length: 0 +Content-Type: application/octet-stream +Date: Tue, 20 Nov 2018 06:01:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/appliances/{appliance_id} + diff --git a/docs/api/examples/controller_get_appliancesapplianceid.txt b/docs/api/examples/controller_get_appliancesapplianceid.txt new file mode 100644 index 00000000..ddb1c8dc --- /dev/null +++ b/docs/api/examples/controller_get_appliancesapplianceid.txt @@ -0,0 +1,28 @@ +curl -i -X GET 'http://localhost:3080/v2/appliances/0579a18f-77c6-4da6-b410-a9a1ab790606' + +GET /v2/appliances/0579a18f-77c6-4da6-b410-a9a1ab790606 HTTP/1.1 + + + +HTTP/1.1 200 +Connection: close +Content-Length: 380 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:01:00 GMT +ETag: "80cc9ad2c2b83a9f439433f47ad78f62" +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/appliances/{appliance_id} + +{ + "appliance_id": "0579a18f-77c6-4da6-b410-a9a1ab790606", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": false, + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "symbol": ":/symbols/vpcs_guest.svg" +} diff --git a/docs/api/examples/controller_post_appliances.txt b/docs/api/examples/controller_post_appliances.txt new file mode 100644 index 00000000..957d540c --- /dev/null +++ b/docs/api/examples/controller_post_appliances.txt @@ -0,0 +1,62 @@ +curl -i -X POST 'http://localhost:3080/v2/appliances' -d '{"appliance_type": "ethernet_hub", "compute_id": "local", "name": "Ethernet hub appliance"}' + +POST /v2/appliances HTTP/1.1 +{ + "appliance_type": "ethernet_hub", + "compute_id": "local", + "name": "Ethernet hub appliance" +} + + +HTTP/1.1 201 +Connection: close +Content-Length: 978 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:01:01 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/appliances + +{ + "appliance_id": "a5ee20d1-1217-4c2f-93d8-eefc1fba7a92", + "appliance_type": "ethernet_hub", + "builtin": false, + "category": "switch", + "compute_id": "local", + "default_name_format": "Hub{0}", + "name": "Ethernet hub appliance", + "ports_mapping": [ + { + "name": "Ethernet0", + "port_number": 0 + }, + { + "name": "Ethernet1", + "port_number": 1 + }, + { + "name": "Ethernet2", + "port_number": 2 + }, + { + "name": "Ethernet3", + "port_number": 3 + }, + { + "name": "Ethernet4", + "port_number": 4 + }, + { + "name": "Ethernet5", + "port_number": 5 + }, + { + "name": "Ethernet6", + "port_number": 6 + }, + { + "name": "Ethernet7", + "port_number": 7 + } + ], + "symbol": ":/symbols/hub.svg" +} diff --git a/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt b/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt new file mode 100644 index 00000000..3edc0cec --- /dev/null +++ b/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt @@ -0,0 +1,27 @@ +curl -i -X POST 'http://localhost:3080/v2/appliances/226095d7-c228-46d7-a7d6-dd488a9027a4/duplicate' -d '{}' + +POST /v2/appliances/226095d7-c228-46d7-a7d6-dd488a9027a4/duplicate HTTP/1.1 +{} + + +HTTP/1.1 201 +Connection: close +Content-Length: 380 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:01:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/appliances/{appliance_id}/duplicate + +{ + "appliance_id": "79876d13-3e21-434e-9b4c-3ace1c88493c", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": false, + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST", + "symbol": ":/symbols/vpcs_guest.svg" +} diff --git a/docs/api/examples/controller_put_appliancesapplianceid.txt b/docs/api/examples/controller_put_appliancesapplianceid.txt new file mode 100644 index 00000000..bcdfeddc --- /dev/null +++ b/docs/api/examples/controller_put_appliancesapplianceid.txt @@ -0,0 +1,38 @@ +curl -i -X PUT 'http://localhost:3080/v2/appliances/a96be97e-5ffe-4225-af8b-6347f858a2e5' -d '{"appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "category": "guest", "compute_id": "local", "console_auto_start": false, "console_type": "telnet", "default_name_format": "PC{0}", "name": "VPCS_TEST_RENAMED", "symbol": ":/symbols/vpcs_guest.svg"}' + +PUT /v2/appliances/a96be97e-5ffe-4225-af8b-6347f858a2e5 HTTP/1.1 +{ + "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST_RENAMED", + "symbol": ":/symbols/vpcs_guest.svg" +} + + +HTTP/1.1 200 +Connection: close +Content-Length: 388 +Content-Type: application/json +Date: Tue, 20 Nov 2018 06:01:00 GMT +Server: Python/3.6 GNS3/2.2.0dev4 +X-Route: /v2/appliances/{appliance_id} + +{ + "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_type": "vpcs", + "base_script_file": "vpcs_base_config.txt", + "builtin": false, + "category": "guest", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "default_name_format": "PC{0}", + "name": "VPCS_TEST_RENAMED", + "symbol": ":/symbols/vpcs_guest.svg" +} diff --git a/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..c1cbb7c0 --- /dev/null +++ b/docs/api/v2/compute/atm_switch/projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/atm_relay_switch/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/atm_relay_switch/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the switch + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..c9d8b64c --- /dev/null +++ b/docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/cloud/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the cloud + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..c52514dc --- /dev/null +++ b/docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..19695b66 --- /dev/null +++ b/docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..cd880412 --- /dev/null +++ b/docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/ethernet_hub/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the hub + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..e1d349d5 --- /dev/null +++ b/docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/ethernet_switch/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the switch + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..03856bed --- /dev/null +++ b/docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/frame_relay_switch/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the switch + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..2fdd89d9 --- /dev/null +++ b/docs/api/v2/compute/iou/projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/iou/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..b70f35fc --- /dev/null +++ b/docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/nat/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture (always 0) +- **port_number**: Port on the nat + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/network/networkports.rst b/docs/api/v2/compute/network/networkports.rst new file mode 100644 index 00000000..7e7a4c14 --- /dev/null +++ b/docs/api/v2/compute/network/networkports.rst @@ -0,0 +1,13 @@ +/v2/compute/network/ports +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/network/ports +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +List all the ports used by the server + +Response status codes +********************** +- **200**: OK + diff --git a/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..b5dc1803 --- /dev/null +++ b/docs/api/v2/compute/qemu/projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/qemu/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..b4651830 --- /dev/null +++ b/docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/traceng/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..6bfa6198 --- /dev/null +++ b/docs/api/v2/compute/virtualbox/projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/virtualbox/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..05c91f74 --- /dev/null +++ b/docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/vmware/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter (always 0) + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst new file mode 100644 index 00000000..2d2d191b --- /dev/null +++ b/docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst @@ -0,0 +1,22 @@ +/v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/pcap +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/compute/projects/**{project_id}**/vpcs/nodes/**{node_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/pcap +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Stream the pcap capture file + +Parameters +********** +- **project_id**: Project UUID +- **node_id**: Node UUID +- **adapter_number**: Adapter to steam a packet capture +- **port_number**: Port on the adapter + +Response status codes +********************** +- **200**: File returned +- **403**: Permission denied +- **404**: The file doesn't exist + diff --git a/docs/api/v2/controller/appliance/appliancesapplianceid.rst b/docs/api/v2/controller/appliance/appliancesapplianceid.rst new file mode 100644 index 00000000..953bd936 --- /dev/null +++ b/docs/api/v2/controller/appliance/appliancesapplianceid.rst @@ -0,0 +1,107 @@ +/v2/appliances/{appliance_id} +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/appliances/**{appliance_id}** +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Get an appliance + +Response status codes +********************** +- **200**: Appliance found +- **400**: Invalid request +- **404**: Appliance doesn't exist + +Output +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_get_appliancesapplianceid.txt + + +PUT /v2/appliances/**{appliance_id}** +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Update an appliance + +Response status codes +********************** +- **200**: Appliance updated +- **400**: Invalid request +- **404**: Appliance doesn't exist + +Input +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Output +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_put_appliancesapplianceid.txt + + +DELETE /v2/appliances/**{appliance_id}** +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Delete an appliance + +Parameters +********** +- **appliance_id**: appliance UUID + +Response status codes +********************** +- **204**: Appliance deleted +- **400**: Invalid request +- **404**: Appliance doesn't exist + +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_delete_appliancesapplianceid.txt + diff --git a/docs/api/v2/controller/appliance/appliancesapplianceidduplicate.rst b/docs/api/v2/controller/appliance/appliancesapplianceidduplicate.rst new file mode 100644 index 00000000..0a82fedf --- /dev/null +++ b/docs/api/v2/controller/appliance/appliancesapplianceidduplicate.rst @@ -0,0 +1,41 @@ +/v2/appliances/{appliance_id}/duplicate +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +POST /v2/appliances/**{appliance_id}**/duplicate +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Duplicate an appliance + +Parameters +********** +- **appliance_id**: Appliance UUID + +Response status codes +********************** +- **201**: Appliance duplicated +- **400**: Invalid request +- **404**: Appliance doesn't exist + +Output +******* +.. raw:: html + + + + + + + + + + + +
Name Mandatory Type Description
appliance_id string Appliance UUID from which the node has been created. Read only
appliance_type enum Possible values: cloud, ethernet_hub, ethernet_switch, docker, dynamips, vpcs, traceng, virtualbox, vmware, iou, qemu
builtin boolean Appliance is builtin
category Appliance category
compute_id string Compute identifier
default_name_format string Default name format
name string Appliance name
symbol string Symbol of the appliance
+ +Sample session +*************** + + +.. literalinclude:: ../../../examples/controller_post_appliancesapplianceidduplicate.txt + diff --git a/docs/api/v2/controller/compute/sidports.rst b/docs/api/v2/controller/compute/sidports.rst new file mode 100644 index 00000000..d3be0075 --- /dev/null +++ b/docs/api/v2/controller/compute/sidports.rst @@ -0,0 +1,29 @@ +/v2/computes/{compute_id}/ports +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/computes/**{compute_id}**/ports +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Get ports used by a compute + +Parameters +********** +- **compute_id**: Compute UUID + +Response status codes +********************** +- **200**: Ports information returned + +Output +******* +.. raw:: html + + + + + + + +
Name Mandatory Type Description
console_port_range array Console port range
console_ports array Console ports used by the compute
udp_port_range array UDP port range
udp_ports array UDP ports used by the compute
+ diff --git a/docs/api/v2/controller/server/ioulicense.rst b/docs/api/v2/controller/server/ioulicense.rst new file mode 100644 index 00000000..d1981d80 --- /dev/null +++ b/docs/api/v2/controller/server/ioulicense.rst @@ -0,0 +1,22 @@ +/v2/iou_license +------------------------------------------------------------------------------------------------------------------------------------------ + +.. contents:: + +GET /v2/iou_license +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Get the IOU license settings + +Response status codes +********************** +- **200**: IOU license settings returned + + +PUT /v2/iou_license +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Update the IOU license settings + +Response status codes +********************** +- **201**: IOU license settings updated + From 68ecbffcf107fcd5de4c78de12a383339758ff4e Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 15:35:46 +0700 Subject: [PATCH 31/33] Use Python3.6 to build the API documentation. --- readthedocs.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 readthedocs.yml diff --git a/readthedocs.yml b/readthedocs.yml new file mode 100644 index 00000000..87fa516b --- /dev/null +++ b/readthedocs.yml @@ -0,0 +1,5 @@ +build: + image: latest + +python: + version: 3.6 From 4e2b8bfe7c95818502b5fd8f411b31c69dfd0226 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 16:21:32 +0700 Subject: [PATCH 32/33] Add more information about appliances to the API documentation. --- .../compute_delete_projectsprojectid.txt | 4 +- ...lete_projectsprojectidcloudnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...delete_projectsprojectidiounodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...delete_projectsprojectidnatnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...elete_projectsprojectidqemunodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_projectsprojectidtracengnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...elete_projectsprojectidvpcsnodesnodeid.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- .../api/examples/compute_get_capabilities.txt | 6 +- docs/api/examples/compute_get_iouimages.txt | 4 +- .../compute_get_networkinterfaces.txt | 8 +- docs/api/examples/compute_get_projects.txt | 4 +- .../compute_get_projectsprojectid.txt | 4 +- ..._get_projectsprojectidcloudnodesnodeid.txt | 12 +- ...te_get_projectsprojectidiounodesnodeid.txt | 12 +- ...te_get_projectsprojectidnatnodesnodeid.txt | 10 +- ...e_get_projectsprojectidqemunodesnodeid.txt | 16 +-- ...et_projectsprojectidtracengnodesnodeid.txt | 12 +- ...projectsprojectidvirtualboxnodesnodeid.txt | 10 +- ...get_projectsprojectidvmwarenodesnodeid.txt | 14 +-- ...e_get_projectsprojectidvpcsnodesnodeid.txt | 12 +- .../api/examples/compute_get_qemubinaries.txt | 4 +- .../examples/compute_get_qemucapabilities.txt | 4 +- docs/api/examples/compute_get_version.txt | 6 +- docs/api/examples/compute_post_projects.txt | 4 +- .../compute_post_projectsprojectidclose.txt | 4 +- ...mpute_post_projectsprojectidcloudnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ctsprojectiddockernodesnodeidduplicate.txt | 10 +- ...compute_post_projectsprojectidiounodes.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ojectsprojectidiounodesnodeidduplicate.txt | 10 +- ..._projectsprojectidiounodesnodeidreload.txt | 8 +- ...t_projectsprojectidiounodesnodeidstart.txt | 12 +- ...st_projectsprojectidiounodesnodeidstop.txt | 8 +- ...compute_post_projectsprojectidnatnodes.txt | 6 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...compute_post_projectsprojectidportsudp.txt | 4 +- ...ompute_post_projectsprojectidqemunodes.txt | 16 +-- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...jectsprojectidqemunodesnodeidduplicate.txt | 10 +- ...projectsprojectidqemunodesnodeidreload.txt | 8 +- ...projectsprojectidqemunodesnodeidresume.txt | 8 +- ..._projectsprojectidqemunodesnodeidstart.txt | 16 +-- ...t_projectsprojectidqemunodesnodeidstop.txt | 8 +- ...rojectsprojectidqemunodesnodeidsuspend.txt | 8 +- ...ute_post_projectsprojectidtracengnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...tsprojectidtracengnodesnodeidduplicate.txt | 10 +- ...jectsprojectidtracengnodesnodeidreload.txt | 8 +- ...ojectsprojectidtracengnodesnodeidstart.txt | 12 +- ...rojectsprojectidtracengnodesnodeidstop.txt | 8 +- ..._post_projectsprojectidvirtualboxnodes.txt | 6 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...tsprojectidvirtualboxnodesnodeidreload.txt | 8 +- ...tsprojectidvirtualboxnodesnodeidresume.txt | 8 +- ...ctsprojectidvirtualboxnodesnodeidstart.txt | 8 +- ...ectsprojectidvirtualboxnodesnodeidstop.txt | 8 +- ...sprojectidvirtualboxnodesnodeidsuspend.txt | 8 +- ...pute_post_projectsprojectidvmwarenodes.txt | 14 +-- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...ojectsprojectidvmwarenodesnodeidreload.txt | 8 +- ...ojectsprojectidvmwarenodesnodeidresume.txt | 8 +- ...rojectsprojectidvmwarenodesnodeidstart.txt | 8 +- ...projectsprojectidvmwarenodesnodeidstop.txt | 8 +- ...jectsprojectidvmwarenodesnodeidsuspend.txt | 8 +- ...ompute_post_projectsprojectidvpcsnodes.txt | 8 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ternumberdportsportnumberdstartcapture.txt | 10 +- ...pternumberdportsportnumberdstopcapture.txt | 8 +- ...jectsprojectidvpcsnodesnodeidduplicate.txt | 10 +- ...projectsprojectidvpcsnodesnodeidreload.txt | 8 +- ..._projectsprojectidvpcsnodesnodeidstart.txt | 12 +- ...t_projectsprojectidvpcsnodesnodeidstop.txt | 8 +- docs/api/examples/compute_post_qemuimg.txt | 4 +- .../compute_put_projectsprojectid.txt | 4 +- ..._put_projectsprojectidcloudnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...put_projectsprojectiddockernodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_put_projectsprojectidiounodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...te_put_projectsprojectidnatnodesnodeid.txt | 10 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...e_put_projectsprojectidqemunodesnodeid.txt | 16 +-- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ut_projectsprojectidtracengnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...projectsprojectidvirtualboxnodesnodeid.txt | 10 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...put_projectsprojectidvmwarenodesnodeid.txt | 14 +-- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...e_put_projectsprojectidvpcsnodesnodeid.txt | 12 +- ...ptersadapternumberdportsportnumberdnio.txt | 8 +- ...ontroller_delete_appliancesapplianceid.txt | 8 +- .../controller_delete_computescomputeid.txt | 4 +- .../controller_delete_projectsprojectid.txt | 8 +- ...ete_projectsprojectiddrawingsdrawingid.txt | 8 +- ...er_delete_projectsprojectidlinkslinkid.txt | 8 +- ...er_delete_projectsprojectidnodesnodeid.txt | 8 +- ...e_projectsprojectidsnapshotssnapshotid.txt | 8 +- .../examples/controller_get_appliances.txt | 6 +- .../controller_get_appliancesapplianceid.txt | 12 +- .../controller_get_appliancestemplates.txt | 4 +- docs/api/examples/controller_get_computes.txt | 4 +- .../controller_get_computescomputeid.txt | 4 +- ...er_get_computescomputeidemulatoraction.txt | 4 +- ...er_get_computescomputeidemulatorimages.txt | 4 +- docs/api/examples/controller_get_gns3vm.txt | 4 +- .../examples/controller_get_gns3vmengines.txt | 8 +- .../controller_get_gns3vmenginesenginevms.txt | 4 +- docs/api/examples/controller_get_projects.txt | 6 +- .../controller_get_projectsprojectid.txt | 12 +- ...ntroller_get_projectsprojectiddrawings.txt | 12 +- ...get_projectsprojectiddrawingsdrawingid.txt | 12 +- .../controller_get_projectsprojectidlinks.txt | 16 +-- ...oller_get_projectsprojectidlinkslinkid.txt | 16 +-- ...tsprojectidlinkslinkidavailablefilters.txt | 8 +- .../controller_get_projectsprojectidnodes.txt | 14 +-- ...oller_get_projectsprojectidnodesnodeid.txt | 14 +-- ...projectidnodesnodeiddynamipsautoidlepc.txt | 8 +- ...ctidnodesnodeiddynamipsidlepcproposals.txt | 8 +- ...troller_get_projectsprojectidsnapshots.txt | 14 +-- docs/api/examples/controller_get_symbols.txt | 4 +- docs/api/examples/controller_get_version.txt | 6 +- .../examples/controller_post_appliances.txt | 95 ++++++++------- ...er_post_appliancesapplianceidduplicate.txt | 10 +- .../api/examples/controller_post_computes.txt | 4 +- ...oller_post_computescomputeidautoidlepc.txt | 4 +- ...r_post_computescomputeidemulatoraction.txt | 4 +- .../api/examples/controller_post_projects.txt | 6 +- .../examples/controller_post_projectsload.txt | 8 +- ...controller_post_projectsprojectidclose.txt | 12 +- ...troller_post_projectsprojectiddrawings.txt | 12 +- ...roller_post_projectsprojectidduplicate.txt | 12 +- ...controller_post_projectsprojectidlinks.txt | 12 +- ...ojectsprojectidlinkslinkidstartcapture.txt | 12 +- ...rojectsprojectidlinkslinkidstopcapture.txt | 12 +- ...controller_post_projectsprojectidnodes.txt | 14 +-- ..._projectsprojectidnodesnodeidduplicate.txt | 14 +-- ...ost_projectsprojectidnodesnodeidreload.txt | 14 +-- ...post_projectsprojectidnodesnodeidstart.txt | 14 +-- ..._post_projectsprojectidnodesnodeidstop.txt | 14 +-- ...st_projectsprojectidnodesnodeidsuspend.txt | 14 +-- ...ller_post_projectsprojectidnodesreload.txt | 8 +- ...oller_post_projectsprojectidnodesstart.txt | 8 +- ...roller_post_projectsprojectidnodesstop.txt | 8 +- ...ler_post_projectsprojectidnodessuspend.txt | 8 +- .../controller_post_projectsprojectidopen.txt | 12 +- ...roller_post_projectsprojectidsnapshots.txt | 14 +-- ...ctsprojectidsnapshotssnapshotidrestore.txt | 12 +- .../api/examples/controller_post_shutdown.txt | 4 +- docs/api/examples/controller_post_version.txt | 10 +- .../controller_put_appliancesapplianceid.txt | 12 +- .../controller_put_computescomputeid.txt | 4 +- docs/api/examples/controller_put_gns3vm.txt | 4 +- .../controller_put_projectsprojectid.txt | 6 +- ...put_projectsprojectiddrawingsdrawingid.txt | 12 +- ...oller_put_projectsprojectidlinkslinkid.txt | 20 ++-- ...oller_put_projectsprojectidnodesnodeid.txt | 14 +-- docs/api/notifications/appliance.created.json | 2 +- docs/api/notifications/appliance.deleted.json | 2 +- docs/api/notifications/appliance.updated.json | 2 +- docs/api/notifications/drawing.created.json | 4 +- docs/api/notifications/drawing.deleted.json | 4 +- docs/api/notifications/drawing.updated.json | 4 +- docs/api/notifications/link.created.json | 8 +- docs/api/notifications/link.deleted.json | 4 +- docs/api/notifications/link.updated.json | 8 +- docs/api/notifications/node.updated.json | 2 +- docs/api/notifications/project.closed.json | 4 +- docs/api/notifications/project.updated.json | 2 +- docs/api/notifications/snapshot.restored.json | 6 +- docs/controller_notifications.rst | 2 +- docs/curl.rst | 112 ++++++++++++++---- .../handlers/api/controller/test_appliance.py | 24 ++-- 201 files changed, 1000 insertions(+), 927 deletions(-) diff --git a/docs/api/examples/compute_delete_projectsprojectid.txt b/docs/api/examples/compute_delete_projectsprojectid.txt index b4edfe5d..6800e0c4 100644 --- a/docs/api/examples/compute_delete_projectsprojectid.txt +++ b/docs/api/examples/compute_delete_projectsprojectid.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt index c64b5ff6..bfc8b36a 100644 --- a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/aefeb881-7e54-4511-92c2-3a24f74f1ce1' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/19e91d19-71a9-4bf5-8eb2-c2a2bea2f35b' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/aefeb881-7e54-4511-92c2-3a24f74f1ce1 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/19e91d19-71a9-4bf5-8eb2-c2a2bea2f35b HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:52 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:40 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 1e74d65f..cf6e0e05 100644 --- a/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/f10a3d19-4a34-4f20-8970-9be7ab98ec3c/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/83f94250-71bb-41db-a0e9-ae32b4c9dc34/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/f10a3d19-4a34-4f20-8970-9be7ab98ec3c/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/83f94250-71bb-41db-a0e9-ae32b4c9dc34/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:51 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 523d959e..27de0cd2 100644 --- a/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bdee5d90-d9da-4fdc-8ae7-799669ee81f1/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c058d260-bf03-4672-a380-b18fb0058727/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bdee5d90-d9da-4fdc-8ae7-799669ee81f1/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c058d260-bf03-4672-a380-b18fb0058727/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:44 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt index 2c360106..27c0478d 100644 --- a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59cbc63c-b544-446f-a214-a058841f3e11' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/55a3c8a2-97bd-41cd-9246-9af1e3b1230a' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/59cbc63c-b544-446f-a214-a058841f3e11 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/55a3c8a2-97bd-41cd-9246-9af1e3b1230a HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index ada76c5b..0462a995 100644 --- a/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bf484e0c-01a1-4343-a838-7f0079c7f32b/adapters/1/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/7808b632-cdc2-4c4e-9731-1e8d44e26023/adapters/1/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bf484e0c-01a1-4343-a838-7f0079c7f32b/adapters/1/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/7808b632-cdc2-4c4e-9731-1e8d44e26023/adapters/1/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt index 10a76313..3865dd49 100644 --- a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/43e6486e-4503-4528-8458-78f1c7d3fcd6' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/8d763542-81f0-4924-9dea-0cc683edf7c9' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/43e6486e-4503-4528-8458-78f1c7d3fcd6 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/8d763542-81f0-4924-9dea-0cc683edf7c9 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 74f146b4..2e7f2e14 100644 --- a/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/54245544-0583-43aa-91de-4018e31a2027/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/35f9a0f8-5fb4-4014-812c-20c3c78b6843/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/54245544-0583-43aa-91de-4018e31a2027/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/35f9a0f8-5fb4-4014-812c-20c3c78b6843/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt index d6c0f718..0b93174a 100644 --- a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5d8967b6-4175-4b6c-89d3-1c721a303180' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/16b16324-b001-4cc7-ba84-006c2529b8bd' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5d8967b6-4175-4b6c-89d3-1c721a303180 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/16b16324-b001-4cc7-ba84-006c2529b8bd HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:20 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:07 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 873c850f..2a1c69e0 100644 --- a/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6732d7d5-6c6a-4a26-b7f7-63294fa99fcb/adapters/1/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3bbf83b5-ede3-4c76-b380-80c70e64a714/adapters/1/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6732d7d5-6c6a-4a26-b7f7-63294fa99fcb/adapters/1/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3bbf83b5-ede3-4c76-b380-80c70e64a714/adapters/1/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:26 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:17 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt index 58e51ba5..3eed0bd9 100644 --- a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8df2de82-8e09-4679-96ca-f61675536ec7' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8e856e02-5a1f-4bf2-9443-71b85ce51def' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8df2de82-8e09-4679-96ca-f61675536ec7 HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8e856e02-5a1f-4bf2-9443-71b85ce51def HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 3b205d34..22c67067 100644 --- a/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/bdbe10b4-3e29-4245-85ed-5dd8951eb759/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/423379d1-ee1c-45ec-8d8f-d2625df72ecf/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/bdbe10b4-3e29-4245-85ed-5dd8951eb759/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/423379d1-ee1c-45ec-8d8f-d2625df72ecf/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index b184d4df..892a320c 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2a0d6b1d-3f71-4b9d-b5f5-57ffb6fa8606/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/486114ef-3ede-41a2-801c-85228c9946d7/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2a0d6b1d-3f71-4b9d-b5f5-57ffb6fa8606/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/486114ef-3ede-41a2-801c-85228c9946d7/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 09760ca9..f19d5af5 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/3aefba69-0aa7-47f2-b21f-5c2e5ec79dc8/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d4618803-39d1-4dda-8299-11d12f72077f/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/3aefba69-0aa7-47f2-b21f-5c2e5ec79dc8/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d4618803-39d1-4dda-8299-11d12f72077f/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:52 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:07 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt index 4c6f26d2..5a741e1d 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce6fd8d1-2290-42a3-a23d-9c7b8d771f8f' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/44c633fc-932e-4dfb-84be-20155a6d979b' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce6fd8d1-2290-42a3-a23d-9c7b8d771f8f HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/44c633fc-932e-4dfb-84be-20155a6d979b HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} diff --git a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index c59378ea..3459539d 100644 --- a/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a5ff24c0-4247-45a0-bb3a-772d55fbc007/adapters/0/ports/0/nio' +curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/48d60c02-9e24-42b8-be20-07133dffe28c/adapters/0/ports/0/nio' -DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a5ff24c0-4247-45a0-bb3a-772d55fbc007/adapters/0/ports/0/nio HTTP/1.1 +DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/48d60c02-9e24-42b8-be20-07133dffe28c/adapters/0/ports/0/nio HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio diff --git a/docs/api/examples/compute_get_capabilities.txt b/docs/api/examples/compute_get_capabilities.txt index 782dbaad..7aaca10e 100644 --- a/docs/api/examples/compute_get_capabilities.txt +++ b/docs/api/examples/compute_get_capabilities.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 366 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:50 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/capabilities { @@ -30,5 +30,5 @@ X-Route: /v2/compute/capabilities "iou" ], "platform": "linuxdebian", - "version": "2.2.0dev4" + "version": "2.2.0dev5" } diff --git a/docs/api/examples/compute_get_iouimages.txt b/docs/api/examples/compute_get_iouimages.txt index c1a3058e..99bdb8d5 100644 --- a/docs/api/examples/compute_get_iouimages.txt +++ b/docs/api/examples/compute_get_iouimages.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 149 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:57 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/iou/images [ diff --git a/docs/api/examples/compute_get_networkinterfaces.txt b/docs/api/examples/compute_get_networkinterfaces.txt index c01457db..f7a17f93 100644 --- a/docs/api/examples/compute_get_networkinterfaces.txt +++ b/docs/api/examples/compute_get_networkinterfaces.txt @@ -6,10 +6,10 @@ GET /v2/compute/network/interfaces HTTP/1.1 HTTP/1.1 200 Connection: close -Content-Length: 2297 +Content-Length: 2294 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/network/interfaces [ @@ -96,7 +96,7 @@ X-Route: /v2/compute/network/interfaces }, { "id": "wlp58s0", - "ip_address": "192.168.0.110", + "ip_address": "10.77.2.57", "mac_address": "9c:b6:d0:dc:20:29", "name": "wlp58s0", "netmask": "255.255.255.0", diff --git a/docs/api/examples/compute_get_projects.txt b/docs/api/examples/compute_get_projects.txt index 837b426e..f8efb3d7 100644 --- a/docs/api/examples/compute_get_projects.txt +++ b/docs/api/examples/compute_get_projects.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 252 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects [ diff --git a/docs/api/examples/compute_get_projectsprojectid.txt b/docs/api/examples/compute_get_projectsprojectid.txt index e5c15f25..aadca0f9 100644 --- a/docs/api/examples/compute_get_projectsprojectid.txt +++ b/docs/api/examples/compute_get_projectsprojectid.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 103 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id} { diff --git a/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt index 34edee99..565efbb7 100644 --- a/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/460c2684-9681-43bd-bceb-1cad9052b80e' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/237fd74b-5555-4c82-84c7-db749d868cc8' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/460c2684-9681-43bd-bceb-1cad9052b80e HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/237fd74b-5555-4c82-84c7-db749d868cc8 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1742 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:51 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} { @@ -66,8 +66,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} } ], "name": "Cloud 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/460c2684-9681-43bd-bceb-1cad9052b80e", - "node_id": "460c2684-9681-43bd-bceb-1cad9052b80e", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/builtin/237fd74b-5555-4c82-84c7-db749d868cc8", + "node_id": "237fd74b-5555-4c82-84c7-db749d868cc8", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt index 522acedf..4281267f 100644 --- a/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82c72035-b684-4aad-ae9f-d3acc77186d0' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/dc2c441a-3e84-4b87-9e87-10cb2c98fa03' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82c72035-b684-4aad-ae9f-d3acc77186d0 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/dc2c441a-3e84-4b87-9e87-10cb2c98fa03 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 614 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:46 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/82c72035-b684-4aad-ae9f-d3acc77186d0", - "node_id": "82c72035-b684-4aad-ae9f-d3acc77186d0", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/iou/dc2c441a-3e84-4b87-9e87-10cb2c98fa03", + "node_id": "dc2c441a-3e84-4b87-9e87-10cb2c98fa03", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt index 00bfc6df..4457ca96 100644 --- a/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d9e63280-0f98-4299-9d23-537e6deda69f' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/dcfe05a4-ccd7-427c-b967-c68faf73460e' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d9e63280-0f98-4299-9d23-537e6deda69f HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/dcfe05a4-ccd7-427c-b967-c68faf73460e HTTP/1.1 @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 335 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} { "name": "Nat 1", - "node_id": "d9e63280-0f98-4299-9d23-537e6deda69f", + "node_id": "dcfe05a4-ccd7-427c-b967-c68faf73460e", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt index 2425d2dc..4260b429 100644 --- a/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2dc16b38-dd03-4aa1-b869-b202553f249c' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/84167c7e-415c-49b2-9d71-a4d2e4adb892' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2dc16b38-dd03-4aa1-b869-b202553f249c HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/84167c7e-415c-49b2-9d71-a4d2e4adb892 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1381 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:54 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} { @@ -43,16 +43,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:24:9c:00", + "mac_address": "0c:dd:80:b8:92:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/2dc16b38-dd03-4aa1-b869-b202553f249c", - "node_id": "2dc16b38-dd03-4aa1-b869-b202553f249c", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/84167c7e-415c-49b2-9d71-a4d2e4adb892", + "node_id": "84167c7e-415c-49b2-9d71-a4d2e4adb892", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", + "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64", "ram": 256, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt index 478e1380..3e6ff866 100644 --- a/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/75fb315d-2d50-4bf2-bfd2-76d36422ea69' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/660276d2-b580-45ab-bc32-3173a277dc5d' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/75fb315d-2d50-4bf2-bfd2-76d36422ea69 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/660276d2-b580-45ab-bc32-3173a277dc5d HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 443 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} { @@ -19,8 +19,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/75fb315d-2d50-4bf2-bfd2-76d36422ea69", - "node_id": "75fb315d-2d50-4bf2-bfd2-76d36422ea69", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/660276d2-b580-45ab-bc32-3173a277dc5d", + "node_id": "660276d2-b580-45ab-bc32-3173a277dc5d", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt index 0036785c..e43d467d 100644 --- a/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvirtualboxnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/760cae83-2525-4d1f-95ff-4c271471e6b2' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/de1b5955-2b39-42b2-84a6-b28b96b1b776' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/760cae83-2525-4d1f-95ff-4c271471e6b2 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/de1b5955-2b39-42b2-84a6-b28b96b1b776 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 466 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} { @@ -21,7 +21,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} "linked_clone": false, "name": "VMTEST", "node_directory": null, - "node_id": "760cae83-2525-4d1f-95ff-4c271471e6b2", + "node_id": "de1b5955-2b39-42b2-84a6-b28b96b1b776", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt index cb6415ea..b4433890 100644 --- a/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvmwarenodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/de1e8952-8b8e-471f-9bad-2bfed5bd1313' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/7eea60ce-bb21-4ec1-88a2-f928417dfaca' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/de1e8952-8b8e-471f-9bad-2bfed5bd1313 HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/7eea60ce-bb21-4ec1-88a2-f928417dfaca HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 594 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:41 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:53 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} { @@ -20,11 +20,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} "headless": false, "linked_clone": false, "name": "VMTEST", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/de1e8952-8b8e-471f-9bad-2bfed5bd1313", - "node_id": "de1e8952-8b8e-471f-9bad-2bfed5bd1313", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/7eea60ce-bb21-4ec1-88a2-f928417dfaca", + "node_id": "7eea60ce-bb21-4ec1-88a2-f928417dfaca", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_get0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-48/test_vmware_get0/test.vmx" } diff --git a/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt index d7e6daaa..fec8a528 100644 --- a/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_get_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/17f905aa-64c7-4373-815b-bc67bd16d9dd' +curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3ca5df24-1af3-40d1-883d-8cc9a0b0687b' -GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/17f905aa-64c7-4373-815b-bc67bd16d9dd HTTP/1.1 +GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3ca5df24-1af3-40d1-883d-8cc9a0b0687b HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 384 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} { @@ -17,8 +17,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/17f905aa-64c7-4373-815b-bc67bd16d9dd", - "node_id": "17f905aa-64c7-4373-815b-bc67bd16d9dd", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/3ca5df24-1af3-40d1-883d-8cc9a0b0687b", + "node_id": "3ca5df24-1af3-40d1-883d-8cc9a0b0687b", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_get_qemubinaries.txt b/docs/api/examples/compute_get_qemubinaries.txt index c4d54404..85e040e8 100644 --- a/docs/api/examples/compute_get_qemubinaries.txt +++ b/docs/api/examples/compute_get_qemubinaries.txt @@ -12,8 +12,8 @@ HTTP/1.1 200 Connection: close Content-Length: 212 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:29 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:19 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/qemu/binaries [ diff --git a/docs/api/examples/compute_get_qemucapabilities.txt b/docs/api/examples/compute_get_qemucapabilities.txt index fe2dee2c..a17aee13 100644 --- a/docs/api/examples/compute_get_qemucapabilities.txt +++ b/docs/api/examples/compute_get_qemucapabilities.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 39 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:34 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/qemu/capabilities { diff --git a/docs/api/examples/compute_get_version.txt b/docs/api/examples/compute_get_version.txt index f8c1940b..fdd6183d 100644 --- a/docs/api/examples/compute_get_version.txt +++ b/docs/api/examples/compute_get_version.txt @@ -8,11 +8,11 @@ HTTP/1.1 200 Connection: close Content-Length: 49 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/version { "local": true, - "version": "2.2.0dev4" + "version": "2.2.0dev5" } diff --git a/docs/api/examples/compute_post_projects.txt b/docs/api/examples/compute_post_projects.txt index 1c8b267c..12babc47 100644 --- a/docs/api/examples/compute_post_projects.txt +++ b/docs/api/examples/compute_post_projects.txt @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 103 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects { diff --git a/docs/api/examples/compute_post_projectsprojectidclose.txt b/docs/api/examples/compute_post_projectsprojectidclose.txt index c7554637..d696697b 100644 --- a/docs/api/examples/compute_post_projectsprojectidclose.txt +++ b/docs/api/examples/compute_post_projectsprojectidclose.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/close diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt index 655bdeb7..e5891ec2 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1742 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:50 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes { @@ -68,8 +68,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes } ], "name": "Cloud 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/524975d2-49e3-4a05-9a8f-746ba557ced6", - "node_id": "524975d2-49e3-4a05-9a8f-746ba557ced6", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/builtin/35762d2a-60d6-4d32-a333-0cbc6b555fad", + "node_id": "35762d2a-60d6-4d32-a333-0cbc6b555fad", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index ac8406de..3161bed0 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/67f42e9b-8b98-4375-86ec-4575beabab6b/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/bbff8f30-4a35-43d9-a53c-73593708b162/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/67f42e9b-8b98-4375-86ec-4575beabab6b/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/bbff8f30-4a35-43d9-a53c-73593708b162/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:51 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index abfc64cc..c706e668 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/e6bc5a49-d2ce-4799-a65b-f118646eca13/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d45712a9-e9f8-451b-9174-14ccfc94dfec/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/e6bc5a49-d2ce-4799-a65b-f118646eca13/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/d45712a9-e9f8-451b-9174-14ccfc94dfec/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 104 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:53 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:40 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index e0d2e110..0cabb064 100644 --- a/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/abfd8d3a-3c56-4b15-95d8-1da6c1c8faf3/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a41f01ac-97fc-4d20-bc86-b40f6778fb5a/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/abfd8d3a-3c56-4b15-95d8-1da6c1c8faf3/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a41f01ac-97fc-4d20-bc86-b40f6778fb5a/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:53 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:40 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index ab9258ec..5601ba05 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/1cbcb6f8-cc5d-468e-8437-8f03b3b7b914/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b2d301f0-f4b6-4d5d-9b48-bd44898d3dcb/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/1cbcb6f8-cc5d-468e-8437-8f03b3b7b914/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b2d301f0-f4b6-4d5d-9b48-bd44898d3dcb/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:41 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index 85299e11..1297e43e 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b4e63539-a7f4-4cc5-a7b4-9d1a44fc9a0c/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/799ef06f-46b5-47af-9682-6c2de6edc566/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/b4e63539-a7f4-4cc5-a7b4-9d1a44fc9a0c/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/799ef06f-46b5-47af-9682-6c2de6edc566/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 104 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:44 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 1747e3d1..57bb43ca 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/3e187ec1-989a-4841-9e22-99d9045c2ffe/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/09a4430a-4c12-4b9b-ac17-a7f83081591a/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/3e187ec1-989a-4841-9e22-99d9045c2ffe/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/09a4430a-4c12-4b9b-ac17-a7f83081591a/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:44 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt index 7ab1918d..7a9a6cdb 100644 --- a/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/20929ed1-6f2f-4a85-bc5d-ddbb9ad3a47e/duplicate' -d '{"destination_node_id": "051bd795-8ef1-44e8-9a23-cc0c127227ed"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/424f05ae-0104-457c-88c5-a7985adeebc3/duplicate' -d '{"destination_node_id": "b7048067-799a-4bc5-9857-180c4a8b6ee3"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/20929ed1-6f2f-4a85-bc5d-ddbb9ad3a47e/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/424f05ae-0104-457c-88c5-a7985adeebc3/duplicate HTTP/1.1 { - "destination_node_id": "051bd795-8ef1-44e8-9a23-cc0c127227ed" + "destination_node_id": "b7048067-799a-4bc5-9857-180c4a8b6ee3" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:44 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidiounodes.txt b/docs/api/examples/compute_post_projectsprojectidiounodes.txt index e24e2b61..c1530d52 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodes.txt @@ -1,9 +1,9 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes' -d '{"name": "PC TEST 1", "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", "path": "iou.bin", "startup_config_content": "hostname test"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes' -d '{"name": "PC TEST 1", "node_id": "88d2ce5b-f041-48ef-9f1a-a699261cfe43", "path": "iou.bin", "startup_config_content": "hostname test"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes HTTP/1.1 { "name": "PC TEST 1", - "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", + "node_id": "88d2ce5b-f041-48ef-9f1a-a699261cfe43", "path": "iou.bin", "startup_config_content": "hostname test" } @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 614 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:46 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes { @@ -26,8 +26,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/0b95e307-c0fc-4ef7-bf85-f5b24433a80a", - "node_id": "0b95e307-c0fc-4ef7-bf85-f5b24433a80a", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/iou/88d2ce5b-f041-48ef-9f1a-a699261cfe43", + "node_id": "88d2ce5b-f041-48ef-9f1a-a699261cfe43", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 909e3c99..f125af9c 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/20cba7fa-176e-4ed5-8a77-44b792e7265f/adapters/1/ports/0/nio' -d '{"ethernet_device": "docker0", "type": "nio_ethernet"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/908b269b-9e0e-4ee8-b961-4b146381529f/adapters/1/ports/0/nio' -d '{"ethernet_device": "docker0", "type": "nio_ethernet"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/20cba7fa-176e-4ed5-8a77-44b792e7265f/adapters/1/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/908b269b-9e0e-4ee8-b961-4b146381529f/adapters/1/ports/0/nio HTTP/1.1 { "ethernet_device": "docker0", "type": "nio_ethernet" @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 64 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index f42f85f6..7ec037ca 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b5148884-427c-44d9-b606-9d53e33e718a/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/6836c8be-f0c2-42de-9cd6-7f33c9e8d382/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b5148884-427c-44d9-b606-9d53e33e718a/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/6836c8be-f0c2-42de-9cd6-7f33c9e8d382/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 104 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 70b59fe5..182eaee8 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bfb62268-221d-4507-89b3-4196a5ecbeb7/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82cb4f12-95d6-44ee-ac96-210a188b96d8/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/bfb62268-221d-4507-89b3-4196a5ecbeb7/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/82cb4f12-95d6-44ee-ac96-210a188b96d8/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt index 8264af9b..bcb026a0 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/8b862a2d-4c84-4332-aea9-c03a88bd4cf1/duplicate' -d '{"destination_node_id": "7a6e8a08-6178-4982-9ace-85aa5c180f6e"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/1e3bda54-533f-40fe-85a0-7a483ce5af78/duplicate' -d '{"destination_node_id": "676bdcfa-f3f8-4a0c-a6fc-7c8390655f1e"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/8b862a2d-4c84-4332-aea9-c03a88bd4cf1/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/1e3bda54-533f-40fe-85a0-7a483ce5af78/duplicate HTTP/1.1 { - "destination_node_id": "7a6e8a08-6178-4982-9ace-85aa5c180f6e" + "destination_node_id": "676bdcfa-f3f8-4a0c-a6fc-7c8390655f1e" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt index a4a3a1cc..f02b23c5 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a475eb09-0381-47e1-8227-34bd8603c88f/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/277f9fbd-c38c-49ed-b930-c25a04966211/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a475eb09-0381-47e1-8227-34bd8603c88f/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/277f9fbd-c38c-49ed-b930-c25a04966211/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt index 446a5e6e..37aea380 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/9a89a826-338b-4834-8b83-97a6a2af6e9c/start' -d '{"iourc_content": "test"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/29040b8a-73a5-429a-8a17-e0a1b9881bae/start' -d '{"iourc_content": "test"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/9a89a826-338b-4834-8b83-97a6a2af6e9c/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/29040b8a-73a5-429a-8a17-e0a1b9881bae/start HTTP/1.1 { "iourc_content": "test" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 614 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:46 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start { @@ -23,8 +23,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start "l1_keepalives": false, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "PC TEST 1", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/9a89a826-338b-4834-8b83-97a6a2af6e9c", - "node_id": "9a89a826-338b-4834-8b83-97a6a2af6e9c", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/iou/29040b8a-73a5-429a-8a17-e0a1b9881bae", + "node_id": "29040b8a-73a5-429a-8a17-e0a1b9881bae", "nvram": 128, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt index e9b0d46b..56f6389e 100644 --- a/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c993730f-6cd7-4298-90ad-f7fff52d6166/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/22f9c785-fd8a-4e24-8618-31fbdde11952/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c993730f-6cd7-4298-90ad-f7fff52d6166/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/22f9c785-fd8a-4e24-8618-31fbdde11952/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 05:59:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodes.txt b/docs/api/examples/compute_post_projectsprojectidnatnodes.txt index c1724238..affddb07 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodes.txt @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 335 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:48 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes { "name": "Nat 1", - "node_id": "6a8086f1-d205-4bff-bf57-ecf8e4e67ce4", + "node_id": "1d65eae5-1965-4e51-a804-45e7cf49e598", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 20d5b90c..29ee59da 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19ef641b-65e2-4b08-9e3c-63b88cae1029/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/c324ec38-58ad-46de-b79f-527464aebae6/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/19ef641b-65e2-4b08-9e3c-63b88cae1029/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/c324ec38-58ad-46de-b79f-527464aebae6/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index fc12dc53..41c31aa2 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2edccb95-7fae-4448-bd31-16994adbadac/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/e2608f97-4448-4741-8102-05184eb28ddb/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2edccb95-7fae-4448-bd31-16994adbadac/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/e2608f97-4448-4741-8102-05184eb28ddb/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 104 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 91657555..9535603c 100644 --- a/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/7971dba5-3e69-4171-a2eb-4d536306de70/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2050dd89-9460-4899-851d-bc8d68200aba/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/7971dba5-3e69-4171-a2eb-4d536306de70/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/2050dd89-9460-4899-851d-bc8d68200aba/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidportsudp.txt b/docs/api/examples/compute_post_projectsprojectidportsudp.txt index 2f64bd09..4dc39fd4 100644 --- a/docs/api/examples/compute_post_projectsprojectidportsudp.txt +++ b/docs/api/examples/compute_post_projectsprojectidportsudp.txt @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 25 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/ports/udp { diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodes.txt b/docs/api/examples/compute_post_projectsprojectidqemunodes.txt index ee21e912..104aa9bc 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodes.txt @@ -1,10 +1,10 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes' -d '{"hda_disk_image": "hello.img", "name": "PC TEST 1", "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes' -d '{"hda_disk_image": "hello.img", "name": "PC TEST 1", "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes HTTP/1.1 { "hda_disk_image": "hello.img", "name": "PC TEST 1", - "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64" + "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64" } @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1420 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:53 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes { @@ -47,16 +47,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:6e:4a:00", + "mac_address": "0c:dd:80:8b:48:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/b4e7b8ed-8121-4c87-8ef6-391ddea86e4a", - "node_id": "b4e7b8ed-8121-4c87-8ef6-391ddea86e4a", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/01026b26-6566-43ed-9334-15f96ae08b48", + "node_id": "01026b26-6566-43ed-9334-15f96ae08b48", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", + "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64", "ram": 256, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 30bbf39e..646b82c7 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2f9f2613-4320-4283-8fc4-765e1fabb705/adapters/1/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/bd1e09db-c54b-44a6-be27-e2348e2f9699/adapters/1/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2f9f2613-4320-4283-8fc4-765e1fabb705/adapters/1/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/bd1e09db-c54b-44a6-be27-e2348e2f9699/adapters/1/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:22 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:15 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index 6879682e..26d3492b 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3cccca4a-df04-435b-9005-d5958ad2313e/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/1de6c0bb-7b98-4ac5-b328-60fa75585484/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3cccca4a-df04-435b-9005-d5958ad2313e/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/1de6c0bb-7b98-4ac5-b328-60fa75585484/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 123 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:37 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:42 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index f05bd718..c226ff0f 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/8550cc69-3698-4397-a0f6-4fde1152de95/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/821ed200-58eb-4c58-8218-e12fbacab395/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/8550cc69-3698-4397-a0f6-4fde1152de95/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/821ed200-58eb-4c58-8218-e12fbacab395/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:37 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt index 50efa10c..d6227681 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2d0c5456-a833-453e-9fd5-f28efd9b3709/duplicate' -d '{"destination_node_id": "cdb0e425-7ba9-42ca-a258-a86ae72a72e5"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ceb80b19-b803-405e-bb83-708bd1582893/duplicate' -d '{"destination_node_id": "87de64ac-3b54-4de4-9a40-bb3d939fb982"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/2d0c5456-a833-453e-9fd5-f28efd9b3709/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ceb80b19-b803-405e-bb83-708bd1582893/duplicate HTTP/1.1 { - "destination_node_id": "cdb0e425-7ba9-42ca-a258-a86ae72a72e5" + "destination_node_id": "87de64ac-3b54-4de4-9a40-bb3d939fb982" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:36 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:36 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt index 580a8ac8..2e2e0c5a 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d1496b9b-eeb8-4d07-bc2f-794fd42dc4a9/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/fd688452-617d-4a15-8fe2-b0de93baf143/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/d1496b9b-eeb8-4d07-bc2f-794fd42dc4a9/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/fd688452-617d-4a15-8fe2-b0de93baf143/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:13 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:01 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt index 2ca81b53..51f1ec17 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/77d09e2a-ecef-4f7b-ae1c-fa3a4c517bcb/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/51174940-8e9c-4aa7-8e03-6bc09bd64a64/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/77d09e2a-ecef-4f7b-ae1c-fa3a4c517bcb/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/51174940-8e9c-4aa7-8e03-6bc09bd64a64/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:19 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:05 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt index c0ac57c2..85660a48 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6467dbf8-1949-4a5c-9196-f091cde83c1a/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9979a593-7bf8-46ed-b99f-868c7e15c546/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6467dbf8-1949-4a5c-9196-f091cde83c1a/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9979a593-7bf8-46ed-b99f-868c7e15c546/start HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1381 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:55 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start { @@ -43,16 +43,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:3c:1a:00", + "mac_address": "0c:dd:80:c5:46:00", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/6467dbf8-1949-4a5c-9196-f091cde83c1a", - "node_id": "6467dbf8-1949-4a5c-9196-f091cde83c1a", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/9979a593-7bf8-46ed-b99f-868c7e15c546", + "node_id": "9979a593-7bf8-46ed-b99f-868c7e15c546", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", + "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64", "ram": 256, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt index b3c5d41e..fc3ba34d 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/70867380-e9a2-41ed-8833-e3480fc59241/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3a837ca9-4d6e-4a37-b4a5-3553baa43e89/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/70867380-e9a2-41ed-8833-e3480fc59241/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/3a837ca9-4d6e-4a37-b4a5-3553baa43e89/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:55 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt index dc1f649b..77cbabc2 100644 --- a/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c2fe7eb1-7787-417e-b3cb-76c984153fdc/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/e327338d-b7e4-441b-8e9c-653d2e1fb681/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c2fe7eb1-7787-417e-b3cb-76c984153fdc/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/e327338d-b7e4-441b-8e9c-653d2e1fb681/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:18 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:03 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt index 0fb5bd54..fdc12436 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 443 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/d7facbd2-63f5-44a0-ad86-d5d69f4aaf6e", - "node_id": "d7facbd2-63f5-44a0-ad86-d5d69f4aaf6e", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/34afb57d-616c-49a0-9520-7baae7a5c36b", + "node_id": "34afb57d-616c-49a0-9520-7baae7a5c36b", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 2c70bd51..c3420fa6 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e62a021e-05dd-4873-a12e-e4a55f0ee1c4/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a1f6719e-b1cf-4541-b76b-f6f94e0e2bd3/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/e62a021e-05dd-4873-a12e-e4a55f0ee1c4/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a1f6719e-b1cf-4541-b76b-f6f94e0e2bd3/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index 86e55122..c1e6367f 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/837982bc-0f0c-4869-b121-fb59ee30bc85/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/17e9a5f7-dd7b-44d0-afd4-2a4ef96a5449/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/837982bc-0f0c-4869-b121-fb59ee30bc85/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/17e9a5f7-dd7b-44d0-afd4-2a4ef96a5449/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 123 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 953e2926..a4d7cfab 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d49396d8-b927-4a55-a99b-b5f858e60cf5/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a0055079-33cd-452a-9d9a-e3c7a3630a4f/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d49396d8-b927-4a55-a99b-b5f858e60cf5/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a0055079-33cd-452a-9d9a-e3c7a3630a4f/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt index 3ae46913..648851f0 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/479bdb08-7aaf-455b-833a-d28d9f0aa718/duplicate' -d '{"destination_node_id": "381aa95d-f54e-44e2-8742-918b9f387f1d"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8b299776-2299-4548-b284-44388261e292/duplicate' -d '{"destination_node_id": "eaff31ca-72f8-444d-8e36-39db5096df46"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/479bdb08-7aaf-455b-833a-d28d9f0aa718/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8b299776-2299-4548-b284-44388261e292/duplicate HTTP/1.1 { - "destination_node_id": "381aa95d-f54e-44e2-8742-918b9f387f1d" + "destination_node_id": "eaff31ca-72f8-444d-8e36-39db5096df46" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt index a231b86d..997b37f7 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80424f98-d63d-45d1-8017-7ddc4e54c8ad/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/4cf7c998-cef6-460a-bcc4-87a9b7f5f985/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/80424f98-d63d-45d1-8017-7ddc4e54c8ad/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/4cf7c998-cef6-460a-bcc4-87a9b7f5f985/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt index b8faee23..19686453 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c44444f5-3ec9-4266-b378-00095a009b80/start' -d '{"destination": "192.168.1.2"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8b919d25-3cb2-488a-bd9e-47f76f2919ac/start' -d '{"destination": "192.168.1.2"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c44444f5-3ec9-4266-b378-00095a009b80/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/8b919d25-3cb2-488a-bd9e-47f76f2919ac/start HTTP/1.1 { "destination": "192.168.1.2" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 443 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start { @@ -21,8 +21,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start "default_destination": "", "ip_address": "", "name": "TraceNG TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/c44444f5-3ec9-4266-b378-00095a009b80", - "node_id": "c44444f5-3ec9-4266-b378-00095a009b80", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/8b919d25-3cb2-488a-bd9e-47f76f2919ac", + "node_id": "8b919d25-3cb2-488a-bd9e-47f76f2919ac", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt index f4391b88..b48b6360 100644 --- a/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b1665638-c463-4b50-94d0-46f7fb908529/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/af4021f0-0557-42ba-9298-6926223b96c4/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/b1665638-c463-4b50-94d0-46f7fb908529/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/af4021f0-0557-42ba-9298-6926223b96c4/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt index ddb72601..27c35c7e 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodes.txt @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 460 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes { @@ -25,7 +25,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes "linked_clone": false, "name": "VM1", "node_directory": null, - "node_id": "b2f5ee74-cf1b-4600-822c-38eb239306c2", + "node_id": "ff6783c2-697f-4bcf-b9fa-edb53a27f3dd", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 30e317c6..e2456ad3 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7f3b2de7-1d5c-4d79-a49b-5d837a09b026/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/67ca2d5c-1aa3-42ef-8449-1a81b1276f6c/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7f3b2de7-1d5c-4d79-a49b-5d837a09b026/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/67ca2d5c-1aa3-42ef-8449-1a81b1276f6c/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index befe91fd..e2a06e6b 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a8bd1f77-0840-47ab-9cfa-895ce462d3fc/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ab762ff0-4d1c-4e5d-928d-8817000a727a/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a8bd1f77-0840-47ab-9cfa-895ce462d3fc/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ab762ff0-4d1c-4e5d-928d-8817000a727a/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 123 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 878ba5f3..da20fdfe 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/452ccaf9-fc46-47ae-b36d-30370ce380c6/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/b3868617-7740-447d-bfac-80fc7c635356/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/452ccaf9-fc46-47ae-b36d-30370ce380c6/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/b3868617-7740-447d-bfac-80fc7c635356/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt index f1a75039..2703e65d 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/99c08510-8a50-439e-bfb3-9f1ac1b729f1/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/5f0f4d74-dbfa-4054-aa4e-f98f73e6ec8f/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/99c08510-8a50-439e-bfb3-9f1ac1b729f1/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/5f0f4d74-dbfa-4054-aa4e-f98f73e6ec8f/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt index 23c10fca..7da955bc 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ee8f3742-682a-495b-9854-4c091c725c00/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8395f347-576d-453f-8e91-73a7e0c94000/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/ee8f3742-682a-495b-9854-4c091c725c00/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8395f347-576d-453f-8e91-73a7e0c94000/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt index 5961d668..36c722ee 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4cf6acf2-6933-4f46-abb0-757ca8ac358d/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/5ac1d7f0-469c-46a6-ba2f-2e655be0c954/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4cf6acf2-6933-4f46-abb0-757ca8ac358d/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/5ac1d7f0-469c-46a6-ba2f-2e655be0c954/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/start diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt index 81f36ff7..d7151abe 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/17873c2c-ec04-4c6b-bbf7-399ddc2e4c2d/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7087fd64-5d2a-41e0-be41-f2c31d7a9129/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/17873c2c-ec04-4c6b-bbf7-399ddc2e4c2d/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7087fd64-5d2a-41e0-be41-f2c31d7a9129/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt index 255d5fd1..aea34422 100644 --- a/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/fd256c2f-ac6e-4f9d-975a-e6ea2347170a/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/278f435c-3c76-4b2e-bc6c-3990a35de558/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/fd256c2f-ac6e-4f9d-975a-e6ea2347170a/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/278f435c-3c76-4b2e-bc6c-3990a35de558/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt index ef7dd6c7..12b3dfb5 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodes.txt @@ -1,10 +1,10 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes' -d '{"linked_clone": false, "name": "VM1", "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes' -d '{"linked_clone": false, "name": "VM1", "vmx_path": "/tmp/pytest-of-grossmj/pytest-48/test_vmware_create0/test.vmx"}' POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes HTTP/1.1 { "linked_clone": false, "name": "VM1", - "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-48/test_vmware_create0/test.vmx" } @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 594 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes { @@ -24,11 +24,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes "headless": false, "linked_clone": false, "name": "VM1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/b731aa49-722d-492b-b2e1-49a8fbfddd9d", - "node_id": "b731aa49-722d-492b-b2e1-49a8fbfddd9d", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/49236655-9204-4097-a015-bec61fd3cbdf", + "node_id": "49236655-9204-4097-a015-bec61fd3cbdf", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_create0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-48/test_vmware_create0/test.vmx" } diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 9b7f820d..4af8cb25 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/707b538f-74c5-42d9-8b45-3743c8a50b26/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e26e5d19-c1ee-4b49-b6b3-efab00adf655/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/707b538f-74c5-42d9-8b45-3743c8a50b26/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e26e5d19-c1ee-4b49-b6b3-efab00adf655/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:47 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:05 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index 43bbbfb8..78d39069 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a860e414-f9c6-4135-a72b-465eb93eb898/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/50b0e36c-cb58-4936-96ea-3706cbe2f068/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a860e414-f9c6-4135-a72b-465eb93eb898/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/50b0e36c-cb58-4936-96ea-3706cbe2f068/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 123 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:09 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 464b5667..453d276a 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/246d16ac-c644-4ad5-8614-b0edc0a954c5/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/56d5841e-0549-4bb0-b262-59eb1d0917d6/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/246d16ac-c644-4ad5-8614-b0edc0a954c5/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/56d5841e-0549-4bb0-b262-59eb1d0917d6/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:55 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:11 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt index 502e965d..8ca98104 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a772e2be-8c19-4c27-8b85-8db063bf51b3/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ab622de4-dd17-4c37-8199-8b60843b0e76/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a772e2be-8c19-4c27-8b85-8db063bf51b3/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ab622de4-dd17-4c37-8199-8b60843b0e76/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:46 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:04 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt index 6c6133da..a88d503d 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/32bec5f3-c1ef-4845-abc7-976a9f743801/resume' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/4804f7b0-a18b-4aec-86d4-2a3434a8740d/resume' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/32bec5f3-c1ef-4845-abc7-976a9f743801/resume HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/4804f7b0-a18b-4aec-86d4-2a3434a8740d/resume HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:45 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:03 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/resume diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt index 47bd4436..b993265b 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d49d945a-0e5d-4ae0-a68d-58798953af7c/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/cb0f71cb-5ef6-416a-b610-901163c39608/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/d49d945a-0e5d-4ae0-a68d-58798953af7c/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/cb0f71cb-5ef6-416a-b610-901163c39608/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:42 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:54 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/start diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt index 80d31e64..67fadf74 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1e2471fd-894a-4fb7-ac4a-1a748611b7b7/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a1cc6c77-7400-4b9a-9aac-a3c8894e7593/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1e2471fd-894a-4fb7-ac4a-1a748611b7b7/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/a1cc6c77-7400-4b9a-9aac-a3c8894e7593/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:43 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:55 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt index add42f20..e7312a45 100644 --- a/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt +++ b/docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/65c44e67-3039-4360-8c4c-5373f64ee4ff/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/da78a31a-37d3-42ac-b3a4-0d1992582160/suspend' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/65c44e67-3039-4360-8c4c-5373f64ee4ff/suspend HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/da78a31a-37d3-42ac-b3a4-0d1992582160/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:44 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:02 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/suspend diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt index ec2a2249..e5817775 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodes.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 384 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes { @@ -19,8 +19,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/6f2aceed-58ef-4d52-9c7f-a60c9c88867c", - "node_id": "6f2aceed-58ef-4d52-9c7f-a60c9c88867c", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/43b8804e-6306-47e0-92fb-3f473256427f", + "node_id": "43b8804e-6306-47e0-92fb-3f473256427f", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index e69889d9..2fb62c25 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/b7f5535b-c496-463f-8a87-7828b40efe6e/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c42dab6-f7bc-4919-9354-a2599906b3c5/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/b7f5535b-c496-463f-8a87-7828b40efe6e/adapters/0/ports/0/nio HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c42dab6-f7bc-4919-9354-a2599906b3c5/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt index d44abf4a..2885e965 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/05aec68c-9d56-48cb-aa00-7a693aede93e/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/dd221d24-e144-472a-87ce-063f6cd3ad00/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/05aec68c-9d56-48cb-aa00-7a693aede93e/adapters/0/ports/0/start_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/dd221d24-e144-472a-87ce-063f6cd3ad00/adapters/0/ports/0/start_capture HTTP/1.1 { "capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB" @@ -11,10 +11,10 @@ HTTP/1.1 200 Connection: close Content-Length: 123 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture { - "pcap_file_path": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" + "pcap_file_path": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap" } diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt index 64ad7965..63496176 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96e6d109-d260-4bbb-9765-149098ac4fb3/adapters/0/ports/0/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/67d019f0-254f-4bae-b034-fb232ad88916/adapters/0/ports/0/stop_capture' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96e6d109-d260-4bbb-9765-149098ac4fb3/adapters/0/ports/0/stop_capture HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/67d019f0-254f-4bae-b034-fb232ad88916/adapters/0/ports/0/stop_capture HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt index 09b60218..3bf83247 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/c746cf32-8dc1-4022-8788-ee6ab876facc/duplicate' -d '{"destination_node_id": "5d066b15-97d6-4957-9c97-4314ec114029"}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce98b385-1603-4563-8072-65dd34f5a77b/duplicate' -d '{"destination_node_id": "3e063515-7657-4d22-88a1-0dc30df6d652"}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/c746cf32-8dc1-4022-8788-ee6ab876facc/duplicate HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ce98b385-1603-4563-8072-65dd34f5a77b/duplicate HTTP/1.1 { - "destination_node_id": "5d066b15-97d6-4957-9c97-4314ec114029" + "destination_node_id": "3e063515-7657-4d22-88a1-0dc30df6d652" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 4 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/duplicate true diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt index 6d69c9f9..d1d2363d 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ed57e0b3-5eb9-4311-a36a-901a8dd48eac/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/20698d5a-3e23-4cbd-83df-38ddb68122fe/reload' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/ed57e0b3-5eb9-4311-a36a-901a8dd48eac/reload HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/20698d5a-3e23-4cbd-83df-38ddb68122fe/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/reload diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt index 92bad3b3..c5ae3034 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/65171aae-388a-44a8-a225-a37781daa1d2/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a352368d-e7e8-4857-ab92-16b8e176cfea/start' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/65171aae-388a-44a8-a225-a37781daa1d2/start HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/a352368d-e7e8-4857-ab92-16b8e176cfea/start HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 384 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/start { @@ -17,8 +17,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/start "console": 5004, "console_type": "telnet", "name": "PC TEST 1", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/65171aae-388a-44a8-a225-a37781daa1d2", - "node_id": "65171aae-388a-44a8-a225-a37781daa1d2", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/a352368d-e7e8-4857-ab92-16b8e176cfea", + "node_id": "a352368d-e7e8-4857-ab92-16b8e176cfea", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt index 4ea1c86f..7cf4c261 100644 --- a/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt +++ b/docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c69e2fd-ed13-44fe-b908-debdbcb8b53b/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/8711c1dc-384e-4aa9-a1d1-1ecf167c7714/stop' -d '{}' -POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/3c69e2fd-ed13-44fe-b908-debdbcb8b53b/stop HTTP/1.1 +POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/8711c1dc-384e-4aa9-a1d1-1ecf167c7714/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/stop diff --git a/docs/api/examples/compute_post_qemuimg.txt b/docs/api/examples/compute_post_qemuimg.txt index b31c0a9b..9e677dc2 100644 --- a/docs/api/examples/compute_post_qemuimg.txt +++ b/docs/api/examples/compute_post_qemuimg.txt @@ -17,7 +17,7 @@ HTTP/1.1 201 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:00:34 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/qemu/img diff --git a/docs/api/examples/compute_put_projectsprojectid.txt b/docs/api/examples/compute_put_projectsprojectid.txt index 7b489b68..01d3e83e 100644 --- a/docs/api/examples/compute_put_projectsprojectid.txt +++ b/docs/api/examples/compute_put_projectsprojectid.txt @@ -15,8 +15,8 @@ HTTP/1.1 200 Connection: close Content-Length: 183 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:50 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id} { diff --git a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt index 975b7f75..1e055eb4 100644 --- a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b5042f13-972d-41e1-a8bc-82e5c33f2781' -d '{"name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/7d6b1ed8-1270-45d0-8359-7be6c841be0a' -d '{"name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b5042f13-972d-41e1-a8bc-82e5c33f2781 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/7d6b1ed8-1270-45d0-8359-7be6c841be0a HTTP/1.1 { "name": "test" } @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1739 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:52 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:40 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} { @@ -68,8 +68,8 @@ X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} } ], "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/builtin/b5042f13-972d-41e1-a8bc-82e5c33f2781", - "node_id": "b5042f13-972d-41e1-a8bc-82e5c33f2781", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/builtin/7d6b1ed8-1270-45d0-8359-7be6c841be0a", + "node_id": "7d6b1ed8-1270-45d0-8359-7be6c841be0a", "ports_mapping": [ { "interface": "wlp58s0", diff --git a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 172f4448..4310680f 100644 --- a/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/00346631-6030-4a9b-bfa5-8adc512d6c5a/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b6bddf69-4969-49bf-8206-f81e14c08842/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/00346631-6030-4a9b-bfa5-8adc512d6c5a/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/b6bddf69-4969-49bf-8206-f81e14c08842/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:51 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt index 257b7961..3ae035ae 100644 --- a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/41c09ab9-807e-47bc-b731-4f1ebd1a63ad' -d '{"console": 5006, "environment": "GNS3=1\nGNS4=0", "extra_hosts": "test:127.0.0.1", "name": "test", "start_command": "yes"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/aedead4b-36c7-4aed-a94c-9e2fc0eedaea' -d '{"console": 5006, "environment": "GNS3=1\nGNS4=0", "extra_hosts": "test:127.0.0.1", "name": "test", "start_command": "yes"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/41c09ab9-807e-47bc-b731-4f1ebd1a63ad HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/aedead4b-36c7-4aed-a94c-9e2fc0eedaea HTTP/1.1 { "console": 5006, "environment": "GNS3=1\nGNS4=0", @@ -14,8 +14,8 @@ HTTP/1.1 200 Connection: close Content-Length: 639 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:44 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id} { @@ -31,8 +31,8 @@ X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id} "extra_hosts": "test:127.0.0.1", "image": "nginx:latest", "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/docker/41c09ab9-807e-47bc-b731-4f1ebd1a63ad", - "node_id": "41c09ab9-807e-47bc-b731-4f1ebd1a63ad", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/docker/aedead4b-36c7-4aed-a94c-9e2fc0eedaea", + "node_id": "aedead4b-36c7-4aed-a94c-9e2fc0eedaea", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "start_command": "yes", "status": "stopped" diff --git a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 383d3b01..ba7cf3fa 100644 --- a/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/34596bf7-9398-4c08-9773-aaf9223b05c6/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/db7b2a2a-6c50-4bdc-ab9a-e9b4bea93026/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/34596bf7-9398-4c08-9773-aaf9223b05c6/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/db7b2a2a-6c50-4bdc-ab9a-e9b4bea93026/adapters/0/ports/0/nio HTTP/1.1 { "lport": 4242, "rhost": "127.0.0.1", @@ -13,8 +13,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:54 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:41 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt index 53a1f7c2..ff22686d 100644 --- a/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidiounodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c' -d '{"console": 5005, "ethernet_adapters": 4, "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "use_default_iou_values": true}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/eb9c65bc-f46a-478f-a5fa-38893bac68a6' -d '{"console": 5005, "ethernet_adapters": 4, "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "use_default_iou_values": true}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/eb9c65bc-f46a-478f-a5fa-38893bac68a6 HTTP/1.1 { "console": 5005, "ethernet_adapters": 4, @@ -17,8 +17,8 @@ HTTP/1.1 200 Connection: close Content-Length: 609 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} { @@ -30,8 +30,8 @@ X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} "l1_keepalives": true, "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", "name": "test", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_json4/project-files/iou/d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c", - "node_id": "d6f1d9de-9179-44c7-888a-4f0dbcbc5d0c", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_json4/project-files/iou/eb9c65bc-f46a-478f-a5fa-38893bac68a6", + "node_id": "eb9c65bc-f46a-478f-a5fa-38893bac68a6", "nvram": 2048, "path": "iou.bin", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", diff --git a/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 14d24c6b..d0cc94e6 100644 --- a/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c950e271-72c8-4b34-bf7e-3dbccd5b62ce/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/016d4d03-73c2-4255-85e8-d235c87c8c69/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c950e271-72c8-4b34-bf7e-3dbccd5b62ce/adapters/1/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/016d4d03-73c2-4255-85e8-d235c87c8c69/adapters/1/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 89 Content-Type: application/json -Date: Tue, 20 Nov 2018 05:59:56 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt index 7c966165..7b374f04 100644 --- a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f' -d '{"name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/fd68a0ff-c242-4397-b5ac-837226ff5ce7' -d '{"name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/fd68a0ff-c242-4397-b5ac-837226ff5ce7 HTTP/1.1 { "name": "test" } @@ -10,13 +10,13 @@ HTTP/1.1 200 Connection: close Content-Length: 334 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} { "name": "test", - "node_id": "89cf80bd-1e4b-4d1b-a7ca-9f99d08da97f", + "node_id": "fd68a0ff-c242-4397-b5ac-837226ff5ce7", "ports_mapping": [ { "interface": "virbr0", diff --git a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 7e1c76bf..954835de 100644 --- a/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bf70d6f5-75d7-4dec-9d41-3743031a4aae/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f93c5b6e-391a-4498-9008-417f094591a0/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bf70d6f5-75d7-4dec-9d41-3743031a4aae/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f93c5b6e-391a-4498-9008-417f094591a0/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:46:49 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt index caf439a9..3b10d6da 100644 --- a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9d0c9a01-be00-403d-93b8-f810893987a7' -d '{"console": 5006, "hdb_disk_image": "linux\u8f7d.img", "name": "test", "ram": 1024}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/03816f4e-afad-4716-a6c5-75c29f4f7898' -d '{"console": 5006, "hdb_disk_image": "linux\u8f7d.img", "name": "test", "ram": 1024}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9d0c9a01-be00-403d-93b8-f810893987a7 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/03816f4e-afad-4716-a6c5-75c29f4f7898 HTTP/1.1 { "console": 5006, "hdb_disk_image": "linux\u8f7d.img", @@ -13,8 +13,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1422 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:21 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:08 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} { @@ -48,16 +48,16 @@ X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} "kernel_image": "", "kernel_image_md5sum": null, "legacy_networking": false, - "mac_address": "0c:dd:80:87:a7:00", + "mac_address": "0c:dd:80:78:98:00", "name": "test", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/9d0c9a01-be00-403d-93b8-f810893987a7", - "node_id": "9d0c9a01-be00-403d-93b8-f810893987a7", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/03816f4e-afad-4716-a6c5-75c29f4f7898", + "node_id": "03816f4e-afad-4716-a6c5-75c29f4f7898", "on_close": "power_off", "options": "", "platform": "x86_64", "process_priority": "low", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", - "qemu_path": "/tmp/tmpmokj7epp/qemu-system-x86_64", + "qemu_path": "/tmp/tmp9gfhmaev/qemu-system-x86_64", "ram": 1024, "status": "stopped", "usage": "" diff --git a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt index fa23919a..5c374ca2 100644 --- a/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/0b00891a-b665-4370-a066-0691869ffeac/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6884f4ee-0c38-4997-ab2e-a709badef044/adapters/1/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/0b00891a-b665-4370-a066-0691869ffeac/adapters/1/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6884f4ee-0c38-4997-ab2e-a709badef044/adapters/1/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:16 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt index 8e5b9c36..2282155d 100644 --- a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/f558ee31-d1b6-4157-bfbc-d1847f6639c0' -d '{"ip_address": "192.168.1.1", "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/5d4ac5be-030f-4032-84af-595c356b09fe' -d '{"ip_address": "192.168.1.1", "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/f558ee31-d1b6-4157-bfbc-d1847f6639c0 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/5d4ac5be-030f-4032-84af-595c356b09fe HTTP/1.1 { "ip_address": "192.168.1.1", "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 444 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:39 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} { @@ -22,8 +22,8 @@ X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} "default_destination": "", "ip_address": "192.168.1.1", "name": "test", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/f558ee31-d1b6-4157-bfbc-d1847f6639c0", - "node_id": "f558ee31-d1b6-4157-bfbc-d1847f6639c0", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/5d4ac5be-030f-4032-84af-595c356b09fe", + "node_id": "5d4ac5be-030f-4032-84af-595c356b09fe", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 41cf5b2c..5f438d97 100644 --- a/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/016d415f-895d-46ee-a3d3-cbd845d05e18/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a98c7660-a726-413d-8142-388e0559857f/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/016d415f-895d-46ee-a3d3-cbd845d05e18/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/a98c7660-a726-413d-8142-388e0559857f/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:38 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:51 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt index 1d9a9135..4148ec58 100644 --- a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c3d40d4c-151a-4027-bba6-9b14aac189d2' -d '{"console": 5005, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4a53e58a-9aeb-40e6-ab68-2ec8f09da848' -d '{"console": 5005, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/c3d40d4c-151a-4027-bba6-9b14aac189d2 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/4a53e58a-9aeb-40e6-ab68-2ec8f09da848 HTTP/1.1 { "console": 5005, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 464 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} { @@ -24,7 +24,7 @@ X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id} "linked_clone": false, "name": "test", "node_directory": null, - "node_id": "c3d40d4c-151a-4027-bba6-9b14aac189d2", + "node_id": "4a53e58a-9aeb-40e6-ab68-2ec8f09da848", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "ram": 0, diff --git a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 9b4660e8..17e078f5 100644 --- a/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8509bae6-f48d-45a4-8ea6-3eb54fc4f86f/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/721efc50-10a2-439a-bd01-fa140ad44944/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/8509bae6-f48d-45a4-8ea6-3eb54fc4f86f/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/721efc50-10a2-439a-bd01-fa140ad44944/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:40 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:47:52 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt index 3f5f234e..a94fb520 100644 --- a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1' -d '{"console": 5005, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/492a3bbf-930c-4c9b-86b7-8c0c694f277e' -d '{"console": 5005, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/492a3bbf-930c-4c9b-86b7-8c0c694f277e HTTP/1.1 { "console": 5005, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 595 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:53 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:08 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} { @@ -23,11 +23,11 @@ X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id} "headless": false, "linked_clone": false, "name": "test", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/2171d0bc-ebf5-4cd1-8792-a4516f15bbb1", - "node_id": "2171d0bc-ebf5-4cd1-8792-a4516f15bbb1", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/492a3bbf-930c-4c9b-86b7-8c0c694f277e", + "node_id": "492a3bbf-930c-4c9b-86b7-8c0c694f277e", "on_close": "power_off", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped", "use_any_adapter": false, - "vmx_path": "/tmp/pytest-of-grossmj/pytest-36/test_vmware_update0/test.vmx" + "vmx_path": "/tmp/pytest-of-grossmj/pytest-48/test_vmware_update0/test.vmx" } diff --git a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 15c49162..ea8151c4 100644 --- a/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e98e2017-91f2-4737-9f45-7534be69b4b4/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ec7ea0f5-b4b9-4889-8107-602ee94e2baf/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/e98e2017-91f2-4737-9f45-7534be69b4b4/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/ec7ea0f5-b4b9-4889-8107-602ee94e2baf/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:49 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:06 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt index 8a9145c4..fc866492 100644 --- a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt +++ b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549' -d '{"console": 5006, "name": "test"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/31e4741b-ee63-4106-8aac-b382bc152153' -d '{"console": 5006, "name": "test"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549 HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/31e4741b-ee63-4106-8aac-b382bc152153 HTTP/1.1 { "console": 5006, "name": "test" @@ -11,8 +11,8 @@ HTTP/1.1 200 Connection: close Content-Length: 379 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} { @@ -20,8 +20,8 @@ X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} "console": 5006, "console_type": "telnet", "name": "test", - "node_directory": "/tmp/tmph4dpdlx_/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/9f4f1dd7-7ce0-42e5-a249-dcc208d8e549", - "node_id": "9f4f1dd7-7ce0-42e5-a249-dcc208d8e549", + "node_directory": "/tmp/tmp0a7ifw_u/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/31e4741b-ee63-4106-8aac-b382bc152153", + "node_id": "31e4741b-ee63-4106-8aac-b382bc152153", "project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80", "status": "stopped" } diff --git a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt index 875fcdbc..543237b3 100644 --- a/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt +++ b/docs/api/examples/compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/38f145ef-c50d-4a2b-b06f-d9d9bd5b992f/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' +curl -i -X PUT 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96dcde04-4b11-4a61-88f8-2025655a8151/adapters/0/ports/0/nio' -d '{"filters": {}, "lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}' -PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/38f145ef-c50d-4a2b-b06f-d9d9bd5b992f/adapters/0/ports/0/nio HTTP/1.1 +PUT /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/96dcde04-4b11-4a61-88f8-2025655a8151/adapters/0/ports/0/nio HTTP/1.1 { "filters": {}, "lport": 4242, @@ -14,8 +14,8 @@ HTTP/1.1 201 Connection: close Content-Length: 108 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:58 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:13 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio { diff --git a/docs/api/examples/controller_delete_appliancesapplianceid.txt b/docs/api/examples/controller_delete_appliancesapplianceid.txt index 02eb26a4..9b818e23 100644 --- a/docs/api/examples/controller_delete_appliancesapplianceid.txt +++ b/docs/api/examples/controller_delete_appliancesapplianceid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/appliances/259b41b8-d70a-4882-8ba3-017ee11ecd99' +curl -i -X DELETE 'http://localhost:3080/v2/appliances/513c90b1-3a13-40bc-8b78-ecf89ec7ed49' -DELETE /v2/appliances/259b41b8-d70a-4882-8ba3-017ee11ecd99 HTTP/1.1 +DELETE /v2/appliances/513c90b1-3a13-40bc-8b78-ecf89ec7ed49 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances/{appliance_id} diff --git a/docs/api/examples/controller_delete_computescomputeid.txt b/docs/api/examples/controller_delete_computescomputeid.txt index a1932153..0a60d10f 100644 --- a/docs/api/examples/controller_delete_computescomputeid.txt +++ b/docs/api/examples/controller_delete_computescomputeid.txt @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:03 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:27 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id} diff --git a/docs/api/examples/controller_delete_projectsprojectid.txt b/docs/api/examples/controller_delete_projectsprojectid.txt index 9db77780..e03d8ca1 100644 --- a/docs/api/examples/controller_delete_projectsprojectid.txt +++ b/docs/api/examples/controller_delete_projectsprojectid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/02514675-0c21-450d-a46c-c3316dd6244c' +curl -i -X DELETE 'http://localhost:3080/v2/projects/a80f15e1-0546-44a2-a602-e7d34090aa6d' -DELETE /v2/projects/02514675-0c21-450d-a46c-c3316dd6244c HTTP/1.1 +DELETE /v2/projects/a80f15e1-0546-44a2-a602-e7d34090aa6d HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id} diff --git a/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt index 0903c872..1b8e19f4 100644 --- a/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/3993dfb6-2aa7-4511-8a40-51938283126a/drawings/ed1a39d3-0452-4589-aa6e-92b38f0865c6' +curl -i -X DELETE 'http://localhost:3080/v2/projects/6a27e9d1-dc12-4217-a534-7afd47b41bba/drawings/01160a0a-5fa2-41fc-a4b3-6a38c8e7c571' -DELETE /v2/projects/3993dfb6-2aa7-4511-8a40-51938283126a/drawings/ed1a39d3-0452-4589-aa6e-92b38f0865c6 HTTP/1.1 +DELETE /v2/projects/6a27e9d1-dc12-4217-a534-7afd47b41bba/drawings/01160a0a-5fa2-41fc-a4b3-6a38c8e7c571 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt index b28ac1a9..08c8dbeb 100644 --- a/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/adf14fe8-9385-4261-8e66-16de2783ecc7/links/9797461f-7f75-4515-b6dd-0f139e946b10' +curl -i -X DELETE 'http://localhost:3080/v2/projects/12b585a6-9440-43fd-a231-789faf5559d7/links/819ee27a-997d-4986-8e48-41a7520e297a' -DELETE /v2/projects/adf14fe8-9385-4261-8e66-16de2783ecc7/links/9797461f-7f75-4515-b6dd-0f139e946b10 HTTP/1.1 +DELETE /v2/projects/12b585a6-9440-43fd-a231-789faf5559d7/links/819ee27a-997d-4986-8e48-41a7520e297a HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt index 01cfe1a7..3b729929 100644 --- a/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/065ce165-7bfe-48f4-bfb9-ddf6462e43d6/nodes/3effef6a-703f-4670-aa6a-36441ee1d85c' +curl -i -X DELETE 'http://localhost:3080/v2/projects/6a8303ab-00a0-4e38-bfe0-2d4621ece0a7/nodes/1fcb4475-e0e0-40f9-9c96-e54290323a48' -DELETE /v2/projects/065ce165-7bfe-48f4-bfb9-ddf6462e43d6/nodes/3effef6a-703f-4670-aa6a-36441ee1d85c HTTP/1.1 +DELETE /v2/projects/6a8303ab-00a0-4e38-bfe0-2d4621ece0a7/nodes/1fcb4475-e0e0-40f9-9c96-e54290323a48 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id} diff --git a/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt b/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt index dfcca199..a30f4fa4 100644 --- a/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt +++ b/docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt @@ -1,6 +1,6 @@ -curl -i -X DELETE 'http://localhost:3080/v2/projects/94ce1318-4269-42fb-815d-dead4204dc60/snapshots/d54f80b9-cd51-4d6f-9caa-150cc6687eb1' +curl -i -X DELETE 'http://localhost:3080/v2/projects/ba3da993-b138-46dc-9ae4-65ffac127327/snapshots/4907259c-0d44-42d1-b20f-a7f50ac156b5' -DELETE /v2/projects/94ce1318-4269-42fb-815d-dead4204dc60/snapshots/d54f80b9-cd51-4d6f-9caa-150cc6687eb1 HTTP/1.1 +DELETE /v2/projects/ba3da993-b138-46dc-9ae4-65ffac127327/snapshots/4907259c-0d44-42d1-b20f-a7f50ac156b5 HTTP/1.1 @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:16 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:43 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id} diff --git a/docs/api/examples/controller_get_appliances.txt b/docs/api/examples/controller_get_appliances.txt index e8f1b8c5..9b7c68b7 100644 --- a/docs/api/examples/controller_get_appliances.txt +++ b/docs/api/examples/controller_get_appliances.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 3209 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:00:59 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances [ @@ -77,7 +77,7 @@ X-Route: /v2/appliances { "adapter_type": "e1000", "adapters": 1, - "appliance_id": "605ad672-73a7-4861-b082-b642d51ffe73", + "appliance_id": "6ee64943-98aa-40ba-bc10-978d8063e80a", "appliance_type": "qemu", "bios_image": "", "boot_priority": "c", diff --git a/docs/api/examples/controller_get_appliancesapplianceid.txt b/docs/api/examples/controller_get_appliancesapplianceid.txt index ddb1c8dc..1b909132 100644 --- a/docs/api/examples/controller_get_appliancesapplianceid.txt +++ b/docs/api/examples/controller_get_appliancesapplianceid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/appliances/0579a18f-77c6-4da6-b410-a9a1ab790606' +curl -i -X GET 'http://localhost:3080/v2/appliances/97533944-7b82-4b43-8969-4f701b8152be' -GET /v2/appliances/0579a18f-77c6-4da6-b410-a9a1ab790606 HTTP/1.1 +GET /v2/appliances/97533944-7b82-4b43-8969-4f701b8152be HTTP/1.1 @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 380 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:00 GMT -ETag: "80cc9ad2c2b83a9f439433f47ad78f62" -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +ETag: "fbfa58bb8431ca50a6bddfbfea73455b" +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances/{appliance_id} { - "appliance_id": "0579a18f-77c6-4da6-b410-a9a1ab790606", + "appliance_id": "97533944-7b82-4b43-8969-4f701b8152be", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "builtin": false, diff --git a/docs/api/examples/controller_get_appliancestemplates.txt b/docs/api/examples/controller_get_appliancestemplates.txt index ac3754b2..dcbbfc36 100644 --- a/docs/api/examples/controller_get_appliancestemplates.txt +++ b/docs/api/examples/controller_get_appliancestemplates.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 585790 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances/templates [ diff --git a/docs/api/examples/controller_get_computes.txt b/docs/api/examples/controller_get_computes.txt index 6ec7a304..571a7524 100644 --- a/docs/api/examples/controller_get_computes.txt +++ b/docs/api/examples/controller_get_computes.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 415 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:03 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:20 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes [ diff --git a/docs/api/examples/controller_get_computescomputeid.txt b/docs/api/examples/controller_get_computescomputeid.txt index 087e82f0..9cab305f 100644 --- a/docs/api/examples/controller_get_computescomputeid.txt +++ b/docs/api/examples/controller_get_computescomputeid.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 358 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:19 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id} { diff --git a/docs/api/examples/controller_get_computescomputeidemulatoraction.txt b/docs/api/examples/controller_get_computescomputeidemulatoraction.txt index a5c2089d..dffdd211 100644 --- a/docs/api/examples/controller_get_computescomputeidemulatoraction.txt +++ b/docs/api/examples/controller_get_computescomputeidemulatoraction.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:04 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:29 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} [] diff --git a/docs/api/examples/controller_get_computescomputeidemulatorimages.txt b/docs/api/examples/controller_get_computescomputeidemulatorimages.txt index 1b74f2b9..84575266 100644 --- a/docs/api/examples/controller_get_computescomputeidemulatorimages.txt +++ b/docs/api/examples/controller_get_computescomputeidemulatorimages.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 95 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:04 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:27 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id}/{emulator}/images [ diff --git a/docs/api/examples/controller_get_gns3vm.txt b/docs/api/examples/controller_get_gns3vm.txt index deadadee..a2ad2d26 100644 --- a/docs/api/examples/controller_get_gns3vm.txt +++ b/docs/api/examples/controller_get_gns3vm.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 148 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/gns3vm { diff --git a/docs/api/examples/controller_get_gns3vmengines.txt b/docs/api/examples/controller_get_gns3vmengines.txt index 487ebccd..c1a13ac4 100644 --- a/docs/api/examples/controller_get_gns3vmengines.txt +++ b/docs/api/examples/controller_get_gns3vmengines.txt @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 1238 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/gns3vm/engines [ { - "description": "VMware is the recommended choice for best performances.
The GNS3 VM can be downloaded here.", + "description": "VMware is the recommended choice for best performances.
The GNS3 VM can be downloaded here.", "engine_id": "vmware", "name": "VMware Workstation / Player (recommended)", "support_headless": true, @@ -22,7 +22,7 @@ X-Route: /v2/gns3vm/engines "support_when_exit": true }, { - "description": "VirtualBox doesn't support nested virtualization, this means Qemu based VMs will run extremely slowly. This feature is marked as deprecated and support may be removed from future GNS3 releases.
The GNS3 VM can be downloaded here", + "description": "VirtualBox doesn't support nested virtualization, this means Qemu based VMs will run extremely slowly. This feature is marked as deprecated and support may be removed from future GNS3 releases.
The GNS3 VM can be downloaded here", "engine_id": "virtualbox", "name": "VirtualBox (deprecated)", "support_headless": true, diff --git a/docs/api/examples/controller_get_gns3vmenginesenginevms.txt b/docs/api/examples/controller_get_gns3vmenginesenginevms.txt index 4cd35a61..a59e80ea 100644 --- a/docs/api/examples/controller_get_gns3vmenginesenginevms.txt +++ b/docs/api/examples/controller_get_gns3vmenginesenginevms.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 40 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/gns3vm/engines/{engine}/vms [ diff --git a/docs/api/examples/controller_get_projects.txt b/docs/api/examples/controller_get_projects.txt index 58f12749..b1f67b22 100644 --- a/docs/api/examples/controller_get_projects.txt +++ b/docs/api/examples/controller_get_projects.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 604 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects [ @@ -20,7 +20,7 @@ X-Route: /v2/projects "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/pytest-of-grossmj/pytest-36/test_list_projects1", + "path": "/tmp/pytest-of-grossmj/pytest-48/test_list_projects1", "project_id": "00010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_get_projectsprojectid.txt b/docs/api/examples/controller_get_projectsprojectid.txt index 1fa7f89f..1944559f 100644 --- a/docs/api/examples/controller_get_projectsprojectid.txt +++ b/docs/api/examples/controller_get_projectsprojectid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59' +curl -i -X GET 'http://localhost:3080/v2/projects/589d3022-8a9a-497e-b71a-b21c333a2e11' -GET /v2/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59 HTTP/1.1 +GET /v2/projects/589d3022-8a9a-497e-b71a-b21c333a2e11 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id} { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id} "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpxj7d0qzi/projects/39043d69-0ca5-4a5b-90a5-4887d3f9ef59", - "project_id": "39043d69-0ca5-4a5b-90a5-4887d3f9ef59", + "path": "/tmp/tmpnpqvzngk/projects/589d3022-8a9a-497e-b71a-b21c333a2e11", + "project_id": "589d3022-8a9a-497e-b71a-b21c333a2e11", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_get_projectsprojectiddrawings.txt b/docs/api/examples/controller_get_projectsprojectiddrawings.txt index 6cc08ad4..799aeb14 100644 --- a/docs/api/examples/controller_get_projectsprojectiddrawings.txt +++ b/docs/api/examples/controller_get_projectsprojectiddrawings.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/e4a1f1ad-189c-4445-8945-9cc9abaded88/drawings' +curl -i -X GET 'http://localhost:3080/v2/projects/d0efc2df-129c-4efe-8f95-1ab59d87d2f0/drawings' -GET /v2/projects/e4a1f1ad-189c-4445-8945-9cc9abaded88/drawings HTTP/1.1 +GET /v2/projects/d0efc2df-129c-4efe-8f95-1ab59d87d2f0/drawings HTTP/1.1 @@ -8,14 +8,14 @@ HTTP/1.1 200 Connection: close Content-Length: 363 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/drawings [ { - "drawing_id": "06bde5d8-99a7-4ebf-a1e0-60e0602cdeed", - "project_id": "e4a1f1ad-189c-4445-8945-9cc9abaded88", + "drawing_id": "a1de5575-9937-4d17-93f4-1507af86d1b5", + "project_id": "d0efc2df-129c-4efe-8f95-1ab59d87d2f0", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt index 3e50c87e..9e84a558 100644 --- a/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_get_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/72694de5-a8f0-4c55-bed5-74d0c00e47e1/drawings/6b83ccf4-c1bd-419d-b8a8-23588b236edb' +curl -i -X GET 'http://localhost:3080/v2/projects/8605e0f2-189c-43c8-8be1-ea69c42398bd/drawings/d4c961cb-c23b-4d71-a345-14672ec4287f' -GET /v2/projects/72694de5-a8f0-4c55-bed5-74d0c00e47e1/drawings/6b83ccf4-c1bd-419d-b8a8-23588b236edb HTTP/1.1 +GET /v2/projects/8605e0f2-189c-43c8-8be1-ea69c42398bd/drawings/d4c961cb-c23b-4d71-a345-14672ec4287f HTTP/1.1 @@ -8,13 +8,13 @@ HTTP/1.1 200 Connection: close Content-Length: 323 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} { - "drawing_id": "6b83ccf4-c1bd-419d-b8a8-23588b236edb", - "project_id": "72694de5-a8f0-4c55-bed5-74d0c00e47e1", + "drawing_id": "d4c961cb-c23b-4d71-a345-14672ec4287f", + "project_id": "8605e0f2-189c-43c8-8be1-ea69c42398bd", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_get_projectsprojectidlinks.txt b/docs/api/examples/controller_get_projectsprojectidlinks.txt index 87e32a2c..faf9300d 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinks.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinks.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/ea40035b-2c6b-4e64-ad82-fa07698c3840/links' +curl -i -X GET 'http://localhost:3080/v2/projects/f4e51aa4-8b8e-4166-a03d-4c4dcad6076e/links' -GET /v2/projects/ea40035b-2c6b-4e64-ad82-fa07698c3840/links HTTP/1.1 +GET /v2/projects/f4e51aa4-8b8e-4166-a03d-4c4dcad6076e/links HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1293 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links [ @@ -25,7 +25,7 @@ X-Route: /v2/projects/{project_id}/links 10 ] }, - "link_id": "43f9af37-d478-4727-8aef-c761aa24e680", + "link_id": "e4ce29c1-33f8-434c-87ba-6aa85b2dd089", "link_type": "ethernet", "nodes": [ { @@ -37,7 +37,7 @@ X-Route: /v2/projects/{project_id}/links "x": -10, "y": -10 }, - "node_id": "35c89170-3bd9-44db-8287-95a653af80e4", + "node_id": "6df6e46d-66d9-4856-bf59-6d603a8b9e64", "port_number": 3 }, { @@ -49,11 +49,11 @@ X-Route: /v2/projects/{project_id}/links "x": -10, "y": -10 }, - "node_id": "655110f6-65e2-4d19-9962-182264b6d653", + "node_id": "6d1f08eb-7197-4b4f-9024-819ff2114498", "port_number": 4 } ], - "project_id": "ea40035b-2c6b-4e64-ad82-fa07698c3840", + "project_id": "f4e51aa4-8b8e-4166-a03d-4c4dcad6076e", "suspend": false } ] diff --git a/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt index 3bafb3b7..86a15a01 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc/links/18109693-d121-4014-b161-9d20756d0e83' +curl -i -X GET 'http://localhost:3080/v2/projects/06255867-95cc-461e-84b7-0347dc62cfa5/links/d5323960-0ce3-4b40-bb62-275138f5d0be' -GET /v2/projects/b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc/links/18109693-d121-4014-b161-9d20756d0e83 HTTP/1.1 +GET /v2/projects/06255867-95cc-461e-84b7-0347dc62cfa5/links/d5323960-0ce3-4b40-bb62-275138f5d0be HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 916 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id} { @@ -17,7 +17,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "18109693-d121-4014-b161-9d20756d0e83", + "link_id": "d5323960-0ce3-4b40-bb62-275138f5d0be", "link_type": "ethernet", "nodes": [ { @@ -27,7 +27,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": 42, "y": 0 }, - "node_id": "4a60a0c7-d7c6-4149-bf75-e6b4312978b9", + "node_id": "d7d43544-1c8e-4828-a1b6-5eb75c2961c2", "port_number": 3 }, { @@ -39,10 +39,10 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": -10, "y": -10 }, - "node_id": "c60af12b-1951-444b-bd08-06aedc600334", + "node_id": "f0200e28-0253-4db1-a9d9-664065d54851", "port_number": 4 } ], - "project_id": "b8ee47e2-ee67-425a-8efe-6bd0e1ed21bc", + "project_id": "06255867-95cc-461e-84b7-0347dc62cfa5", "suspend": false } diff --git a/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt b/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt index fa375c22..c4ebfeb6 100644 --- a/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt +++ b/docs/api/examples/controller_get_projectsprojectidlinkslinkidavailablefilters.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/cade0f0a-39d6-43e3-85d7-bca6c72f9ae2/links/ab3fcda1-7538-480d-a62c-56220d1b0f4b/available_filters' +curl -i -X GET 'http://localhost:3080/v2/projects/899df5df-94b9-458c-b213-c34b26bb6c64/links/c9d722d0-441e-4227-af9e-405f728e2467/available_filters' -GET /v2/projects/cade0f0a-39d6-43e3-85d7-bca6c72f9ae2/links/ab3fcda1-7538-480d-a62c-56220d1b0f4b/available_filters HTTP/1.1 +GET /v2/projects/899df5df-94b9-458c-b213-c34b26bb6c64/links/c9d722d0-441e-4227-af9e-405f728e2467/available_filters HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2119 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id}/available_filters [ diff --git a/docs/api/examples/controller_get_projectsprojectidnodes.txt b/docs/api/examples/controller_get_projectsprojectidnodes.txt index f2d702d9..4a76f07e 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodes.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodes.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/fa495296-b03d-4f63-9f34-fd64da6f9b7f/nodes' +curl -i -X GET 'http://localhost:3080/v2/projects/84c2c596-d344-4130-8898-b5aed556ece6/nodes' -GET /v2/projects/fa495296-b03d-4f63-9f34-fd64da6f9b7f/nodes HTTP/1.1 +GET /v2/projects/84c2c596-d344-4130-8898-b5aed556ece6/nodes HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1373 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes [ @@ -19,7 +19,7 @@ X-Route: /v2/projects/{project_id}/nodes "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -33,7 +33,7 @@ X-Route: /v2/projects/{project_id}/nodes }, "name": "test", "node_directory": null, - "node_id": "a63c318d-3303-4c5f-ac44-8de0a96e17f0", + "node_id": "09cc854d-01ec-40d7-9d13-e67dca2ed489", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -49,7 +49,7 @@ X-Route: /v2/projects/{project_id}/nodes "short_name": "e0" } ], - "project_id": "fa495296-b03d-4f63-9f34-fd64da6f9b7f", + "project_id": "84c2c596-d344-4130-8898-b5aed556ece6", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt index 2374d374..13352d1a 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/feb53d7f-e16e-40ed-81ac-7dd4f215f290/nodes/5a81a403-0f25-4a2d-b0ae-333c22924b3a' +curl -i -X GET 'http://localhost:3080/v2/projects/689bc9ac-a342-4024-8ce1-7b45f7ad25ed/nodes/64b8e6c2-7c6f-4ca6-9521-51d8b724e5a1' -GET /v2/projects/feb53d7f-e16e-40ed-81ac-7dd4f215f290/nodes/5a81a403-0f25-4a2d-b0ae-333c22924b3a HTTP/1.1 +GET /v2/projects/689bc9ac-a342-4024-8ce1-7b45f7ad25ed/nodes/64b8e6c2-7c6f-4ca6-9521-51d8b724e5a1 HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1181 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id} { @@ -18,7 +18,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -32,7 +32,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} }, "name": "test", "node_directory": null, - "node_id": "5a81a403-0f25-4a2d-b0ae-333c22924b3a", + "node_id": "64b8e6c2-7c6f-4ca6-9521-51d8b724e5a1", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "short_name": "e0" } ], - "project_id": "feb53d7f-e16e-40ed-81ac-7dd4f215f290", + "project_id": "689bc9ac-a342-4024-8ce1-7b45f7ad25ed", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt index fd3caea9..0172e6bf 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/18fd84fd-43d1-436e-b8da-74502e3662be/nodes/de535eb6-d81e-4f6b-9a58-14b6b0362253/dynamips/auto_idlepc' +curl -i -X GET 'http://localhost:3080/v2/projects/52de2978-6e0a-41e3-9b3a-3913d8f1695b/nodes/362a930a-1282-4d4c-83cb-7e42093ed70b/dynamips/auto_idlepc' -GET /v2/projects/18fd84fd-43d1-436e-b8da-74502e3662be/nodes/de535eb6-d81e-4f6b-9a58-14b6b0362253/dynamips/auto_idlepc HTTP/1.1 +GET /v2/projects/52de2978-6e0a-41e3-9b3a-3913d8f1695b/nodes/362a930a-1282-4d4c-83cb-7e42093ed70b/dynamips/auto_idlepc HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/auto_idlepc { diff --git a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt index 78750611..884a185f 100644 --- a/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt +++ b/docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/e498cdf3-1e80-46be-893a-245ed3d1f1ff/nodes/d631ea6d-8c2e-4494-b8aa-906299319c65/dynamips/idlepc_proposals' +curl -i -X GET 'http://localhost:3080/v2/projects/2d48688b-6abf-4738-9579-008ace498d63/nodes/2afc7c86-7ce3-4108-8497-57b4f860450e/dynamips/idlepc_proposals' -GET /v2/projects/e498cdf3-1e80-46be-893a-245ed3d1f1ff/nodes/d631ea6d-8c2e-4494-b8aa-906299319c65/dynamips/idlepc_proposals HTTP/1.1 +GET /v2/projects/2d48688b-6abf-4738-9579-008ace498d63/nodes/2afc7c86-7ce3-4108-8497-57b4f860450e/dynamips/idlepc_proposals HTTP/1.1 @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 38 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/idlepc_proposals [ diff --git a/docs/api/examples/controller_get_projectsprojectidsnapshots.txt b/docs/api/examples/controller_get_projectsprojectidsnapshots.txt index 1281312c..967e00b5 100644 --- a/docs/api/examples/controller_get_projectsprojectidsnapshots.txt +++ b/docs/api/examples/controller_get_projectsprojectidsnapshots.txt @@ -1,6 +1,6 @@ -curl -i -X GET 'http://localhost:3080/v2/projects/a2829f43-ee64-40c8-81ab-41cc68e69591/snapshots' +curl -i -X GET 'http://localhost:3080/v2/projects/e2f01239-8d66-4953-832d-4a858fa31187/snapshots' -GET /v2/projects/a2829f43-ee64-40c8-81ab-41cc68e69591/snapshots HTTP/1.1 +GET /v2/projects/e2f01239-8d66-4953-832d-4a858fa31187/snapshots HTTP/1.1 @@ -8,15 +8,15 @@ HTTP/1.1 200 Connection: close Content-Length: 197 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:15 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:42 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/snapshots [ { - "created_at": 1542693675, + "created_at": 1542703721, "name": "test", - "project_id": "a2829f43-ee64-40c8-81ab-41cc68e69591", - "snapshot_id": "f82cdc97-5197-4e53-9a1b-6ba73b96b8a6" + "project_id": "e2f01239-8d66-4953-832d-4a858fa31187", + "snapshot_id": "dae76de9-664f-43ee-ab44-5d845e2e091d" } ] diff --git a/docs/api/examples/controller_get_symbols.txt b/docs/api/examples/controller_get_symbols.txt index 7e21789a..85e8867d 100644 --- a/docs/api/examples/controller_get_symbols.txt +++ b/docs/api/examples/controller_get_symbols.txt @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 51384 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:57 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/symbols [ diff --git a/docs/api/examples/controller_get_version.txt b/docs/api/examples/controller_get_version.txt index c08429d5..71c9af1e 100644 --- a/docs/api/examples/controller_get_version.txt +++ b/docs/api/examples/controller_get_version.txt @@ -8,11 +8,11 @@ HTTP/1.1 200 Connection: close Content-Length: 49 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:57 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/version { "local": true, - "version": "2.2.0dev4" + "version": "2.2.0dev5" } diff --git a/docs/api/examples/controller_post_appliances.txt b/docs/api/examples/controller_post_appliances.txt index 957d540c..b971a979 100644 --- a/docs/api/examples/controller_post_appliances.txt +++ b/docs/api/examples/controller_post_appliances.txt @@ -1,62 +1,65 @@ -curl -i -X POST 'http://localhost:3080/v2/appliances' -d '{"appliance_type": "ethernet_hub", "compute_id": "local", "name": "Ethernet hub appliance"}' +curl -i -X POST 'http://localhost:3080/v2/appliances' -d '{"appliance_type": "qemu", "compute_id": "local", "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", "name": "Qemu appliance", "platform": "i386", "ram": 512}' POST /v2/appliances HTTP/1.1 { - "appliance_type": "ethernet_hub", + "appliance_type": "qemu", "compute_id": "local", - "name": "Ethernet hub appliance" + "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", + "name": "Qemu appliance", + "platform": "i386", + "ram": 512 } HTTP/1.1 201 Connection: close -Content-Length: 978 +Content-Length: 1197 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:01 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:15 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances { - "appliance_id": "a5ee20d1-1217-4c2f-93d8-eefc1fba7a92", - "appliance_type": "ethernet_hub", + "adapter_type": "e1000", + "adapters": 1, + "appliance_id": "2c78d3d9-6f95-4ee1-95ac-96c5449cb6bd", + "appliance_type": "qemu", + "bios_image": "", + "boot_priority": "c", "builtin": false, - "category": "switch", + "category": "guest", + "cdrom_image": "", "compute_id": "local", - "default_name_format": "Hub{0}", - "name": "Ethernet hub appliance", - "ports_mapping": [ - { - "name": "Ethernet0", - "port_number": 0 - }, - { - "name": "Ethernet1", - "port_number": 1 - }, - { - "name": "Ethernet2", - "port_number": 2 - }, - { - "name": "Ethernet3", - "port_number": 3 - }, - { - "name": "Ethernet4", - "port_number": 4 - }, - { - "name": "Ethernet5", - "port_number": 5 - }, - { - "name": "Ethernet6", - "port_number": 6 - }, - { - "name": "Ethernet7", - "port_number": 7 - } - ], - "symbol": ":/symbols/hub.svg" + "console_auto_start": false, + "console_type": "telnet", + "cpu_throttling": 0, + "cpus": 1, + "custom_adapters": [], + "default_name_format": "{name}-{0}", + "first_port_name": "", + "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", + "hda_disk_interface": "ide", + "hdb_disk_image": "", + "hdb_disk_interface": "ide", + "hdc_disk_image": "", + "hdc_disk_interface": "ide", + "hdd_disk_image": "", + "hdd_disk_interface": "ide", + "initrd": "", + "kernel_command_line": "", + "kernel_image": "", + "legacy_networking": false, + "linked_clone": true, + "mac_address": "", + "name": "Qemu appliance", + "on_close": "power_off", + "options": "", + "platform": "i386", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "process_priority": "normal", + "qemu_path": "", + "ram": 512, + "symbol": ":/symbols/qemu_guest.svg", + "usage": "" } diff --git a/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt b/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt index 3edc0cec..be9d3ada 100644 --- a/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt +++ b/docs/api/examples/controller_post_appliancesapplianceidduplicate.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/appliances/226095d7-c228-46d7-a7d6-dd488a9027a4/duplicate' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/appliances/2848efff-d111-4771-863a-0960d9d72ec9/duplicate' -d '{}' -POST /v2/appliances/226095d7-c228-46d7-a7d6-dd488a9027a4/duplicate HTTP/1.1 +POST /v2/appliances/2848efff-d111-4771-863a-0960d9d72ec9/duplicate HTTP/1.1 {} @@ -8,12 +8,12 @@ HTTP/1.1 201 Connection: close Content-Length: 380 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances/{appliance_id}/duplicate { - "appliance_id": "79876d13-3e21-434e-9b4c-3ace1c88493c", + "appliance_id": "b103b62a-0a60-4d5c-ae2c-beb59d237c5a", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "builtin": false, diff --git a/docs/api/examples/controller_post_computes.txt b/docs/api/examples/controller_post_computes.txt index 6580b436..fd88f9cd 100644 --- a/docs/api/examples/controller_post_computes.txt +++ b/docs/api/examples/controller_post_computes.txt @@ -15,8 +15,8 @@ HTTP/1.1 201 Connection: close Content-Length: 358 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:02 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:18 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes { diff --git a/docs/api/examples/controller_post_computescomputeidautoidlepc.txt b/docs/api/examples/controller_post_computescomputeidautoidlepc.txt index 4cba6aba..b415f392 100644 --- a/docs/api/examples/controller_post_computescomputeidautoidlepc.txt +++ b/docs/api/examples/controller_post_computescomputeidautoidlepc.txt @@ -12,8 +12,8 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:05 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:30 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id}/auto_idlepc { diff --git a/docs/api/examples/controller_post_computescomputeidemulatoraction.txt b/docs/api/examples/controller_post_computescomputeidemulatoraction.txt index 74d6c8ca..39661b8e 100644 --- a/docs/api/examples/controller_post_computescomputeidemulatoraction.txt +++ b/docs/api/examples/controller_post_computescomputeidemulatoraction.txt @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 2 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:05 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:29 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} [] diff --git a/docs/api/examples/controller_post_projects.txt b/docs/api/examples/controller_post_projects.txt index ca817828..04485de3 100644 --- a/docs/api/examples/controller_post_projects.txt +++ b/docs/api/examples/controller_post_projects.txt @@ -11,8 +11,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:10 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects { @@ -22,7 +22,7 @@ X-Route: /v2/projects "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmplof255wk/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmpdait8q35/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_post_projectsload.txt b/docs/api/examples/controller_post_projectsload.txt index e2604241..234c52b3 100644 --- a/docs/api/examples/controller_post_projectsload.txt +++ b/docs/api/examples/controller_post_projectsload.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/load { @@ -21,8 +21,8 @@ X-Route: /v2/projects/load "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmp2j3yup5d/projects/e1f54609-ce25-4d44-83cb-da0ff1518306", - "project_id": "e1f54609-ce25-4d44-83cb-da0ff1518306", + "path": "/tmp/tmp91vieu_f/projects/c486baec-d8bc-4ef1-b886-09515e2b972d", + "project_id": "c486baec-d8bc-4ef1-b886-09515e2b972d", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidclose.txt b/docs/api/examples/controller_post_projectsprojectidclose.txt index 2f9dac39..26cdfe3f 100644 --- a/docs/api/examples/controller_post_projectsprojectidclose.txt +++ b/docs/api/examples/controller_post_projectsprojectidclose.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94/close' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/9b492192-1a5d-4ff5-913c-030d2fc89e42/close' -d '{}' -POST /v2/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94/close HTTP/1.1 +POST /v2/projects/9b492192-1a5d-4ff5-913c-030d2fc89e42/close HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/close { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/close "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpnfwn8kqc/projects/0daa310c-e4ef-433a-bb05-4f6be4b32c94", - "project_id": "0daa310c-e4ef-433a-bb05-4f6be4b32c94", + "path": "/tmp/tmpxz3qdg0p/projects/9b492192-1a5d-4ff5-913c-030d2fc89e42", + "project_id": "9b492192-1a5d-4ff5-913c-030d2fc89e42", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectiddrawings.txt b/docs/api/examples/controller_post_projectsprojectiddrawings.txt index 5c5fb232..0834315f 100644 --- a/docs/api/examples/controller_post_projectsprojectiddrawings.txt +++ b/docs/api/examples/controller_post_projectsprojectiddrawings.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/40424dad-6d45-4d3c-8830-a0292297be92/drawings' -d '{"svg": "", "x": 10, "y": 20, "z": 0}' +curl -i -X POST 'http://localhost:3080/v2/projects/7178a34b-dfe9-44dd-8fae-ccf5a542cfd2/drawings' -d '{"svg": "", "x": 10, "y": 20, "z": 0}' -POST /v2/projects/40424dad-6d45-4d3c-8830-a0292297be92/drawings HTTP/1.1 +POST /v2/projects/7178a34b-dfe9-44dd-8fae-ccf5a542cfd2/drawings HTTP/1.1 { "svg": "", "x": 10, @@ -13,13 +13,13 @@ HTTP/1.1 201 Connection: close Content-Length: 323 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:30 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/drawings { - "drawing_id": "8c069932-9c5b-4993-a1cf-0b13fe1b3482", - "project_id": "40424dad-6d45-4d3c-8830-a0292297be92", + "drawing_id": "718c5457-3814-4a57-9ec7-e0e6a44120ea", + "project_id": "7178a34b-dfe9-44dd-8fae-ccf5a542cfd2", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/examples/controller_post_projectsprojectidduplicate.txt b/docs/api/examples/controller_post_projectsprojectidduplicate.txt index 3d0dbe6e..96c39cd7 100644 --- a/docs/api/examples/controller_post_projectsprojectidduplicate.txt +++ b/docs/api/examples/controller_post_projectsprojectidduplicate.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/2d734cf3-193f-4513-8e65-2800f8020262/duplicate' -d '{"name": "hello"}' +curl -i -X POST 'http://localhost:3080/v2/projects/c1dac528-bcc5-4980-b453-f085a67a1fce/duplicate' -d '{"name": "hello"}' -POST /v2/projects/2d734cf3-193f-4513-8e65-2800f8020262/duplicate HTTP/1.1 +POST /v2/projects/c1dac528-bcc5-4980-b453-f085a67a1fce/duplicate HTTP/1.1 { "name": "hello" } @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 532 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:15 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:41 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/duplicate { @@ -21,8 +21,8 @@ X-Route: /v2/projects/{project_id}/duplicate "filename": "hello.gns3", "grid_size": 0, "name": "hello", - "path": "/tmp/tmp02de5889/projects/81767cfd-5dfc-48b7-8469-a7cdc6177d49", - "project_id": "81767cfd-5dfc-48b7-8469-a7cdc6177d49", + "path": "/tmp/tmpvxebmbwg/projects/cd6111ea-9e76-463e-a75e-6a32497aff66", + "project_id": "cd6111ea-9e76-463e-a75e-6a32497aff66", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidlinks.txt b/docs/api/examples/controller_post_projectsprojectidlinks.txt index 11ff3403..1ddfa321 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinks.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinks.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/bd6497a8-181a-4508-91d9-b11a41815875/links' -d '{"nodes": [{"adapter_number": 0, "label": {"text": "Text", "x": 42, "y": 0}, "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 3}, {"adapter_number": 0, "node_id": "96022d50-1428-45da-8152-af44035c8b07", "port_number": 4}]}' +curl -i -X POST 'http://localhost:3080/v2/projects/08fcc6fd-49df-41f1-8424-129228f7809b/links' -d '{"nodes": [{"adapter_number": 0, "label": {"text": "Text", "x": 42, "y": 0}, "node_id": "b961643c-d61a-45a9-ade5-e37c8427b767", "port_number": 3}, {"adapter_number": 0, "node_id": "b961643c-d61a-45a9-ade5-e37c8427b767", "port_number": 4}]}' -POST /v2/projects/bd6497a8-181a-4508-91d9-b11a41815875/links HTTP/1.1 +POST /v2/projects/08fcc6fd-49df-41f1-8424-129228f7809b/links HTTP/1.1 { "nodes": [ { @@ -10,12 +10,12 @@ POST /v2/projects/bd6497a8-181a-4508-91d9-b11a41815875/links HTTP/1.1 "x": 42, "y": 0 }, - "node_id": "96022d50-1428-45da-8152-af44035c8b07", + "node_id": "b961643c-d61a-45a9-ade5-e37c8427b767", "port_number": 3 }, { "adapter_number": 0, - "node_id": "96022d50-1428-45da-8152-af44035c8b07", + "node_id": "b961643c-d61a-45a9-ade5-e37c8427b767", "port_number": 4 } ] @@ -26,8 +26,8 @@ HTTP/1.1 409 Connection: close Content-Length: 64 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links { diff --git a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt index b532ee9c..b129644b 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstartcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d/links/20448663-e1bf-499f-98aa-8f0e1943b2a9/start_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/de8cd9af-2b26-4ed4-b3ff-ed13da9b9215/links/04f6073e-c860-4a86-96c4-c0d55f0eedba/start_capture' -d '{}' -POST /v2/projects/f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d/links/20448663-e1bf-499f-98aa-8f0e1943b2a9/start_capture HTTP/1.1 +POST /v2/projects/de8cd9af-2b26-4ed4-b3ff-ed13da9b9215/links/04f6073e-c860-4a86-96c4-c0d55f0eedba/start_capture HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 288 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id}/start_capture { @@ -17,9 +17,9 @@ X-Route: /v2/projects/{project_id}/links/{link_id}/start_capture "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "20448663-e1bf-499f-98aa-8f0e1943b2a9", + "link_id": "04f6073e-c860-4a86-96c4-c0d55f0eedba", "link_type": "ethernet", "nodes": [], - "project_id": "f9dc6b8e-4f33-472d-90cc-29dbd8d2cf5d", + "project_id": "de8cd9af-2b26-4ed4-b3ff-ed13da9b9215", "suspend": false } diff --git a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt index 9d3b3f00..15a196fc 100644 --- a/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt +++ b/docs/api/examples/controller_post_projectsprojectidlinkslinkidstopcapture.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/0393c2a7-d6f3-42cd-a50d-4989c93eb5a3/links/834dd912-54fa-46fa-a73b-5595fb68f3de/stop_capture' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/b0dd1781-edea-429e-b673-8ba18c8e2936/links/61d830b5-d991-479d-a5a9-d6e950c9c87c/stop_capture' -d '{}' -POST /v2/projects/0393c2a7-d6f3-42cd-a50d-4989c93eb5a3/links/834dd912-54fa-46fa-a73b-5595fb68f3de/stop_capture HTTP/1.1 +POST /v2/projects/b0dd1781-edea-429e-b673-8ba18c8e2936/links/61d830b5-d991-479d-a5a9-d6e950c9c87c/stop_capture HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 288 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id}/stop_capture { @@ -17,9 +17,9 @@ X-Route: /v2/projects/{project_id}/links/{link_id}/stop_capture "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "834dd912-54fa-46fa-a73b-5595fb68f3de", + "link_id": "61d830b5-d991-479d-a5a9-d6e950c9c87c", "link_type": "ethernet", "nodes": [], - "project_id": "0393c2a7-d6f3-42cd-a50d-4989c93eb5a3", + "project_id": "b0dd1781-edea-429e-b673-8ba18c8e2936", "suspend": false } diff --git a/docs/api/examples/controller_post_projectsprojectidnodes.txt b/docs/api/examples/controller_post_projectsprojectidnodes.txt index d6e47f80..21a6238d 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodes.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodes.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/29f32450-5e3a-4dac-84ff-d1e6da6aef2d/nodes' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' +curl -i -X POST 'http://localhost:3080/v2/projects/8eb0a69a-9b59-4911-94d3-aa793ec1d422/nodes' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' -POST /v2/projects/29f32450-5e3a-4dac-84ff-d1e6da6aef2d/nodes HTTP/1.1 +POST /v2/projects/8eb0a69a-9b59-4911-94d3-aa793ec1d422/nodes HTTP/1.1 { "compute_id": "example.com", "name": "test", @@ -15,8 +15,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1181 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes { @@ -25,7 +25,7 @@ X-Route: /v2/projects/{project_id}/nodes "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -39,7 +39,7 @@ X-Route: /v2/projects/{project_id}/nodes }, "name": "test", "node_directory": null, - "node_id": "e9621527-1a07-44d9-8695-781fc5c49341", + "node_id": "31f18aa6-ae9a-47c1-9282-945b8e517882", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -55,7 +55,7 @@ X-Route: /v2/projects/{project_id}/nodes "short_name": "e0" } ], - "project_id": "29f32450-5e3a-4dac-84ff-d1e6da6aef2d", + "project_id": "8eb0a69a-9b59-4911-94d3-aa793ec1d422", "properties": { "startup_script": "echo test" }, diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt index fe9f3328..9d4cc246 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidduplicate.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/592d493e-cf38-4001-b67d-6887a9607662/nodes/0e78091b-11c1-4643-94e3-9749c03b6178/duplicate' -d '{"x": 10, "y": 5, "z": 0}' +curl -i -X POST 'http://localhost:3080/v2/projects/611fb356-cda0-48fe-912f-29b752155c97/nodes/1b8d89fd-24ef-47e0-a0a2-e47c1d4f5034/duplicate' -d '{"x": 10, "y": 5, "z": 0}' -POST /v2/projects/592d493e-cf38-4001-b67d-6887a9607662/nodes/0e78091b-11c1-4643-94e3-9749c03b6178/duplicate HTTP/1.1 +POST /v2/projects/611fb356-cda0-48fe-912f-29b752155c97/nodes/1b8d89fd-24ef-47e0-a0a2-e47c1d4f5034/duplicate HTTP/1.1 { "x": 10, "y": 5, @@ -12,8 +12,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1141 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate { @@ -22,7 +22,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -36,7 +36,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate }, "name": "test1", "node_directory": null, - "node_id": "58ea897a-be75-412a-9b51-0c8f3571416d", + "node_id": "bdd4f44b-6c3f-486c-92b4-0bfef20c47b6", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -52,7 +52,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/duplicate "short_name": "e0" } ], - "project_id": "592d493e-cf38-4001-b67d-6887a9607662", + "project_id": "611fb356-cda0-48fe-912f-29b752155c97", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt index 885018ec..5b4ad473 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab/nodes/8ce88cea-94a4-4d80-ad9b-0d9516f67a1f/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/c895fa5d-6ad9-4f61-89a3-f725ca3b1bd7/nodes/e5092e98-e512-4d9a-b7ca-4a3e08555a68/reload' -d '{}' -POST /v2/projects/d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab/nodes/8ce88cea-94a4-4d80-ad9b-0d9516f67a1f/reload HTTP/1.1 +POST /v2/projects/c895fa5d-6ad9-4f61-89a3-f725ca3b1bd7/nodes/e5092e98-e512-4d9a-b7ca-4a3e08555a68/reload HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1138 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload { @@ -18,7 +18,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -32,7 +32,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload }, "name": "test", "node_directory": null, - "node_id": "8ce88cea-94a4-4d80-ad9b-0d9516f67a1f", + "node_id": "e5092e98-e512-4d9a-b7ca-4a3e08555a68", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/reload "short_name": "e0" } ], - "project_id": "d47f2ccc-7cfc-4a3e-86e6-7bef29e0a5ab", + "project_id": "c895fa5d-6ad9-4f61-89a3-f725ca3b1bd7", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt index 04253e22..ecc8d2e0 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/47485f65-b765-423f-a85f-194cb3763c2b/nodes/2d893cfd-a172-4d97-b6d9-fb02a12ba7b8/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/a7eb1926-1196-4bc4-9da5-fd99629beca7/nodes/ddafa3bb-c5d3-44b6-943d-70aeb955cf25/start' -d '{}' -POST /v2/projects/47485f65-b765-423f-a85f-194cb3763c2b/nodes/2d893cfd-a172-4d97-b6d9-fb02a12ba7b8/start HTTP/1.1 +POST /v2/projects/a7eb1926-1196-4bc4-9da5-fd99629beca7/nodes/ddafa3bb-c5d3-44b6-943d-70aeb955cf25/start HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1138 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/start { @@ -18,7 +18,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/start "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -32,7 +32,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/start }, "name": "test", "node_directory": null, - "node_id": "2d893cfd-a172-4d97-b6d9-fb02a12ba7b8", + "node_id": "ddafa3bb-c5d3-44b6-943d-70aeb955cf25", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/start "short_name": "e0" } ], - "project_id": "47485f65-b765-423f-a85f-194cb3763c2b", + "project_id": "a7eb1926-1196-4bc4-9da5-fd99629beca7", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt index 338bd293..703a4a8e 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/458ca158-c86f-47ed-a773-afcbc878b6be/nodes/a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/84a7435e-9dbd-4740-8a0d-0ed5dc1b8e52/nodes/49d82a5c-0f5b-408d-828c-041a57e8e437/stop' -d '{}' -POST /v2/projects/458ca158-c86f-47ed-a773-afcbc878b6be/nodes/a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b/stop HTTP/1.1 +POST /v2/projects/84a7435e-9dbd-4740-8a0d-0ed5dc1b8e52/nodes/49d82a5c-0f5b-408d-828c-041a57e8e437/stop HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1138 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop { @@ -18,7 +18,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -32,7 +32,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop }, "name": "test", "node_directory": null, - "node_id": "a4bd9d3c-aadd-43b9-a3be-8005f2fd7f0b", + "node_id": "49d82a5c-0f5b-408d-828c-041a57e8e437", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/stop "short_name": "e0" } ], - "project_id": "458ca158-c86f-47ed-a773-afcbc878b6be", + "project_id": "84a7435e-9dbd-4740-8a0d-0ed5dc1b8e52", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt b/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt index 012a4011..232e3908 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesnodeidsuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/e885dceb-79f3-4e68-81f3-cd990504796e/nodes/14b1cd8a-5ff5-484c-b509-cd43642fed5b/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/0dd0a027-b381-40a7-ad36-fcce13669ef8/nodes/d1e79a2f-24c6-4748-9edb-96a3c6920833/suspend' -d '{}' -POST /v2/projects/e885dceb-79f3-4e68-81f3-cd990504796e/nodes/14b1cd8a-5ff5-484c-b509-cd43642fed5b/suspend HTTP/1.1 +POST /v2/projects/0dd0a027-b381-40a7-ad36-fcce13669ef8/nodes/d1e79a2f-24c6-4748-9edb-96a3c6920833/suspend HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1138 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:09 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:33 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend { @@ -18,7 +18,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend "compute_id": "example.com", "console": null, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -32,7 +32,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend }, "name": "test", "node_directory": null, - "node_id": "14b1cd8a-5ff5-484c-b509-cd43642fed5b", + "node_id": "d1e79a2f-24c6-4748-9edb-96a3c6920833", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -48,7 +48,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id}/suspend "short_name": "e0" } ], - "project_id": "e885dceb-79f3-4e68-81f3-cd990504796e", + "project_id": "0dd0a027-b381-40a7-ad36-fcce13669ef8", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/examples/controller_post_projectsprojectidnodesreload.txt b/docs/api/examples/controller_post_projectsprojectidnodesreload.txt index 6050d610..3a824989 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesreload.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesreload.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/0b2edeea-997e-48ff-aaa6-fe006192371c/nodes/reload' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/10287120-2783-499b-ae39-3acb1169df2e/nodes/reload' -d '{}' -POST /v2/projects/0b2edeea-997e-48ff-aaa6-fe006192371c/nodes/reload HTTP/1.1 +POST /v2/projects/10287120-2783-499b-ae39-3acb1169df2e/nodes/reload HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/reload diff --git a/docs/api/examples/controller_post_projectsprojectidnodesstart.txt b/docs/api/examples/controller_post_projectsprojectidnodesstart.txt index cea286d9..b9424715 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesstart.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesstart.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/288a0429-ac2b-435f-97c0-cf5e3220e1bd/nodes/start' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/31c054c6-03e0-4416-bac3-be5bf2e91850/nodes/start' -d '{}' -POST /v2/projects/288a0429-ac2b-435f-97c0-cf5e3220e1bd/nodes/start HTTP/1.1 +POST /v2/projects/31c054c6-03e0-4416-bac3-be5bf2e91850/nodes/start HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/start diff --git a/docs/api/examples/controller_post_projectsprojectidnodesstop.txt b/docs/api/examples/controller_post_projectsprojectidnodesstop.txt index 277ef9da..cc925766 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodesstop.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodesstop.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/222c37b9-df06-417a-a4c3-9a7359e1c09f/nodes/stop' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/e65892b4-f716-4a5a-acf8-6d30a46f268b/nodes/stop' -d '{}' -POST /v2/projects/222c37b9-df06-417a-a4c3-9a7359e1c09f/nodes/stop HTTP/1.1 +POST /v2/projects/e65892b4-f716-4a5a-acf8-6d30a46f268b/nodes/stop HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/stop diff --git a/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt b/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt index ce89e44f..5cd6902d 100644 --- a/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt +++ b/docs/api/examples/controller_post_projectsprojectidnodessuspend.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/2f4cb6f7-c7f8-485e-926c-0b4804fe0cab/nodes/suspend' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/dd4e2586-ba82-4145-8013-fcd197258949/nodes/suspend' -d '{}' -POST /v2/projects/2f4cb6f7-c7f8-485e-926c-0b4804fe0cab/nodes/suspend HTTP/1.1 +POST /v2/projects/dd4e2586-ba82-4145-8013-fcd197258949/nodes/suspend HTTP/1.1 {} @@ -8,7 +8,7 @@ HTTP/1.1 204 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/suspend diff --git a/docs/api/examples/controller_post_projectsprojectidopen.txt b/docs/api/examples/controller_post_projectsprojectidopen.txt index e649ac72..8ac32b8e 100644 --- a/docs/api/examples/controller_post_projectsprojectidopen.txt +++ b/docs/api/examples/controller_post_projectsprojectidopen.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/3b67f766-0094-4686-8890-8dcc6c9abf54/open' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/5caf123f-535d-4611-9f0c-0fc8e8964994/open' -d '{}' -POST /v2/projects/3b67f766-0094-4686-8890-8dcc6c9abf54/open HTTP/1.1 +POST /v2/projects/5caf123f-535d-4611-9f0c-0fc8e8964994/open HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:11 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/open { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/open "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpnkx3ochx/projects/3b67f766-0094-4686-8890-8dcc6c9abf54", - "project_id": "3b67f766-0094-4686-8890-8dcc6c9abf54", + "path": "/tmp/tmpfou165vp/projects/5caf123f-535d-4611-9f0c-0fc8e8964994", + "project_id": "5caf123f-535d-4611-9f0c-0fc8e8964994", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_projectsprojectidsnapshots.txt b/docs/api/examples/controller_post_projectsprojectidsnapshots.txt index 03ba74ad..e3e7f4df 100644 --- a/docs/api/examples/controller_post_projectsprojectidsnapshots.txt +++ b/docs/api/examples/controller_post_projectsprojectidsnapshots.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52/snapshots' -d '{"name": "snap1"}' +curl -i -X POST 'http://localhost:3080/v2/projects/8e5574d9-d44a-488c-ba2e-b10b9ddf783a/snapshots' -d '{"name": "snap1"}' -POST /v2/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52/snapshots HTTP/1.1 +POST /v2/projects/8e5574d9-d44a-488c-ba2e-b10b9ddf783a/snapshots HTTP/1.1 { "name": "snap1" } @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 170 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:57 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/snapshots { - "created_at": 1542693683, + "created_at": 1542703727, "name": "snap1", - "project_id": "b8b24edf-6743-4bbd-b071-6fcdae3fcb52", - "snapshot_id": "2c6fa4f6-eda6-43ed-a8d6-cee157627759" + "project_id": "8e5574d9-d44a-488c-ba2e-b10b9ddf783a", + "snapshot_id": "9ab0ef3d-4fdb-46a0-ac2d-509308c34ef9" } diff --git a/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt b/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt index a8bcfc37..7e8675ff 100644 --- a/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt +++ b/docs/api/examples/controller_post_projectsprojectidsnapshotssnapshotidrestore.txt @@ -1,6 +1,6 @@ -curl -i -X POST 'http://localhost:3080/v2/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558/snapshots/128894a2-3948-440a-a3b4-e9f6a943599d/restore' -d '{}' +curl -i -X POST 'http://localhost:3080/v2/projects/d9370dc6-7c83-4c84-bf99-9d85c3f4f95d/snapshots/ea494cf7-a3cb-4a1e-89db-ab3f3a298f22/restore' -d '{}' -POST /v2/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558/snapshots/128894a2-3948-440a-a3b4-e9f6a943599d/restore HTTP/1.1 +POST /v2/projects/d9370dc6-7c83-4c84-bf99-9d85c3f4f95d/snapshots/ea494cf7-a3cb-4a1e-89db-ab3f3a298f22/restore HTTP/1.1 {} @@ -8,8 +8,8 @@ HTTP/1.1 201 Connection: close Content-Length: 530 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:47 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id}/restore { @@ -19,8 +19,8 @@ X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id}/restore "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpm6aoic2c/projects/013b03b4-61a7-4d6f-9c89-720c7c2be558", - "project_id": "013b03b4-61a7-4d6f-9c89-720c7c2be558", + "path": "/tmp/tmperg890gj/projects/d9370dc6-7c83-4c84-bf99-9d85c3f4f95d", + "project_id": "d9370dc6-7c83-4c84-bf99-9d85c3f4f95d", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/examples/controller_post_shutdown.txt b/docs/api/examples/controller_post_shutdown.txt index ed19338b..1ea78861 100644 --- a/docs/api/examples/controller_post_shutdown.txt +++ b/docs/api/examples/controller_post_shutdown.txt @@ -8,7 +8,7 @@ HTTP/1.1 201 Connection: close Content-Length: 0 Content-Type: application/octet-stream -Date: Tue, 20 Nov 2018 06:01:15 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:41 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/shutdown diff --git a/docs/api/examples/controller_post_version.txt b/docs/api/examples/controller_post_version.txt index 199a0e5a..fd2f7e8e 100644 --- a/docs/api/examples/controller_post_version.txt +++ b/docs/api/examples/controller_post_version.txt @@ -1,8 +1,8 @@ -curl -i -X POST 'http://localhost:3080/v2/version' -d '{"version": "2.2.0dev4"}' +curl -i -X POST 'http://localhost:3080/v2/version' -d '{"version": "2.2.0dev5"}' POST /v2/version HTTP/1.1 { - "version": "2.2.0dev4" + "version": "2.2.0dev5" } @@ -10,10 +10,10 @@ HTTP/1.1 200 Connection: close Content-Length: 30 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:23 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:57 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/version { - "version": "2.2.0dev4" + "version": "2.2.0dev5" } diff --git a/docs/api/examples/controller_put_appliancesapplianceid.txt b/docs/api/examples/controller_put_appliancesapplianceid.txt index bcdfeddc..89bc7fef 100644 --- a/docs/api/examples/controller_put_appliancesapplianceid.txt +++ b/docs/api/examples/controller_put_appliancesapplianceid.txt @@ -1,8 +1,8 @@ -curl -i -X PUT 'http://localhost:3080/v2/appliances/a96be97e-5ffe-4225-af8b-6347f858a2e5' -d '{"appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "category": "guest", "compute_id": "local", "console_auto_start": false, "console_type": "telnet", "default_name_format": "PC{0}", "name": "VPCS_TEST_RENAMED", "symbol": ":/symbols/vpcs_guest.svg"}' +curl -i -X PUT 'http://localhost:3080/v2/appliances/0f861b63-ccad-435d-88d1-354ad9f3d77a' -d '{"appliance_id": "0f861b63-ccad-435d-88d1-354ad9f3d77a", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "category": "guest", "compute_id": "local", "console_auto_start": false, "console_type": "telnet", "default_name_format": "PC{0}", "name": "VPCS_TEST_RENAMED", "symbol": ":/symbols/vpcs_guest.svg"}' -PUT /v2/appliances/a96be97e-5ffe-4225-af8b-6347f858a2e5 HTTP/1.1 +PUT /v2/appliances/0f861b63-ccad-435d-88d1-354ad9f3d77a HTTP/1.1 { - "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_id": "0f861b63-ccad-435d-88d1-354ad9f3d77a", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "category": "guest", @@ -19,12 +19,12 @@ HTTP/1.1 200 Connection: close Content-Length: 388 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:00 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:14 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/appliances/{appliance_id} { - "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_id": "0f861b63-ccad-435d-88d1-354ad9f3d77a", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "builtin": false, diff --git a/docs/api/examples/controller_put_computescomputeid.txt b/docs/api/examples/controller_put_computescomputeid.txt index f4bebafd..c5377389 100644 --- a/docs/api/examples/controller_put_computescomputeid.txt +++ b/docs/api/examples/controller_put_computescomputeid.txt @@ -15,8 +15,8 @@ HTTP/1.1 200 Connection: close Content-Length: 359 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:03 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:20 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/computes/{compute_id} { diff --git a/docs/api/examples/controller_put_gns3vm.txt b/docs/api/examples/controller_put_gns3vm.txt index 753205e5..f363f272 100644 --- a/docs/api/examples/controller_put_gns3vm.txt +++ b/docs/api/examples/controller_put_gns3vm.txt @@ -10,8 +10,8 @@ HTTP/1.1 201 Connection: close Content-Length: 27 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/gns3vm { diff --git a/docs/api/examples/controller_put_projectsprojectid.txt b/docs/api/examples/controller_put_projectsprojectid.txt index cd72b5e1..4a532e8c 100644 --- a/docs/api/examples/controller_put_projectsprojectid.txt +++ b/docs/api/examples/controller_put_projectsprojectid.txt @@ -10,8 +10,8 @@ HTTP/1.1 200 Connection: close Content-Length: 662 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:10 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:34 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id} { @@ -21,7 +21,7 @@ X-Route: /v2/projects/{project_id} "filename": "test.gns3", "grid_size": 0, "name": "test2", - "path": "/tmp/tmp7cldkfwl/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmpghp7ta5o/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt b/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt index bb1eb0b5..6fa03c42 100644 --- a/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt +++ b/docs/api/examples/controller_put_projectsprojectiddrawingsdrawingid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/0686be16-2d32-4f77-a9c2-0d7c8062d023/drawings/ec49d9aa-6051-483f-bc51-034117cd7b54' -d '{"x": 42}' +curl -i -X PUT 'http://localhost:3080/v2/projects/e4f85f59-7858-45a3-aa43-f3795b46578b/drawings/0c6d425f-d689-4369-a244-ef20db58c509' -d '{"x": 42}' -PUT /v2/projects/0686be16-2d32-4f77-a9c2-0d7c8062d023/drawings/ec49d9aa-6051-483f-bc51-034117cd7b54 HTTP/1.1 +PUT /v2/projects/e4f85f59-7858-45a3-aa43-f3795b46578b/drawings/0c6d425f-d689-4369-a244-ef20db58c509 HTTP/1.1 { "x": 42 } @@ -10,13 +10,13 @@ HTTP/1.1 201 Connection: close Content-Length: 323 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:06 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:31 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/drawings/{drawing_id} { - "drawing_id": "ec49d9aa-6051-483f-bc51-034117cd7b54", - "project_id": "0686be16-2d32-4f77-a9c2-0d7c8062d023", + "drawing_id": "0c6d425f-d689-4369-a244-ef20db58c509", + "project_id": "e4f85f59-7858-45a3-aa43-f3795b46578b", "rotation": 0, "svg": "", "x": 42, diff --git a/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt b/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt index fb838e23..4f021d9c 100644 --- a/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt +++ b/docs/api/examples/controller_put_projectsprojectidlinkslinkid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/b703f752-a954-4794-958a-8eac176ac316/links/f3893bd7-489a-4d53-a070-fc5bc566ff9c' -d '{"filters": {"frequency_drop": [50], "latency": [10]}, "nodes": [{"adapter_number": 0, "label": {"text": "Hello", "x": 64, "y": 0}, "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", "port_number": 3}, {"adapter_number": 2, "node_id": "763411ab-6843-4908-a667-de022c261e1f", "port_number": 4}]}' +curl -i -X PUT 'http://localhost:3080/v2/projects/4854a4b1-83bd-43c5-b556-532979f5e45f/links/c939cbf3-c221-472c-84ce-4c4fc41801de' -d '{"filters": {"frequency_drop": [50], "latency": [10]}, "nodes": [{"adapter_number": 0, "label": {"text": "Hello", "x": 64, "y": 0}, "node_id": "047905b7-88ea-40c5-b3c5-917ef5952203", "port_number": 3}, {"adapter_number": 2, "node_id": "52052251-cbea-4740-93d6-aa4f2f3f5784", "port_number": 4}]}' -PUT /v2/projects/b703f752-a954-4794-958a-8eac176ac316/links/f3893bd7-489a-4d53-a070-fc5bc566ff9c HTTP/1.1 +PUT /v2/projects/4854a4b1-83bd-43c5-b556-532979f5e45f/links/c939cbf3-c221-472c-84ce-4c4fc41801de HTTP/1.1 { "filters": { "frequency_drop": [ @@ -18,12 +18,12 @@ PUT /v2/projects/b703f752-a954-4794-958a-8eac176ac316/links/f3893bd7-489a-4d53-a "x": 64, "y": 0 }, - "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", + "node_id": "047905b7-88ea-40c5-b3c5-917ef5952203", "port_number": 3 }, { "adapter_number": 2, - "node_id": "763411ab-6843-4908-a667-de022c261e1f", + "node_id": "52052251-cbea-4740-93d6-aa4f2f3f5784", "port_number": 4 } ] @@ -34,8 +34,8 @@ HTTP/1.1 201 Connection: close Content-Length: 1022 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:07 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/links/{link_id} { @@ -50,7 +50,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} 10 ] }, - "link_id": "f3893bd7-489a-4d53-a070-fc5bc566ff9c", + "link_id": "c939cbf3-c221-472c-84ce-4c4fc41801de", "link_type": "ethernet", "nodes": [ { @@ -60,7 +60,7 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": 64, "y": 0 }, - "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", + "node_id": "047905b7-88ea-40c5-b3c5-917ef5952203", "port_number": 3 }, { @@ -72,10 +72,10 @@ X-Route: /v2/projects/{project_id}/links/{link_id} "x": -10, "y": -10 }, - "node_id": "763411ab-6843-4908-a667-de022c261e1f", + "node_id": "52052251-cbea-4740-93d6-aa4f2f3f5784", "port_number": 4 } ], - "project_id": "b703f752-a954-4794-958a-8eac176ac316", + "project_id": "4854a4b1-83bd-43c5-b556-532979f5e45f", "suspend": false } diff --git a/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt b/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt index e1b00c7b..f046a02b 100644 --- a/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt +++ b/docs/api/examples/controller_put_projectsprojectidnodesnodeid.txt @@ -1,6 +1,6 @@ -curl -i -X PUT 'http://localhost:3080/v2/projects/f1f42bfb-0d7c-4580-bb5d-4a074d4564ab/nodes/9f025caf-ae0f-49b0-a1b0-9cb5ec190eab' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' +curl -i -X PUT 'http://localhost:3080/v2/projects/7395a93d-c8a1-4ab6-8de4-6ae8079d0e6f/nodes/f0ea6799-5677-458e-9792-5093050a1d1e' -d '{"compute_id": "example.com", "name": "test", "node_type": "vpcs", "properties": {"startup_script": "echo test"}}' -PUT /v2/projects/f1f42bfb-0d7c-4580-bb5d-4a074d4564ab/nodes/9f025caf-ae0f-49b0-a1b0-9cb5ec190eab HTTP/1.1 +PUT /v2/projects/7395a93d-c8a1-4ab6-8de4-6ae8079d0e6f/nodes/f0ea6799-5677-458e-9792-5093050a1d1e HTTP/1.1 { "compute_id": "example.com", "name": "test", @@ -15,8 +15,8 @@ HTTP/1.1 200 Connection: close Content-Length: 1138 Content-Type: application/json -Date: Tue, 20 Nov 2018 06:01:08 GMT -Server: Python/3.6 GNS3/2.2.0dev4 +Date: Tue, 20 Nov 2018 08:48:32 GMT +Server: Python/3.6 GNS3/2.2.0dev5 X-Route: /v2/projects/{project_id}/nodes/{node_id} { @@ -25,7 +25,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "compute_id": "example.com", "console": 2048, "console_auto_start": false, - "console_host": "", + "console_host": "", "console_type": null, "custom_adapters": [], "first_port_name": null, @@ -39,7 +39,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} }, "name": "test", "node_directory": null, - "node_id": "9f025caf-ae0f-49b0-a1b0-9cb5ec190eab", + "node_id": "f0ea6799-5677-458e-9792-5093050a1d1e", "node_type": "vpcs", "port_name_format": "Ethernet{0}", "port_segment_size": 0, @@ -55,7 +55,7 @@ X-Route: /v2/projects/{project_id}/nodes/{node_id} "short_name": "e0" } ], - "project_id": "f1f42bfb-0d7c-4580-bb5d-4a074d4564ab", + "project_id": "7395a93d-c8a1-4ab6-8de4-6ae8079d0e6f", "properties": {}, "status": "stopped", "symbol": ":/symbols/computer.svg", diff --git a/docs/api/notifications/appliance.created.json b/docs/api/notifications/appliance.created.json index 0bb9da49..d4082db7 100644 --- a/docs/api/notifications/appliance.created.json +++ b/docs/api/notifications/appliance.created.json @@ -1,5 +1,5 @@ { - "appliance_id": "a5ee20d1-1217-4c2f-93d8-eefc1fba7a92", + "appliance_id": "5c30e03e-f47d-4f29-b42a-1cfa03f4a9b0", "appliance_type": "ethernet_hub", "builtin": false, "category": "switch", diff --git a/docs/api/notifications/appliance.deleted.json b/docs/api/notifications/appliance.deleted.json index b4bcd158..57c7d7d8 100644 --- a/docs/api/notifications/appliance.deleted.json +++ b/docs/api/notifications/appliance.deleted.json @@ -1,5 +1,5 @@ { - "appliance_id": "259b41b8-d70a-4882-8ba3-017ee11ecd99", + "appliance_id": "513c90b1-3a13-40bc-8b78-ecf89ec7ed49", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "builtin": false, diff --git a/docs/api/notifications/appliance.updated.json b/docs/api/notifications/appliance.updated.json index 65269b3f..c5ec8e57 100644 --- a/docs/api/notifications/appliance.updated.json +++ b/docs/api/notifications/appliance.updated.json @@ -1,5 +1,5 @@ { - "appliance_id": "a96be97e-5ffe-4225-af8b-6347f858a2e5", + "appliance_id": "0f861b63-ccad-435d-88d1-354ad9f3d77a", "appliance_type": "vpcs", "base_script_file": "vpcs_base_config.txt", "builtin": false, diff --git a/docs/api/notifications/drawing.created.json b/docs/api/notifications/drawing.created.json index 0e365430..fad1a719 100644 --- a/docs/api/notifications/drawing.created.json +++ b/docs/api/notifications/drawing.created.json @@ -1,6 +1,6 @@ { - "drawing_id": "06bde5d8-99a7-4ebf-a1e0-60e0602cdeed", - "project_id": "e4a1f1ad-189c-4445-8945-9cc9abaded88", + "drawing_id": "a1de5575-9937-4d17-93f4-1507af86d1b5", + "project_id": "d0efc2df-129c-4efe-8f95-1ab59d87d2f0", "rotation": 0, "svg": "", "x": 10, diff --git a/docs/api/notifications/drawing.deleted.json b/docs/api/notifications/drawing.deleted.json index cad60fab..f5de9484 100644 --- a/docs/api/notifications/drawing.deleted.json +++ b/docs/api/notifications/drawing.deleted.json @@ -1,6 +1,6 @@ { - "drawing_id": "ed1a39d3-0452-4589-aa6e-92b38f0865c6", - "project_id": "3993dfb6-2aa7-4511-8a40-51938283126a", + "drawing_id": "01160a0a-5fa2-41fc-a4b3-6a38c8e7c571", + "project_id": "6a27e9d1-dc12-4217-a534-7afd47b41bba", "rotation": 0, "svg": "", "x": 0, diff --git a/docs/api/notifications/drawing.updated.json b/docs/api/notifications/drawing.updated.json index 8268ac39..c8b4326a 100644 --- a/docs/api/notifications/drawing.updated.json +++ b/docs/api/notifications/drawing.updated.json @@ -1,6 +1,6 @@ { - "drawing_id": "ec49d9aa-6051-483f-bc51-034117cd7b54", - "project_id": "0686be16-2d32-4f77-a9c2-0d7c8062d023", + "drawing_id": "0c6d425f-d689-4369-a244-ef20db58c509", + "project_id": "e4f85f59-7858-45a3-aa43-f3795b46578b", "rotation": 0, "x": 42, "y": 20, diff --git a/docs/api/notifications/link.created.json b/docs/api/notifications/link.created.json index c7159a92..581c7604 100644 --- a/docs/api/notifications/link.created.json +++ b/docs/api/notifications/link.created.json @@ -10,7 +10,7 @@ 10 ] }, - "link_id": "43f9af37-d478-4727-8aef-c761aa24e680", + "link_id": "e4ce29c1-33f8-434c-87ba-6aa85b2dd089", "link_type": "ethernet", "nodes": [ { @@ -22,7 +22,7 @@ "x": -10, "y": -10 }, - "node_id": "35c89170-3bd9-44db-8287-95a653af80e4", + "node_id": "6df6e46d-66d9-4856-bf59-6d603a8b9e64", "port_number": 3 }, { @@ -34,10 +34,10 @@ "x": -10, "y": -10 }, - "node_id": "655110f6-65e2-4d19-9962-182264b6d653", + "node_id": "6d1f08eb-7197-4b4f-9024-819ff2114498", "port_number": 4 } ], - "project_id": "ea40035b-2c6b-4e64-ad82-fa07698c3840", + "project_id": "f4e51aa4-8b8e-4166-a03d-4c4dcad6076e", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/link.deleted.json b/docs/api/notifications/link.deleted.json index 5afd36ca..2e4d8435 100644 --- a/docs/api/notifications/link.deleted.json +++ b/docs/api/notifications/link.deleted.json @@ -3,9 +3,9 @@ "capture_file_path": null, "capturing": false, "filters": {}, - "link_id": "9797461f-7f75-4515-b6dd-0f139e946b10", + "link_id": "819ee27a-997d-4986-8e48-41a7520e297a", "link_type": "ethernet", "nodes": [], - "project_id": "adf14fe8-9385-4261-8e66-16de2783ecc7", + "project_id": "12b585a6-9440-43fd-a231-789faf5559d7", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/link.updated.json b/docs/api/notifications/link.updated.json index 2bdc3bf4..c68f2d93 100644 --- a/docs/api/notifications/link.updated.json +++ b/docs/api/notifications/link.updated.json @@ -10,7 +10,7 @@ 10 ] }, - "link_id": "f3893bd7-489a-4d53-a070-fc5bc566ff9c", + "link_id": "c939cbf3-c221-472c-84ce-4c4fc41801de", "link_type": "ethernet", "nodes": [ { @@ -20,7 +20,7 @@ "x": 64, "y": 0 }, - "node_id": "89b7c700-a385-4011-a0be-a732672d8d9f", + "node_id": "047905b7-88ea-40c5-b3c5-917ef5952203", "port_number": 3 }, { @@ -32,10 +32,10 @@ "x": -10, "y": -10 }, - "node_id": "763411ab-6843-4908-a667-de022c261e1f", + "node_id": "52052251-cbea-4740-93d6-aa4f2f3f5784", "port_number": 4 } ], - "project_id": "b703f752-a954-4794-958a-8eac176ac316", + "project_id": "4854a4b1-83bd-43c5-b556-532979f5e45f", "suspend": false } \ No newline at end of file diff --git a/docs/api/notifications/node.updated.json b/docs/api/notifications/node.updated.json index ec1409f7..0e63ef6b 100644 --- a/docs/api/notifications/node.updated.json +++ b/docs/api/notifications/node.updated.json @@ -17,7 +17,7 @@ "y": -25 }, "name": "PC2", - "node_directory": "/tmp/pytest-of-grossmj/pytest-36/test_load_project0/project-files/vpcs/748bcd89-624a-40eb-a8d3-1d2e85c99b51", + "node_directory": "/tmp/pytest-of-grossmj/pytest-48/test_load_project0/project-files/vpcs/748bcd89-624a-40eb-a8d3-1d2e85c99b51", "node_id": "748bcd89-624a-40eb-a8d3-1d2e85c99b51", "node_type": "vpcs", "port_name_format": "Ethernet{0}", diff --git a/docs/api/notifications/project.closed.json b/docs/api/notifications/project.closed.json index 3824d8b5..08ee8764 100644 --- a/docs/api/notifications/project.closed.json +++ b/docs/api/notifications/project.closed.json @@ -5,8 +5,8 @@ "filename": "test.gns3", "grid_size": 0, "name": "test", - "path": "/tmp/tmpt6b7x6sl/projects/b8b24edf-6743-4bbd-b071-6fcdae3fcb52", - "project_id": "b8b24edf-6743-4bbd-b071-6fcdae3fcb52", + "path": "/tmp/tmp65zk1q4u/projects/8e5574d9-d44a-488c-ba2e-b10b9ddf783a", + "project_id": "8e5574d9-d44a-488c-ba2e-b10b9ddf783a", "scene_height": 1000, "scene_width": 2000, "show_grid": false, diff --git a/docs/api/notifications/project.updated.json b/docs/api/notifications/project.updated.json index 557a3a3a..b028201d 100644 --- a/docs/api/notifications/project.updated.json +++ b/docs/api/notifications/project.updated.json @@ -5,7 +5,7 @@ "filename": "test.gns3", "grid_size": 0, "name": "test2", - "path": "/tmp/tmp7cldkfwl/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", + "path": "/tmp/tmpghp7ta5o/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", "scene_height": 1000, "scene_width": 2000, diff --git a/docs/api/notifications/snapshot.restored.json b/docs/api/notifications/snapshot.restored.json index 618bfc6b..28a900f5 100644 --- a/docs/api/notifications/snapshot.restored.json +++ b/docs/api/notifications/snapshot.restored.json @@ -1,6 +1,6 @@ { - "created_at": 1542693676, + "created_at": 1542703723, "name": "test", - "project_id": "013b03b4-61a7-4d6f-9c89-720c7c2be558", - "snapshot_id": "128894a2-3948-440a-a3b4-e9f6a943599d" + "project_id": "d9370dc6-7c83-4c84-bf99-9d85c3f4f95d", + "snapshot_id": "ea494cf7-a3cb-4a1e-89db-ab3f3a298f22" } \ No newline at end of file diff --git a/docs/controller_notifications.rst b/docs/controller_notifications.rst index 2aad8b3e..6161924b 100644 --- a/docs/controller_notifications.rst +++ b/docs/controller_notifications.rst @@ -2,7 +2,7 @@ Controller notifications ======================== Controller notifications can be received from the controller, they can be used to get information -about computes and appliance templates. +about computes and appliance. Notification endpoints ********************** diff --git a/docs/curl.rst b/docs/curl.rst index a4acd4d6..055d1530 100644 --- a/docs/curl.rst +++ b/docs/curl.rst @@ -233,6 +233,13 @@ Packet filters allow to filter packet on a given link. Here to drop a packet eve .. code-block:: shell-session curl -X PUT "http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/links/007f2177-6790-4e1b-ac28-41fa226b2a06" -d '{"filters": {"frequency_drop": [5]}}' +Appliance creation +################### + +An appliance contains all the required settings to create a new node. This is useful to create many nodes with the same settings. + +.. code-block:: shell-session + curl -X POST "http://localhost:3080/v2/appliances" -d '{"name": "Qemu appliance", "compute_id": "local", "platform": "i386", "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", "ram": 512, "appliance_type": "qemu"}' Node creation ############## @@ -240,10 +247,10 @@ Node creation There are two ways to add nodes. 1. Manually by passing all the information required to create a new node. -2. Using an appliance template stored on your server. +2. Using an appliance stored on your server. -Using an appliance template ---------------------------- +Using an appliance +------------------ List all the available appliance templates: @@ -253,30 +260,77 @@ List all the available appliance templates: [ { - "appliance_id": "5fa8a8ca-0f80-4ac4-8104-2b32c7755443", + "adapter_type": "e1000", + "adapters": 1, + "appliance_id": "70c79a82-5ef6-4911-8284-f6f31eb0ebf2", + "appliance_type": "qemu", + "bios_image": "", + "boot_priority": "c", + "builtin": false, "category": "guest", - "compute_id": "vm", + "cdrom_image": "", + "compute_id": "local", + "console_auto_start": false, + "console_type": "telnet", + "cpu_throttling": 0, + "cpus": 1, + "custom_adapters": [], "default_name_format": "{name}-{0}", - "name": "MicroCore", - "node_type": "qemu", - "symbol": ":/symbols/qemu_guest.svg" - }, + "first_port_name": "", + "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", + "hda_disk_interface": "ide", + "hdb_disk_image": "", + "hdb_disk_interface": "ide", + "hdc_disk_image": "", + "hdc_disk_interface": "ide", + "hdd_disk_image": "", + "hdd_disk_interface": "ide", + "initrd": "", + "kernel_command_line": "", + "kernel_image": "", + "legacy_networking": false, + "linked_clone": true, + "mac_address": "", + "name": "Qemu appliance", + "on_close": "power_off", + "options": "", + "platform": "i386", + "port_name_format": "Ethernet{0}", + "port_segment_size": 0, + "process_priority": "normal", + "qemu_path": "", + "ram": 512, + "symbol": ":/symbols/qemu_guest.svg", + "usage": "" + } { - "appliance_id": "9cd59d5a-c70f-4454-8313-6a9e81a8278f", + "adapters": 1, + "appliance_id": "888984a8-c802-427b-97a7-ee097ee63faf", + "appliance_type": "docker", + "builtin": false, "category": "guest", - "compute_id": "vm", + "compute_id": "local", + "console_auto_start": false, + "console_http_path": "/", + "console_http_port": 80, + "console_resolution": "1024x768", + "console_type": "telnet", + "custom_adapters": [], "default_name_format": "{name}-{0}", - "name": "Chromium", - "node_type": "docker", + "environment": "", + "extra_hosts": "", + "image": "debian:latest", + "name": "Debian", + "start_command": "", "symbol": ":/symbols/docker_guest.svg" - } + }, ] -Use the appliance template and add coordinates to select where the node will be put on the canvas: +Use the appliance and add coordinates to select where the node will be put on the canvas: .. code-block:: shell-session - # curl -X POST http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/appliances/9cd59d5a-c70f-4454-8313-6a9e81a8278f -d '{"x": 12, "y": 42}' + # curl -X POST http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/appliances/888984a8-c802-427b-97a7-ee097ee63faf -d '{"x": 12, "y": 42}' Manual creation of a Qemu node @@ -487,20 +541,36 @@ Manual creation of a Dynamips node "z": 0 } -Notifications -############# +Controller notifications +######################## -Notifications can be seen by connection to the notification feed: +Controller notifications can be seen by connecting to the notification feed: .. code-block:: shell-session - # curl "http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/notifications" + # curl "http://localhost:3080/v2/notifications" {"action": "ping", "event": {"compute_id": "local", "cpu_usage_percent": 35.7, "memory_usage_percent": 80.7}} + {"action": "compute.updated", "event": {"capabilities": {"node_types": ["cloud", "ethernet_hub", "ethernet_switch", "nat", "vpcs", "virtualbox", "dynamips", "frame_relay_switch", "atm_switch", "qemu", "vmware", "traceng", "docker", "iou"], "platform": "linux", "version": "2.2.0dev5-68ecbff"}, "compute_id": "local", "connected": true, "cpu_usage_percent": 12.0, "host": "127.0.0.1", "last_error": null, "memory_usage_percent": 45.7, "name": "coruscant", "port": 3080, "protocol": "http", "user": "admin"}} + {"action": "appliance.created", "event": {"appliance_id": "384f9b02-6451-4b27-8d29-76623b5d9e79", "appliance_type": "dynamips", "auto_delete_disks": false, "builtin": false, "category": "router", "compute_id": "local", "console_auto_start": false, "console_type": "telnet", "default_name_format": "R{0}", "disk0": 0, "disk1": 0, "exec_area": 64, "idlemax": 500, "idlepc": "", "idlesleep": 30, "image": "c3725-adventerprisek9-mz.124-15.T14.image", "iomem": 5, "mac_addr": "", "mmap": true, "name": "My c3725", "nvram": 256, "platform": "c3725", "private_config": "", "ram": 128, "sparsemem": true, "startup_config": "ios_base_startup-config.txt", "symbol": ":/symbols/router.svg", "system_id": "FTX0945W0MY"}} + +A Websocket notification stream is also available on http://localhost:3080/v2/notifications/ws + +Read :doc:`controller_notifications` for more information. + + +Project notifications +##################### + +Project notifications can be seen by connecting to the notification feed: + +.. code-block:: shell-session + + # curl "http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/notifications" {"action": "node.updated", "event": {"command_line": "/usr/local/bin/vpcs -p 5001 -m 1 -i 1 -F -R -s 10001 -c 10000 -t 127.0.0.1", "compute_id": "local", "console": 5001, "console_host": "127.0.0.1", "console_type": "telnet", "name": "VPCS 2", "node_id": "83892a4d-aea0-4350-8b3e-d0af3713da74", "node_type": "vpcs", "project_id": "b8c070f7-f34c-4b7b-ba6f-be3d26ed073f", "properties": {"startup_script": null, "startup_script_path": null}, "status": "started"}} A Websocket notification stream is also available on http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/notifications/ws -Read :doc:`notifications` for more information. +Read :doc:`project_notifications` for more information. Where to find the endpoints? diff --git a/tests/handlers/api/controller/test_appliance.py b/tests/handlers/api/controller/test_appliance.py index c6cd5dfc..920ab485 100644 --- a/tests/handlers/api/controller/test_appliance.py +++ b/tests/handlers/api/controller/test_appliance.py @@ -247,7 +247,7 @@ def test_c7200_dynamips_appliance_create(http_controller): "image": "c7200-adventerprisek9-mz.124-24.T5.image", "appliance_type": "dynamips"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -292,7 +292,7 @@ def test_c3745_dynamips_appliance_create(http_controller): "image": "c3745-adventerprisek9-mz.124-25d.image", "appliance_type": "dynamips"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -381,7 +381,7 @@ def test_c3600_dynamips_appliance_create(http_controller): "image": "c3660-a3jk9s-mz.124-25d.image", "appliance_type": "dynamips"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -484,7 +484,7 @@ def test_c2600_dynamips_appliance_create(http_controller): "image": "c2600-adventerprisek9-mz.124-25d.image", "appliance_type": "dynamips"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -543,7 +543,7 @@ def test_c1700_dynamips_appliance_create(http_controller): "image": "c1700-adventerprisek9-mz.124-25d.image", "appliance_type": "dynamips"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -646,7 +646,7 @@ def test_docker_appliance_create(http_controller): "image": "gns3/endhost:latest", "appliance_type": "docker"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -739,7 +739,7 @@ def test_vmware_appliance_create(http_controller): "appliance_type": "vmware", "vmx_path": "/path/to/vm.vmx"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -775,7 +775,7 @@ def test_virtualbox_appliance_create(http_controller): "appliance_type": "virtualbox", "vmname": "My VirtualBox VM"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -810,7 +810,7 @@ def test_vpcs_appliance_create(http_controller): "compute_id": "local", "appliance_type": "vpcs"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -834,7 +834,7 @@ def test_ethernet_switch_appliance_create(http_controller): "compute_id": "local", "appliance_type": "ethernet_switch"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -905,7 +905,7 @@ def test_cloud_appliance_create(http_controller): "compute_id": "local", "appliance_type": "cloud"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None @@ -927,7 +927,7 @@ def test_ethernet_hub_appliance_create(http_controller): "compute_id": "local", "appliance_type": "ethernet_hub"} - response = http_controller.post("/appliances", params, example=True) + response = http_controller.post("/appliances", params) assert response.status == 201 assert response.json["appliance_id"] is not None From 2e79da5fe1f3239f1ab6d5081a4c00fa70a2f915 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Nov 2018 16:24:59 +0700 Subject: [PATCH 33/33] Fix broken examples in API documentation. --- docs/curl.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/curl.rst b/docs/curl.rst index 055d1530..e714f0d4 100644 --- a/docs/curl.rst +++ b/docs/curl.rst @@ -231,7 +231,8 @@ Add a packet filter Packet filters allow to filter packet on a given link. Here to drop a packet every 5 packets: .. code-block:: shell-session - curl -X PUT "http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/links/007f2177-6790-4e1b-ac28-41fa226b2a06" -d '{"filters": {"frequency_drop": [5]}}' + + # curl -X PUT "http://localhost:3080/v2/projects/b8c070f7-f34c-4b7b-ba6f-be3d26ed073f/links/007f2177-6790-4e1b-ac28-41fa226b2a06" -d '{"filters": {"frequency_drop": [5]}}' Appliance creation ################### @@ -239,7 +240,8 @@ Appliance creation An appliance contains all the required settings to create a new node. This is useful to create many nodes with the same settings. .. code-block:: shell-session - curl -X POST "http://localhost:3080/v2/appliances" -d '{"name": "Qemu appliance", "compute_id": "local", "platform": "i386", "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", "ram": 512, "appliance_type": "qemu"}' + + # curl -X POST "http://localhost:3080/v2/appliances" -d '{"name": "Qemu appliance", "compute_id": "local", "platform": "i386", "hda_disk_image": "IOSvL2-15.2.4.0.55E.qcow2", "ram": 512, "appliance_type": "qemu"}' Node creation ##############