mirror of
https://github.com/GNS3/gns3-server.git
synced 2025-06-24 17:55:15 +00:00
Compare commits
18 Commits
Author | SHA1 | Date | |
---|---|---|---|
9e4474de8d | |||
9bda15236e | |||
4daaea9cec | |||
5e4e5c741b | |||
7117b1fb65 | |||
992c60e3e0 | |||
a98fc2d308 | |||
2fd4b2cbc8 | |||
3bd394b637 | |||
7571c32563 | |||
05b949930d | |||
4075bbd703 | |||
3aba2a319c | |||
3a3ba2f54a | |||
2fa2c715f5 | |||
907207a140 | |||
539cf640d8 | |||
6e7aeb1fdd |
1
.gitignore
vendored
1
.gitignore
vendored
@ -58,4 +58,5 @@ startup.vpcs
|
||||
|
||||
# Virtualenv
|
||||
env
|
||||
venv
|
||||
.ropeproject
|
||||
|
@ -30,3 +30,4 @@ env:
|
||||
- PYTHON_VERSION=3.5
|
||||
- PYTHON_VERSION=3.6
|
||||
- PYTHON_VERSION=3.7
|
||||
- PYTHON_VERSION=3.8
|
||||
|
12
CHANGELOG
12
CHANGELOG
@ -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
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
@ -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": {
|
||||
|
@ -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": {
|
||||
|
@ -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
gns3server/appliances/ubuntu-server.gns3a
Normal file
44
gns3server/appliances/ubuntu-server.gns3a
Normal 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": {
|
||||
|
@ -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": {
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
@ -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",
|
||||
|
@ -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)
|
||||
|
||||
|
@ -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")
|
||||
|
||||
|
@ -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()
|
||||
|
||||
|
||||
|
@ -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:
|
||||
|
@ -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})
|
||||
|
@ -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
|
||||
|
@ -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
setup.py
1
setup.py
@ -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",
|
||||
],
|
||||
)
|
||||
|
@ -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
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user