Compare commits

...
18 Commits
Author SHA1 Message Date
grossmj 9e4474de8d Release v2.2.3 2019-11-12 15:29:54 +08:00
grossmj 9bda15236e Sync appliance files. 2019-11-12 15:23:37 +08:00
grossmj 4daaea9cec Merge branch 'master' into 2.2 2019-11-12 15:20:12 +08:00
Jeremy Grossmann 5e4e5c741b Merge pull request #1691 from JCDraaijer/master
Added workaround for #1690
2019-11-11 18:36:34 +08:00
JCDraaijer 7117b1fb65 Improved how the path to the config file is actually determined 2019-11-11 11:20:51 +01:00
grossmj 992c60e3e0 Return HTTP status code 204 in API when project successfully closed. Fixes #1689 2019-11-11 15:32:57 +08:00
grossmj a98fc2d308 Python3.8 support. Ref https://github.com/GNS3/gns3-gui/issues/2895 2019-11-11 12:44:31 +08:00
grossmj 2fd4b2cbc8 Make sure still support Python >= 3.5.3 2019-11-11 12:39:45 +08:00
JCDraaijer 3bd394b637 Added workaround for #1690. Added venv/ to .gitignore 2019-11-10 20:41:39 +01:00
grossmj 7571c32563 Sync appliance files. 2019-11-08 18:24:22 +08:00
grossmj 05b949930d Fix tests. 2019-11-08 17:25:59 +08:00
grossmj 4075bbd703 Fix exception when adding VirtualBox VM. Fixes #1685. 2019-11-08 17:13:21 +08:00
grossmj 3aba2a319c Set psutil to version 5.6.3 in requirements.txt 2019-11-08 10:44:17 +08:00
grossmj 3a3ba2f54a Merge branch 'master' into 2.2 2019-11-08 10:42:44 +08:00
grossmj 2fa2c715f5 Add LimitNOFILE=16384 to GNS3 service. Ref #1678 2019-11-07 16:28:47 +08:00
grossmj 907207a140 Fix tests 2019-11-06 15:35:59 +08:00
grossmj 539cf640d8 Change the default UDP port range to be 20000 to 30000. Ref #1271 2019-11-06 12:25:30 +08:00
grossmj 6e7aeb1fdd Developement version on 2.2.3dev1 2019-11-04 19:45:18 +08:00
46 changed files with 529 additions and 114 deletions

No files matched your search

+1
View File
@@ -58,4 +58,5 @@ startup.vpcs
# Virtualenv
env
venv
.ropeproject
+1
View File
@@ -30,3 +30,4 @@ env:
- PYTHON_VERSION=3.5
- PYTHON_VERSION=3.6
- PYTHON_VERSION=3.7
- PYTHON_VERSION=3.8
+12
View File
@@ -1,5 +1,17 @@
# Change Log
## 2.2.3 12/11/2019
* Improved how the path to the config file is actually determined
* Return HTTP status code 204 in API when project successfully closed. Fixes #1689
* Python3.8 support. Ref https://github.com/GNS3/gns3-gui/issues/2895
* Make sure still support Python >= 3.5.3
* Added workaround for #1690. Added venv/ to .gitignore
* Fix exception when adding VirtualBox VM. Fixes #1685.
* Set psutil to version 5.6.3 in requirements.txt
* Add `LimitNOFILE=16384` to GNS3 service. Ref #1678
* Change the default UDP port range to be 20000 to 30000. Ref #1271
## 2.2.2 04/11/2019
* Release 2019.2.0-alpha.10
+15
View File
@@ -19,6 +19,15 @@
"kvm": "allow"
},
"images": [
{
"filename": "BSDRP-1.95-full-amd64-serial.img",
"version": "1.95",
"md5sum": "f1e080506a965e46503673c426b9c764",
"filesize": 2000000000,
"download_url": "https://bsdrp.net/downloads",
"direct_download_url": "https://sourceforge.net/projects/bsdrp/files/BSD_Router_Project/1.95/amd64/BSDRP-1.95-full-amd64-serial.img.xz/download",
"compression": "xz"
},
{
"filename": "BSDRP-1.92-full-amd64-serial.img",
"version": "1.92",
@@ -66,6 +75,12 @@
}
],
"versions": [
{
"name": "1.95",
"images": {
"hda_disk_image": "BSDRP-1.95-full-amd64-serial.img"
}
},
{
"name": "1.92",
"images": {
+15 -1
View File
@@ -16,7 +16,7 @@
"symbol": "mgmt_station.svg",
"qemu": {
"adapter_type": "e1000",
"adapters": 2,
"adapters": 3,
"ram": 8192,
"hda_disk_interface": "ide",
"arch": "x86_64",
@@ -25,6 +25,13 @@
"options": "-smp 2"
},
"images": [
{
"filename": "dcnm-va.11.2.1.iso",
"version": "11.2.1",
"md5sum": "2e50e0a4ea72875c54edf593b7c93a66",
"filesize": 4782958592,
"download_url": "https://software.cisco.com/download/home/281722751/type/282088134/release/11.1%25281%2529"
},
{
"filename": "dcnm-va.11.1.1.iso",
"version": "11.1.1",
@@ -49,6 +56,13 @@
}
],
"versions": [
{
"name": "11.2.1",
"images": {
"hda_disk_image": "empty100G.qcow2",
"cdrom_image": "dcnm-va.11.2.1.iso"
}
},
{
"name": "11.1.1",
"images": {
+14
View File
@@ -22,6 +22,13 @@
"kvm": "require"
},
"images": [
{
"filename": "ClearOS-7.6-DVD-x86_64.iso",
"version": "7.6",
"md5sum": "aca5827a37c18549aee2f5bbfbe49922",
"filesize": 1141899264,
"download_url": "https://www.clearos.com/clearfoundation/software/clearos-downloads"
},
{
"filename": "ClearOS-7.5-DVD-x86_64.iso",
"version": "7.5",
@@ -60,6 +67,13 @@
}
],
"versions": [
{
"name": "7.6",
"images": {
"hda_disk_image": "empty30G.qcow2",
"cdrom_image": "ClearOS-7.6-DVD-x86_64.iso"
}
},
{
"name": "7.5",
"images": {
+14
View File
@@ -23,6 +23,14 @@
"kvm": "require"
},
"images": [
{
"filename": "cumulus-linux-3.7.10-vx-amd64-qemu.qcow2",
"version": "3.7.10",
"md5sum": "3474c950f9d348a6c9f0ce52b5698369",
"filesize": 576458240,
"download_url": "https://cumulusnetworks.com/cumulus-vx/download/",
"direct_download_url": "http://cumulusfiles.s3.amazonaws.com/CumulusLinux-3.7.10/cumulus-linux-3.7.10-vx-amd64-qemu.qcow2"
},
{
"filename": "cumulus-linux-3.7.6-vx-amd64-qemu.qcow2",
"version": "3.7.6",
@@ -205,6 +213,12 @@
}
],
"versions": [
{
"name": "3.7.10",
"images": {
"hda_disk_image": "cumulus-linux-3.7.10-vx-amd64-qemu.qcow2"
}
},
{
"name": "3.7.6",
"images": {
+9 -73
View File
@@ -1,7 +1,7 @@
{
"name": "EXOS VM",
"category": "multilayer_switch",
"description": "The ExtremeXOS VM is created and maintained by Extreme Networks for users to emulate a network using EXOS switches.",
"description": "The ExtremeXOS VM is created and maintained by Extreme Networks for users to emulate a network using EXOS switches.",
"vendor_name": "Extreme Networks",
"vendor_url": "https://www.extremenetworks.com",
"documentation_url": "https://www.extremenetworks.com/support/documentation",
@@ -50,46 +50,11 @@
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.7.1.2.qcow2"
},
{
"filename": "EXOS-VM_v22.6.1.4.qcow2",
"version": "22.6.1.4",
"md5sum": "82b31b11b26143a82c8259a4825696fc",
"filesize": 180355072,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.6.1.4.qcow2"
},
{
"filename": "EXOS-VM_v22.5.1.7.qcow2",
"version": "22.5.1.7",
"md5sum": "d2e8ae6783b6ed777ad5cd8cafd83c86",
"filesize": 180289536,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.5.1.7.qcow2"
},
{
"filename": "EXOS-VM_v22.4.1.4-disk1.qcow2",
"version": "22.4.1.4",
"md5sum": "5f1ee41912d74d423ce8ae57ea413602",
"filesize": 229638144,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.4.1.4-disk1.qcow2"
},
{
"filename": "EXOS-VM_v22.3.1.4patch1-4-disk1.qcow2",
"version": "22.3.1.4",
"md5sum": "a4585b6e987ff730f5c044af339fe090",
"filesize": 218431488,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.3.1.4patch1-4-disk1.qcow2"
},
{
"filename": "EXOS-VM_v22.2.1.5-disk1.qcow2",
"version": "22.2.1.5",
"md5sum": "e3cfe92077addda6ad34185288c90acf",
"filesize": 179568640,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.2.1.5-disk1.qcow2"
},
{
"filename": "EXOS-VM_v22.1.1.5-disk1.qcow2",
"version": "22.1.1.5",
"md5sum": "77683060e75d81b776761f6829b15e9b",
"filesize": 179437568,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v22.1.1.5-disk1.qcow2"
"filename": "EXOS-VM_v21.1.1.4-disk1.qcow2",
"version": "21.1.1.4",
"md5sum": "654606809b6fd3bca400377483eb4a79",
"filesize": 117560832,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v21.1.1.4-disk1.qcow2"
}
],
@@ -114,41 +79,12 @@
"hda_disk_image": "EXOS-VM_v22.7.1.2.qcow2"
}
},
{
"name": "22.6.1.4",
"images": {
"hda_disk_image": "EXOS-VM_v22.6.1.4.qcow2"
}
},
{
"name": "22.5.1.7",
"images": {
"hda_disk_image": "EXOS-VM_v22.5.1.7.qcow2"
}
},
{
"name": "22.4.1.4",
"name": "21.1.1.4",
"images": {
"hda_disk_image": "EXOS-VM_v22.4.1.4-disk1.qcow2"
}
},
{
"name": "22.3.1.4",
"images": {
"hda_disk_image": "EXOS-VM_v22.3.1.4patch1-4-disk1.qcow2"
}
},
{
"name": "22.2.1.5",
"images": {
"hda_disk_image": "EXOS-VM_v22.2.1.5-disk1.qcow2"
}
},
{
"name": "22.1.1.5",
"images": {
"hda_disk_image": "EXOS-VM_v22.1.1.5-disk1.qcow2"
"hda_disk_image": "EXOS-VM_v21.1.1.4-disk1.qcow2"
}
}
]
}
+14
View File
@@ -34,6 +34,13 @@
"filesize": 30998528,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAD_KVM-V500-build0655-FORTINET.out.kvm-boot.qcow2",
"version": "5.3.3",
"md5sum": "aa16f574a234ceada5d8ac6cc6536835",
"filesize": 112918528,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAD_KVM-V500-build0442-FORTINET.out.kvm-boot.qcow2",
"version": "5.2.2",
@@ -197,6 +204,13 @@
}
],
"versions": [
{
"name": "5.3.3",
"images": {
"hda_disk_image": "FAD_KVM-V500-build0655-FORTINET.out.kvm-boot.qcow2",
"hdb_disk_image": "FAD_KVM-FORTINET.out.kvm-data.qcow2"
}
},
{
"name": "5.2.2",
"images": {
+28
View File
@@ -26,6 +26,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FAZ_VM64_KVM-v6-build1183-FORTINET.out.kvm.qcow2",
"version": "6.2.2",
"md5sum": "d65ee8754bed66027a6ac095e0dc3e40",
"filesize": 152506368,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAZ_VM64_KVM-v6-build1050-FORTINET.out.kvm.qcow2",
"version": "6.2.0",
@@ -33,6 +40,13 @@
"filesize": 140177408,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAZ_VM64_KVM-v6-build0349-FORTINET.out.kvm.qcow2",
"version": "6.0.6",
"md5sum": "47b83be1b22945df7f4f1c081722fd7a",
"filesize": 111235072,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAZ_VM64_KVM-v6-build0255-FORTINET.out.kvm.qcow2",
"version": "6.0.3",
@@ -155,6 +169,13 @@
}
],
"versions": [
{
"name": "6.2.2",
"images": {
"hda_disk_image": "FAZ_VM64_KVM-v6-build1183-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.0",
"images": {
@@ -162,6 +183,13 @@
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.6",
"images": {
"hda_disk_image": "FAZ_VM64_KVM-v6-build0349-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.3",
"images": {
@@ -26,6 +26,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FAC_VM_KVM-v6-build0058-FORTINET.out.kvm.qcow2",
"version": "6.0.3",
"md5sum": "5812e4ab63aa1feba85324897dd37fa5",
"filesize": 73912320,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAC_VM_KVM-v6-build0010-FORTINET.out.kvm.qcow2",
"version": "6.0.0",
@@ -105,6 +112,13 @@
}
],
"versions": [
{
"name": "6.0.3",
"images": {
"hda_disk_image": "FAC_VM_KVM-v6-build0058-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "FAC_VM_KVM-ALL-DATADRIVE.qcow2"
}
},
{
"name": "6.0.0",
"images": {
+40
View File
@@ -27,12 +27,31 @@
},
"images": [
{
"filename": "FGT_VM64_KVM-v6-build1010-FORTINET.out.kvm.qcow2",
"version": "6.2.2",
"md5sum": "da411e21e4c0bc25553d0e72201af7a4",
"filesize": 58916864,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},{
"filename": "FGT_VM64_KVM-v6-build0932-FORTINET.out.kvm.qcow2",
"version": "6.2.1",
"md5sum": "725d41460ed1858dc905dbe2846a8400",
"filesize": 58785792,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},{
"filename": "FGT_VM64_KVM-v6-build0866-FORTINET.out.kvm.qcow2",
"version": "6.2.0",
"md5sum": "588df9ba0db485976f6681810001ae73",
"filesize": 57868288,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FGT_VM64_KVM-v6-build0272-FORTINET.out.kvm.qcow2",
"version": "6.0.6",
"md5sum": "c71d14d1567ec7ad271be8a9d06dbe7b",
"filesize": 52076544,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FGT_VM64_KVM-v6-build0200-FORTINET.out.kvm.qcow2",
"version": "6.0.3",
@@ -225,6 +244,20 @@
}
],
"versions": [
{
"name": "6.2.2",
"images": {
"hda_disk_image": "FGT_VM64_KVM-v6-build1010-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.1",
"images": {
"hda_disk_image": "FGT_VM64_KVM-v6-build0932-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.0",
"images": {
@@ -239,6 +272,13 @@
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.6",
"images": {
"hda_disk_image": "FGT_VM64_KVM-v6-build0272-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.0",
"images": {
+28
View File
@@ -26,6 +26,20 @@
"kvm": "allow"
},
"images": [
{
"filename": "FML_VMKV-64-v60-build0257-FORTINET.out.kvm.qcow2",
"version": "6.2.1",
"md5sum": "79449970d26979af79b0ccb7b0cf3880",
"filesize": 104464384,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FML_VMKV-64-v60-build0160-FORTINET.out.kvm.qcow2",
"version": "6.0.7",
"md5sum": "925a0b76607613962119cd5ea568458f",
"filesize": 99483648,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FML_VMKV-64-v60-build0143-FORTINET.out.kvm.qcow2",
"version": "6.0.4",
@@ -169,6 +183,20 @@
}
],
"versions": [
{
"name": "6.2.1",
"images": {
"hda_disk_image": "FML_VMKV-64-v60-build0257-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.7",
"images": {
"hda_disk_image": "FML_VMKV-64-v60-build0160-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.4",
"images": {
+28
View File
@@ -26,6 +26,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FMG_VM64_KVM-v6-build1183-FORTINET.out.kvm.qcow2",
"version": "6.2.2",
"md5sum": "f5051a8fe49d916bb554b9bae32a1eb4",
"filesize": 139145216,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FMG_VM64_KVM-v6-build1050-FORTINET.out.kvm.qcow2",
"version": "6.2.0",
@@ -33,6 +40,13 @@
"filesize": 126894080,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FMG_VM64_KVM-v6-build0349-FORTINET.out.kvm.qcow2",
"version": "6.0.6",
"md5sum": "d03f024c948ba6e2bb9e66c11ca8f34c",
"filesize": 112553984,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FMG_VM64_KVM-v6-build0255-FORTINET.out.kvm.qcow2",
"version": "6.0.3",
@@ -148,6 +162,13 @@
}
],
"versions": [
{
"name": "6.2.2",
"images": {
"hda_disk_image": "FMG_VM64_KVM-v6-build1183-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.0",
"images": {
@@ -155,6 +176,13 @@
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.6",
"images": {
"hda_disk_image": "FMG_VM64_KVM-v6-build0349-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.0.2",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"options": "-smp 2"
},
"images": [
{
"filename": "FSA_KVM-v300-build0124-FORTINET.out.kvm.qcow2",
"version": "3.1.2",
"md5sum": "fc2b9a00d20063a6fa4103360d89a2d4",
"filesize": 186253824,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FSA_KVM-v300-build0060-FORTINET.out.kvm.qcow2",
"version": "3.0.4",
@@ -106,6 +113,13 @@
}
],
"versions": [
{
"name": "3.1.2",
"images": {
"hda_disk_image": "FSA_KVM-v300-build0124-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "FSA-datadrive.qcow2"
}
},
{
"name": "3.0.4",
"images": {
@@ -28,6 +28,27 @@
"options": "-smp 4"
},
"images": [
{
"filename": "FortiSIEM-VA-5.2.5.1615-OS.qcow2",
"version": "5.2.5",
"md5sum": "dfdc08a213bb80bf3f078869aeef6da6",
"filesize": 4412970903,
"download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html"
},
{
"filename": "FortiSIEM-VA-5.2.5.1615-CMDB.qcow2",
"version": "5.2.5",
"md5sum": "3963f0439c41d9efd33b7f5bda3f1c2d",
"filesize": 46858240,
"download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html"
},
{
"filename": "FortiSIEM-VA-5.2.5.1615-SVN.qcow2",
"version": "5.2.5",
"md5sum": "e90b2da5e2c7f2e338a822a448f326b2",
"filesize": 46858240,
"download_url": "https://images-cdn.fortisiem.fortinet.com/VirtualAppliances/release510.html"
},
{
"filename": "FortiSIEM-VA-5.2.1.1553-OS.qcow2",
"version": "5.2.1",
@@ -135,6 +156,14 @@
}
],
"versions": [
{
"name": "5.2.5",
"images": {
"hda_disk_image": "FortiSIEM-VA-5.2.5.1615-OS.qcow2",
"hdb_disk_image": "FortiSIEM-VA-5.2.5.1615-CMDB.qcow2",
"hdc_disk_image": "FortiSIEM-VA-5.2.5.1615-SVN.qcow2"
}
},
{
"name": "5.2.1",
"images": {
+14
View File
@@ -26,6 +26,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FWB_KVM-v600-build0727-FORTINET.out.kvm.qcow2",
"version": "6.2.1",
"md5sum": "05523a6db26030a8fc3d84e53902d162",
"filesize": 225313280,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FWB_KVM-v600-build0383-FORTINET.out.kvm.qcow2",
"version": "6.1.0",
@@ -114,6 +121,13 @@
],
"versions": [
{
"name": "6.2.1",
"images": {
"hda_disk_image": "FWB_KVM-v600-build0727-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.1.0",
"images": {
+15
View File
@@ -22,6 +22,15 @@
"kvm": "require"
},
"images": [
{
"filename": "FreeBSD-12.1-RELEASE-amd64.qcow2",
"version": "12.1",
"md5sum": "0079b4ca99f64bb825cfbaefcca10fd4",
"filesize": 3043229696,
"download_url": "https://www.freebsd.org/where.html",
"direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/12.1-RELEASE/amd64/Latest/FreeBSD-12.1-RELEASE-amd64.qcow2.xz",
"compression": "xz"
},
{
"filename": "FreeBSD-12.0-RELEASE-amd64.qcow2",
"version": "12.0",
@@ -78,6 +87,12 @@
}
],
"versions": [
{
"name": "12.1",
"images": {
"hda_disk_image": "FreeBSD-12.1-RELEASE-amd64.qcow2"
}
},
{
"name": "12.0",
"images": {
+11 -2
View File
@@ -24,13 +24,22 @@
"kvm": "allow"
},
"images": [
{
"filename": "ipfire-2.23.2gb-ext4.x86_64-full-core136.img",
"version": "2.23.136",
"md5sum": "56d4cdce08417a9ddb465e445bd4ef63",
"filesize": 1540358144,
"download_url": "http://www.ipfire.org/download",
"direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.23-core136/ipfire-2.23.2gb-ext4.x86_64-full-core136.img.xz",
"compression": "xz"
},
{
"filename": "ipfire-2.23.2gb-ext4.x86_64-full-core131.img",
"version": "2.23",
"version": "2.23.131",
"md5sum": "604c06e20c36985ff00802da4509340c",
"filesize": 1541160960,
"download_url": "http://www.ipfire.org/download",
"direct_download_url": "https://muug.ca/mirror/ipfire/releases/ipfire-2.x/2.23-core131/ipfire-2.23.2gb-ext4.x86_64-full-core131.img.xz",
"direct_download_url": "https://downloads.ipfire.org/releases/ipfire-2.x/2.23-core131/ipfire-2.23.2gb-ext4.x86_64-full-core131.img.xz",
"compression": "xz"
},
{
@@ -25,6 +25,24 @@
"options": "-nographic -enable-kvm"
},
"images": [
{
"filename": "junos-vmx-x86-64-19.3R1.8.qcow2",
"version": "19.3R1.8-KVM",
"md5sum": "cd14a6884edeb6b337d3c2be02241c63",
"filesize": 1435238400
},
{
"filename": "vmxhdd-19.3R1.8.img",
"version": "19.3R1.8-KVM",
"md5sum": "ae26e0f32605a53a5c85342bad677c9f",
"filesize": 197120
},
{
"filename": "metadata-usb-re-19.3R1.8.img",
"version": "19.3R1.8-KVM",
"md5sum": "3c66c4657773a0cd2b38ffd84115446a",
"filesize": 10485760
},
{
"filename": "junos-vmx-x86-64-17.4R1.16.qcow2",
"version": "17.4R1.16-KVM",
@@ -318,6 +336,14 @@
}
],
"versions": [
{
"name": "19.3R1.8-KVM",
"images": {
"hda_disk_image": "junos-vmx-x86-64-19.3R1.8.qcow2",
"hdb_disk_image": "vmxhdd-19.3R1.8.img",
"hdc_disk_image": "metadata-usb-re-19.3R1.8.img"
}
},
{
"name": "17.4R1.16-KVM",
"images": {
@@ -25,6 +25,13 @@
"options": "-nographic -enable-kvm -smp cpus=3"
},
"images": [
{
"filename": "vFPC-20190819.img",
"version": "19.3R1.8-KVM",
"md5sum": "b77ca27a45a07c56b8f72905fafbe822",
"filesize": 2447376384,
"download_url": "http://www.juniper.net/us/en/products-services/routing/mx-series/vmx/"
},
{
"filename": "vFPC-20171213.img",
"version": "17.4R1.16-KVM",
@@ -140,6 +147,12 @@
],
"versions": [
{
"name": "19.3R1.8-KVM",
"images": {
"hda_disk_image": "vFPC-20190819.img"
}
},
{
"name": "17.4R1.16-KVM",
"images": {
+4 -4
View File
@@ -25,8 +25,8 @@
},
"images": [
{
"filename": "cosim_20180212.qcow2",
"version": "17.4R1",
"filename": "cosim-18.4R1.8_20180212.qcow2",
"version": "17.4R1 & 18.4R1",
"md5sum": "0372e9c1b7df3608099186ab8cbbf2ad",
"filesize": 1911291904,
"download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/"
@@ -41,9 +41,9 @@
],
"versions": [
{
"name": "17.4R1",
"name": "17.4R1 & 18.4R1",
"images": {
"hda_disk_image": "cosim_20180212.qcow2"
"hda_disk_image": "cosim-18.4R1.8_20180212.qcow2"
}
},
{
+14 -1
View File
@@ -15,7 +15,7 @@
"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",
"port_name_format": "em{0}",
"qemu": {
"adapter_type": "e1000",
"adapter_type": "virtio-net-pci",
"adapters": 12,
"ram": 1024,
"arch": "x86_64",
@@ -24,6 +24,13 @@
"options": "-nographic -smp 2"
},
"images": [
{
"filename": "jinstall-vqfx-10-f-18.4R1.8.qcow2",
"version": "18.4R1",
"md5sum": "1b0dbd9a235f887e56a8506c0b2f684f",
"filesize": 549584896,
"download_url": "https://www.juniper.net/us/en/dm/free-vqfx-trial/"
},
{
"filename": "jinstall-vqfx-10-f-17.4R1.16.img",
"version": "17.4R1",
@@ -40,6 +47,12 @@
}
],
"versions": [
{
"name": "18.4R1",
"images": {
"hda_disk_image": "jinstall-vqfx-10-f-18.4R1.8.qcow2"
}
},
{
"name": "17.4R1",
"images": {
+14 -1
View File
@@ -15,7 +15,7 @@
"first_port_name": "fxp0",
"port_name_format": "ge-0/0/{0}",
"qemu": {
"adapter_type": "e1000",
"adapter_type": "vmxnet3",
"adapters": 6,
"ram": 4096,
"arch": "x86_64",
@@ -24,6 +24,13 @@
"options": "-smp 2"
},
"images": [
{
"filename": "junos-media-vsrx-x86-64-vmdisk-19.3R1.8.qcow2",
"version": "19.3R1",
"md5sum": "4121122ccf9ec697fd26cdac91b81543",
"filesize": 5185142784,
"download_url": "https://www.juniper.net/us/en/dm/free-vsrx-trial/"
},
{
"filename": "junos-media-vsrx-vmdisk-18.1R1.9.qcow2",
"version": "18.1R1",
@@ -145,6 +152,12 @@
}
],
"versions": [
{
"name": "19.3R1",
"images": {
"hda_disk_image": "junos-media-vsrx-x86-64-vmdisk-19.3R1.8.qcow2"
}
},
{
"name": "18.1R1",
"images": {
+15
View File
@@ -22,6 +22,14 @@
"kvm": "require"
},
"images": [
{
"filename": "kali-linux-2019.3-amd64.iso",
"version": "2019.3",
"md5sum": "9c6fb00558f78ed06992d89f745ef975",
"filesize": 3037736960,
"download_url": "https://www.kali.org/downloads/",
"direct_download_url": "http://cdimage.kali.org/kali-2019.3/kali-linux-2019.3-amd64.iso"
},
{
"filename": "kali-linux-2019.2-amd64.iso",
"version": "2019.2",
@@ -128,6 +136,13 @@
}
],
"versions": [
{
"name": "2019.3",
"images": {
"hda_disk_image": "kali-linux-persistence-1gb.qcow2",
"cdrom_image": "kali-linux-2019.3-amd64.iso"
}
},
{
"name": "2019.2",
"images": {
@@ -23,6 +23,15 @@
"kvm": "require"
},
"images": [
{
"filename": "PacketFenceZEN_USB-9.1.0.img",
"version": "9.1.0",
"md5sum": "107a8b2f76105a72406ac76e4f356c6d",
"filesize": 3221225472,
"download_url": "https://packetfence.org/download.html#/zen",
"direct_download_url": "https://sourceforge.net/projects/packetfence/files/PacketFence%20ZEN/9.1.0/PacketFenceZEN_USB-9.1.0.tar.bz2/download",
"compression": "bzip2"
},
{
"filename": "PacketFenceZEN_USB-9.0.1.img",
"version": "9.0.1",
@@ -88,6 +97,12 @@
}
],
"versions": [
{
"name": "9.1.0",
"images": {
"hda_disk_image": "PacketFenceZEN_USB-9.1.0.img"
}
},
{
"name": "9.0.1",
"images": {
+44
View File
@@ -0,0 +1,44 @@
{
"name": "Ubuntu Server",
"category": "guest",
"description": "This is a custom Ubuntu server which comes with Canonical security updates, Xorg and Telnetd",
"vendor_name": "Canonical Inc.",
"vendor_url": "https://www.ubuntu.com",
"documentation_url": "https://help.ubuntu.com",
"product_name": "Ubuntu",
"product_url": "https://ubuntu.com/server",
"registry_version": 3,
"status": "stable",
"maintainer": "Mohamad Siblini",
"maintainer_email": "https://www.ictkin.com/contact",
"usage": "Username: gns3\nPassword: gns3 | MD5: 435f15a54f7f673e302ad26f05226e0e",
"port_name_format": "ens{0}",
"qemu": {
"adapter_type": "virtio-net-pci",
"adapters": 1,
"ram": 2048,
"hda_disk_interface": "virtio",
"arch": "x86_64",
"console_type": "vnc",
"boot_priority": "c",
"kvm": "require",
"options": "-vga virtio"
},
"images": [
{
"filename": "Ubuntu Server 18.04.3 LTS (64bit).vmdk",
"version": "18.04.3",
"md5sum": "435f15a54f7f673e302ad26f05226e0e",
"filesize": 2707814912,
"download_url": "https://www.ictkin.com/gns3-appliance/"
}
],
"versions": [
{
"name": "18.04.3 LTS Server",
"images": {
"hda_disk_image": "Ubuntu Server 18.04.3 LTS (64bit).vmdk"
}
}
]
}
@@ -24,6 +24,14 @@
"kvm": "require"
},
"images": [
{
"filename": "zentyal-6.1-development-amd64.iso",
"version": "6.1",
"md5sum": "83ff98b344f4fbb354c32ae42ff57c7b",
"filesize": 1003487232,
"download_url": "http://download.zentyal.com/",
"direct_download_url": "http://download.zentyal.com/zentyal-6.1-development-amd64.iso"
},
{
"filename": "zentyal-6.0-development-amd64.iso",
"version": "6.0",
@@ -90,6 +98,13 @@
}
],
"versions": [
{
"name": "6.1",
"images": {
"hda_disk_image": "empty100G.qcow2",
"cdrom_image": "zentyal-6.1-development-amd64.iso"
}
},
{
"name": "6.0",
"images": {
+15
View File
@@ -20,6 +20,15 @@
"kvm": "allow"
},
"images": [
{
"filename": "ZeroShell-3.9.3-X86-USB.img",
"version": "3.9.3",
"md5sum": "9be2b399f59df51e5026d81e45b8caf3",
"filesize": 1992294400,
"download_url": "http://www.zeroshell.org/download/",
"direct_download_url": "http://www.zeroshell.net/listing/ZeroShell-3.9.3-X86-USB.img.gz",
"compression": "gzip"
},
{
"filename": "ZeroShell-3.8.2-X86-USB.img",
"version": "3.8.2",
@@ -58,6 +67,12 @@
}
],
"versions": [
{
"name": "3.9.3",
"images": {
"hda_disk_image": "ZeroShell-3.9.3-X86-USB.img"
}
},
{
"name": "3.8.2",
"images": {
+2 -2
View File
@@ -50,8 +50,8 @@ class PortManager:
self._console_port_range = (console_start_port_range, console_end_port_range)
log.debug("Console port range is {}-{}".format(console_start_port_range, console_end_port_range))
udp_start_port_range = server_config.getint("udp_start_port_range", 10000)
udp_end_port_range = server_config.getint("udp_end_port_range", 20000)
udp_start_port_range = server_config.getint("udp_start_port_range", 20000)
udp_end_port_range = server_config.getint("udp_end_port_range", 30000)
self._udp_port_range = (udp_start_port_range, udp_end_port_range)
log.debug("UDP port range is {}-{}".format(udp_start_port_range, udp_end_port_range))
@@ -177,7 +177,7 @@ class VirtualBoxVM(BaseNode):
async def _refresh_vm_uuid(self):
vm_info = await self._get_vm_info()
self._uuid = vm_info.get("UUID")
self._uuid = vm_info.get("UUID", self._uuid)
if not self._uuid:
raise VirtualBoxError("Could not find any UUID for VM '{}'".format(self._vmname))
if "memory" in vm_info:
@@ -205,6 +205,8 @@ class VirtualBoxVM(BaseNode):
else:
await self._refresh_vm_uuid()
await self._create_linked_clone()
else:
await self._refresh_vm_uuid()
if self._adapters:
await self.set_adapters(self._adapters)
+3
View File
@@ -45,6 +45,9 @@ class Config:
self._files = files
self._profile = profile
if files and len(files):
directory_name = os.path.dirname(files[0])
if not directory_name or directory_name == "":
files[0] = os.path.dirname(os.path.abspath(files[0])) + os.path.sep + files[0]
self._main_config_file = files[0]
else:
self._main_config_file = None
+1 -1
View File
@@ -58,7 +58,7 @@ class CrashReport:
Report crash to a third party service
"""
DSN = "https://8f93221a80eb4989bf0049270a2520e2:fcbe3d429cea43f9a863be198ac23c61@sentry.io/38482"
DSN = "https://dfe18e681fad4de580403c7432ae50d1:d9a1927b28c64836a41e4390c3242372@sentry.io/38482"
if hasattr(sys, "frozen"):
cacert = get_resource("cacert.pem")
if cacert is not None and os.path.isfile(cacert):
@@ -193,7 +193,7 @@ class ProjectHandler:
msg = json.dumps({"action": action, "event": msg}, sort_keys=True)
log.debug("Send notification: %s", msg)
await response.write(("{}\n".format(msg)).encode("utf-8"))
except asyncio.futures.TimeoutError:
except asyncio.TimeoutError:
await response.write("{}\n".format(json.dumps(ProjectHandler._getPingMessage())).encode("utf-8"))
project.stop_listen_queue(queue)
if project.id in ProjectHandler._notifications_listening:
@@ -54,13 +54,13 @@ class VirtualBoxHandler:
vbox_manager = VirtualBox.instance()
vm = await vbox_manager.create_node(request.json.pop("name"),
request.match_info["project_id"],
request.json.get("node_id"),
request.json.pop("vmname"),
linked_clone=request.json.pop("linked_clone", False),
console=request.json.get("console", None),
console_type=request.json.get("console_type", "telnet"),
adapters=request.json.get("adapters", 0))
request.match_info["project_id"],
request.json.get("node_id"),
request.json.pop("vmname"),
linked_clone=request.json.pop("linked_clone", False),
console=request.json.get("console", None),
console_type=request.json.get("console_type", "telnet"),
adapters=request.json.get("adapters", 0))
if "ram" in request.json:
ram = request.json.pop("ram")
@@ -166,8 +166,7 @@ class ProjectHandler:
controller = Controller.instance()
project = controller.get_project(request.match_info["project_id"])
await project.close()
response.set_status(201)
response.json(project)
response.set_status(204)
@Route.post(
r"/projects/{project_id}/open",
+1 -1
View File
@@ -42,7 +42,7 @@ class NotificationQueue(asyncio.Queue):
try:
(action, msg, kwargs) = await asyncio.wait_for(super().get(), timeout)
except asyncio.futures.TimeoutError:
except asyncio.TimeoutError:
return ("ping", PingStats.get(), {})
return (action, msg, kwargs)
+1 -1
View File
@@ -236,7 +236,7 @@ def run():
return
log.info("HTTP authentication is enabled with username '{}'".format(user))
# we only support Python 3 version >= 3.5
# we only support Python 3 version >= 3.5.3
if sys.version_info < (3, 5, 3):
raise SystemExit("Python 3.5.3 or higher is required")
+1 -3
View File
@@ -22,8 +22,6 @@ import sys
import os
import threading
from asyncio.futures import CancelledError
async def wait_run_in_executor(func, *args, **kwargs):
"""
@@ -56,7 +54,7 @@ async def cancellable_wait_run_in_executor(func, *args, **kwargs):
kwargs['stopped_event'] = stopped_event
try:
await wait_run_in_executor(func, *args, **kwargs)
except CancelledError:
except asyncio.CancelledError:
stopped_event.set()
+2 -2
View File
@@ -23,8 +23,8 @@
# or negative for a release candidate or beta (after the base version
# number has been incremented)
__version__ = "2.2.2"
__version_info__ = (2, 2, 2, 0)
__version__ = "2.2.3"
__version_info__ = (2, 2, 3, 0)
if "dev" in __version__:
try:
+5 -4
View File
@@ -20,13 +20,10 @@ import json
import urllib
import asyncio
import aiohttp
import logging
import traceback
import jsonschema
import jsonschema.exceptions
log = logging.getLogger(__name__)
from ..compute.error import NodeError, ImageMissingError
from ..controller.controller_error import ControllerError
from ..ubridge.ubridge_error import UbridgeError
@@ -36,6 +33,10 @@ from ..crash_report import CrashReport
from ..config import Config
import logging
log = logging.getLogger(__name__)
async def parse_request(request, input_schema, raw):
"""Parse body of request and raise HTTP errors in case of problems"""
@@ -217,7 +218,7 @@ class Route(object):
response = Response(request=request, route=route)
response.set_status(409)
response.json({"message": str(e), "status": 409, "image": e.image, "exception": e.__class__.__name__})
except asyncio.futures.CancelledError:
except asyncio.CancelledError:
response = Response(request=request, route=route)
response.set_status(408)
response.json({"message": "Request canceled", "status": 408})
+2 -1
View File
@@ -1,3 +1,4 @@
yarl==1.3.0 # yarl 1.4+ requires Python 3.6+ (needed by aiohttp and aiohttp-cors)
jsonschema==2.6.0 # pyup: ignore
aiohttp==3.6.2
aiohttp-cors==0.7.0
@@ -5,6 +6,6 @@ aiofiles==0.4.0
async_generator>=1.10
Jinja2>=2.7.3
raven>=5.23.0
psutil>=3.0.0
psutil==5.6.3
async-timeout==3.0.1
distro>=1.3.0
+1
View File
@@ -266,6 +266,7 @@ ExecStartPre=/bin/chown -R gns3:gns3 /var/log/gns3 /var/run/gns3
ExecStart=/usr/bin/gns3server --log /var/log/gns3/gns3.log
Restart=on-failure
RestartSec=5
LimitNOFILE=16384
[Install]
WantedBy=multi-user.target
+1
View File
@@ -77,6 +77,7 @@ setup(
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: Implementation :: CPython",
],
)
+5 -5
View File
@@ -91,9 +91,9 @@ def test_reserve_tcp_port_already_used():
def test_reserve_udp_port():
pm = PortManager()
project = Project(project_id=str(uuid.uuid4()))
pm.reserve_udp_port(10000, project)
pm.reserve_udp_port(20000, project)
with pytest.raises(aiohttp.web.HTTPConflict):
pm.reserve_udp_port(10000, project)
pm.reserve_udp_port(20000, project)
def test_reserve_udp_port_outside_range():
@@ -106,9 +106,9 @@ def test_reserve_udp_port_outside_range():
def test_release_udp_port():
pm = PortManager()
project = Project(project_id=str(uuid.uuid4()))
pm.reserve_udp_port(10000, project)
pm.release_udp_port(10000, project)
pm.reserve_udp_port(10000, project)
pm.reserve_udp_port(20000, project)
pm.release_udp_port(20000, project)
pm.reserve_udp_port(20000, project)
def test_find_unused_port():
@@ -148,7 +148,7 @@ def test_delete_project_invalid_uuid(http_controller):
def test_close_project(http_controller, project):
with asyncio_patch("gns3server.controller.project.Project.close", return_value=True) as mock:
response = http_controller.post("/projects/{project_id}/close".format(project_id=project.id), example=True)
assert response.status == 201
assert response.status == 204
assert mock.called