Compare commits

..
30 Commits
Author SHA1 Message Date
grossmj 8d4df08150 Release v2.2.34 2022-08-28 23:28:12 +02:00
grossmj fd1d8d9d86 Update appliance files 2022-08-28 22:51:26 +02:00
grossmj 4ddce880ea Merge remote-tracking branch 'origin/2.2' into 2.2 2022-08-28 22:32:49 +02:00
grossmj e0209a0491 Downgrade Jinja2 to v3.0.3 2022-08-28 22:32:42 +02:00
Jeremy Grossmann e96d8ae497 Merge pull request #2089 from SpikefishSolutions/spikefishjohn-patch-3
Update compute.py
2022-08-28 22:09:44 +02:00
grossmj 129f0a631c Use original $PATH in init.sh for Docker containers. Ref #2069 2022-08-28 12:06:56 +02:00
grossmj ad1f1cdb96 Merge remote-tracking branch 'origin/2.2' into 2.2 2022-08-28 00:03:03 +02:00
grossmj ab6c6535c6 Upgrade Sentry dependency 2022-08-28 00:02:54 +02:00
Jeremy Grossmann 3444615253 Merge pull request #2101 from GNS3/upgrade-dev-dependencies
Upgrade dev dependencies
2022-08-28 00:01:53 +02:00
grossmj 028f977823 Revert "Don't install nmap"
This reverts commit b6cf3aabca.
2022-08-28 00:01:26 +02:00
grossmj b6cf3aabca Don't install nmap 2022-08-27 23:55:42 +02:00
grossmj 6546407e5d Upgrade to Python 3.7 for Windows tests 2022-08-27 23:52:59 +02:00
grossmj 46b022f726 Restore missing loop 2022-08-27 23:45:30 +02:00
grossmj 8f296e54f4 Add back loop 2022-08-27 23:41:52 +02:00
grossmj fc7d5be736 Use pytest-asyncio auto mode 2022-08-27 21:10:17 +02:00
grossmj 600c18f04b Remove pytest.ini from tests dir 2022-08-27 21:00:31 +02:00
grossmj 852de03d43 Install latest dev dependencies for Python >= 3.7 2022-08-27 20:40:35 +02:00
grossmj 470e6cb901 Add pytest-asyncio 0.19.0 2022-08-27 19:41:46 +02:00
grossmj e8273fb19e Downgrade to pytest-aiohttp v0.3.0 2022-08-27 19:39:02 +02:00
grossmj 4b3d6572d4 Downgrade to pytest v7.0.1 (last version to support 2022-08-27 19:35:36 +02:00
grossmj fad3df453d Run tests on 2.2 branch 2022-08-27 19:31:24 +02:00
grossmj d1c8f33fc5 Upgrade dev dependencies and fix issues after upgrading to pytest-aiohttp v1.0.4 2022-08-27 19:16:02 +02:00
John Fleming 7277d526e3 Update compute.py
Remove check for open project. Without this check a remote can be rebooted and will be usable once the main server polls it again. Without this the main server would need to open a project that already uses the remote server or restart the main server's gns3 process.
2022-07-18 18:43:57 -04:00
grossmj 9e5ca50302 Bump version to v2.2.34dev2 2022-06-23 10:55:19 +02:00
grossmj 35ec8bed6e Back to development on v2.2.34dev2 2022-06-21 11:52:58 +02:00
grossmj 0433065b8b Revert "Development on v2.2.34dev2"
This reverts commit 7c5a5a9001.
2022-06-21 11:51:01 +02:00
grossmj 7c5a5a9001 Development on v2.2.34dev2 2022-06-21 11:38:09 +02:00
grossmj 1b32ef7854 Release v2.2.33.1 2022-06-21 10:48:02 +02:00
grossmj f5b1920f8c Add missing web-ui file 2022-06-21 10:24:19 +02:00
grossmj 4341db0ff3 Development on v2.2.34dev1 2022-06-20 21:47:42 +02:00
45 changed files with 340 additions and 78 deletions

No files matched your search

+6 -2
View File
@@ -2,9 +2,13 @@ name: testing
on:
push:
branches: [ master ]
branches:
- master
- 2.2
pull_request:
branches: [ master ]
branches:
- master
- 2.2
jobs:
build:
+11
View File
@@ -1,5 +1,16 @@
# Change Log
## 2.2.34 28/08/2022
* Use original $PATH in init.sh for Docker containers. Ref #2069
* Support pytest-asyncio 0.19.0
* Upgrade dev dependencies and fix issues after upgrading to pytest-aiohttp v1.0.4
* Update compute.py
## 2.2.33.1 21/06/2022
* Add missing file for web-ui v2.2.33
## 2.2.33 20/06/2022
* Release web-ui v2.2.33
+1 -1
View File
@@ -5,7 +5,7 @@ image: Visual Studio 2015
platform: x64
environment:
PYTHON: "C:\\Python36-x64"
PYTHON: "C:\\Python37-x64"
DISTUTILS_USE_SDK: "1"
API_TOKEN:
secure: VEKn4bYH3QO0ixtQW5ni4Enmn8cS1NlZV246ludBDgQ=
+6 -4
View File
@@ -1,6 +1,8 @@
-rrequirements.txt
pytest==7.0.0
flake8==4.0.1
pytest-timeout==1.4.2
pytest-aiohttp==0.3.0
pytest==7.0.1; python_version < '3.7' # last version to support Python 3.6
pytest==7.1.2; python_version >= '3.7'
flake8==5.0.4
pytest-timeout==2.1.0
pytest-aiohttp==0.3.0; python_version < '3.7' # last version to support Python 3.6
pytest-aiohttp==1.0.4; python_version >= '3.7'
+14 -1
View File
@@ -4,7 +4,7 @@
"category": "multilayer_switch",
"description": "The ArubaOS-CX Simulation Software is a virtual platform to enable simulation of the ArubaOS-CX Network Operating System. Simulated networks can be created using many of the protocols in the ArubaOS-CX Operating system like OSPF, BGP (inc. EVPN). Key features like the Aruba Network Analytics Engine and the REST API can be simulated, providing a lightweight development platform to building the modern network.",
"vendor_name": "HPE Aruba",
"vendor_url": "arubanetworks.com",
"vendor_url": "https://www.arubanetworks.com",
"product_name": "ArubaOS-CX Simulation Software",
"registry_version": 4,
"status": "stable",
@@ -30,6 +30,13 @@
"process_priority": "normal"
},
"images": [
{
"filename": "arubaoscx-disk-image-genericx86-p4-20220616193419.vmdk",
"version": "10.10.0002",
"md5sum": "ed031aeb6caf92adb408c7603d294fd4",
"filesize": 355858944,
"download_url": "https://asp.arubanetworks.com/"
},
{
"filename": "arubaoscx-disk-image-genericx86-p4-20220223012712.vmdk",
"version": "10.09.1000",
@@ -88,6 +95,12 @@
}
],
"versions": [
{
"name": "10.10.0002",
"images": {
"hda_disk_image": "arubaoscx-disk-image-genericx86-p4-20220616193419.vmdk"
}
},
{
"name": "10.09.1000",
"images": {
+1 -1
View File
@@ -4,7 +4,7 @@
"category": "firewall",
"description": "Aruba Virtual Gateways allow customers to bring their public cloud infrastructure to the SD-WAN fabric and facilitate connectivity between branches and the public cloud.",
"vendor_name": "HPE Aruba",
"vendor_url": "arubanetworks.com",
"vendor_url": "https://www.arubanetworks.com",
"documentation_url": "https://asp.arubanetworks.com/downloads;products=Aruba%20SD-WAN",
"product_name": "Aruba SD-WAN Virtual Gateway",
"product_url": "https://www.arubanetworks.com/products/networking/gateways-and-controllers/",
+1 -1
View File
@@ -4,7 +4,7 @@
"category": "guest",
"description": "Aruba Virtual Mobility Controller",
"vendor_name": "HPE Aruba",
"vendor_url": "arubanetworks.com",
"vendor_url": "https://www.arubanetworks.com",
"product_name": "Aruba VMC",
"registry_version": 4,
"status": "stable",
+13
View File
@@ -27,6 +27,13 @@
},
"images": [
{
"filename": "asav9-16-2.qcow2",
"version": "9.16.2 CML",
"md5sum": "1f8db97063a7f738fddc81ac880a906c",
"filesize": 262078976,
"download_url": "https://learningnetworkstore.cisco.com/cisco-modeling-labs-personal/cisco-modeling-labs-personal/CML-PERSONAL.html"
},
{
"filename": "asav9-16-2.qcow2",
"version": "9.16.2",
"md5sum": "c3aa2b73b029146ec345bf888dd54eab",
@@ -112,6 +119,12 @@
}
],
"versions": [
{
"name": "9.16.2 CML",
"images": {
"hda_disk_image": "asav9-16-2.qcow2"
}
},
{
"name": "9.16.2",
"images": {
+13
View File
@@ -24,6 +24,13 @@
"kvm": "require"
},
"images": [
{
"filename": "c8000v-universalk9_8G_serial.17.06.01a.qcow2",
"version": "17.06.01a 8G",
"md5sum": "d8b8ae633d953ec1b6d8f18a09a4f4e7",
"filesize": 1595277312,
"download_url": "https://software.cisco.com/download/home/286327102/type/282046477/release/Bengaluru-17.6.1a"
},
{
"filename": "c8000v-universalk9_8G_serial.17.04.01a.qcow2",
"version": "17.04.01a 8G",
@@ -40,6 +47,12 @@
}
],
"versions": [
{
"name": "17.06.01a 8G",
"images": {
"hda_disk_image": "c8000v-universalk9_8G_serial.17.06.01a.qcow2"
}
},
{
"name": "17.04.01a 8G",
"images": {
+12
View File
@@ -18,6 +18,12 @@
"startup_config": "iou_l3_base_startup-config.txt"
},
"images": [
{
"filename": "i86bi_LinuxL3-AdvEnterpriseK9-M2_157_3_May_2018.bin",
"version": "15.7(3)M2",
"md5sum": "d6874260c3daeeb96d10fc844ae0b93b",
"filesize": 184759244
},
{
"filename": "i86bi-linux-l3-adventerprisek9-ms.155-2.T.bin",
"version": "155-2T",
@@ -32,6 +38,12 @@
}
],
"versions": [
{
"name": "15.7(3)M2",
"images": {
"image": "i86bi_LinuxL3-AdvEnterpriseK9-M2_157_3_May_2018.bin"
}
},
{
"name": "155-2T",
"images": {
+15 -1
View File
@@ -12,7 +12,7 @@
"status": "stable",
"maintainer": "GNS3 Team",
"maintainer_email": "developers@gns3.net",
"usage": "Default username is cumulus and password is CumulusLinux! in version 4.1 and earlier, and cumulus in version 4.2 and later.",
"usage": "Default username/password is cumulus/CumulusLinux! in version 4.1 and earlier, and cumulus/cumulus in version 4.2 and later.",
"first_port_name": "eth0",
"port_name_format": "swp{port1}",
"qemu": {
@@ -25,6 +25,14 @@
"kvm": "require"
},
"images": [
{
"filename": "cumulus-linux-5.1.0-vx-amd64-qemu.qcow2",
"version": "5.1.0",
"md5sum": "b46a68bbb57e77fab5c2927367bead13",
"filesize": 4174446592,
"download_url": "https://www.nvidia.com/en-us/networking/ethernet-switching/cumulus-vx/download/",
"direct_download_url": "https://d2cd9e7ca6hntp.cloudfront.net/public/CumulusLinux-5.1.0/cumulus-linux-5.1.0-vx-amd64-qemu.qcow2"
},
{
"filename": "cumulus-linux-4.3.0-vx-amd64-qemu.qcow2",
"version": "4.3.0",
@@ -231,6 +239,12 @@
}
],
"versions": [
{
"name": "5.1.0",
"images": {
"hda_disk_image": "cumulus-linux-5.1.0-vx-amd64-qemu.qcow2"
}
},
{
"name": "4.3.0",
"images": {
+7 -7
View File
@@ -24,12 +24,12 @@
},
"images": [
{
"filename": "debian-11-genericcloud-amd64-20220328-962.qcow2",
"version": "11.3",
"md5sum": "7cf51e23747898485971a656ac2eb96d",
"filesize": 253296640,
"filename": "debian-11-genericcloud-amd64-20220711-1073.qcow2",
"version": "11.4",
"md5sum": "e8fadf4bbf7324a2e2875a5ba00588e7",
"filesize": 253231104,
"download_url": "https://cloud.debian.org/images/cloud/bullseye/",
"direct_download_url": "https://cloud.debian.org/images/cloud/bullseye/20220328-962/debian-11-genericcloud-amd64-20220328-962.qcow2"
"direct_download_url": "https://cloud.debian.org/images/cloud/bullseye/20220711-1073/debian-11-genericcloud-amd64-20220711-1073.qcow2"
},
{
"filename": "debian-10-genericcloud-amd64-20220328-962.qcow2",
@@ -49,9 +49,9 @@
],
"versions": [
{
"name": "11.3",
"name": "11.4",
"images": {
"hda_disk_image": "debian-11-genericcloud-amd64-20220328-962.qcow2",
"hda_disk_image": "debian-11-genericcloud-amd64-20220711-1073.qcow2",
"cdrom_image": "debian-cloud-init-data.iso"
}
},
+17 -3
View File
@@ -2,7 +2,7 @@
"appliance_id": "1cfdf900-7c30-4cb7-8f03-3f61d2581633",
"name": "Empty VM",
"category": "guest",
"description": "An empty VM with empty hard disks 8G, 30G & 100G.",
"description": "A empty VM with empty hard disks 8G, 30G, 100G & 200G.",
"vendor_name": "GNS3",
"vendor_url": "https://gns3.com",
"documentation_url": "",
@@ -20,7 +20,7 @@
"ram": 1024,
"arch": "x86_64",
"console_type": "vnc",
"hda_disk_interface": "sata",
"hda_disk_interface": "sata",
"boot_priority": "d",
"kvm": "allow"
},
@@ -48,6 +48,14 @@
"filesize": 198656,
"download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/",
"direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty100G.qcow2/download"
},
{
"filename": "empty200G.qcow2",
"version": "200G",
"md5sum": "d1686d2f25695dee32eab9a6f4652c7c",
"filesize": 200192,
"download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/",
"direct_download_url": "https://sourceforge.net/projects/gns-3/files/Empty%20Qemu%20disk/empty200G.qcow2/download"
}
],
"versions": [
@@ -63,11 +71,17 @@
"hda_disk_image": "empty30G.qcow2"
}
},
{
{
"name": "100G",
"images": {
"hda_disk_image": "empty100G.qcow2"
}
},
{
"name": "200G",
"images": {
"hda_disk_image": "empty200G.qcow2"
}
}
]
}
+14 -1
View File
@@ -27,7 +27,14 @@
"options": "-cpu core2duo"
},
"images": [
{
{
"filename": "EXOS-VM_v32.1.1.6.qcow2",
"version": "32.1.1.6",
"md5sum": "48868bbcb4255d6365049b5941dd2af7",
"filesize": 231211008,
"direct_download_url": "https://akamai-ep.extremenetworks.com/Extreme_P/github-en/Virtual_EXOS/EXOS-VM_v32.1.1.6.qcow2"
},
{
"filename": "EXOS-VM_v31.7.1.4.qcow2",
"version": "31.7.1.4",
"md5sum": "a70e4fa3bc361434237ad12937aaf0fb",
@@ -106,6 +113,12 @@
}
],
"versions": [
{
"name": "32.1.1.6",
"images": {
"hda_disk_image": "EXOS-VM_v32.1.1.6.qcow2"
}
},
{
"name": "31.7.1.4",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FAZ_VM64_KVM-v7.2.1-build1215-FORTINET.out.kvm.qcow2",
"version": "7.2.1",
"md5sum": "c13b6c7678a2fc12ab969fc681ad3af5",
"filesize": 340631552,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FAZ_VM64_KVM-v6-build2288-FORTINET.out.kvm.qcow2",
"version": "6.4.5",
@@ -177,6 +184,13 @@
}
],
"versions": [
{
"name": "7.2.1",
"images": {
"hda_disk_image": "FAZ_VM64_KVM-v7.2.1-build1215-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.4.5",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FGT_VM64_KVM-v7.2.1.F-build1254-FORTINET.out.kvm.qcow2",
"version": "7.2.1",
"md5sum": "e382a1ad5c7c16f49a1c0d3f45e3a3b2",
"filesize": 86704128,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FGT_VM64_KVM-v6-build1828-FORTINET.out.kvm.qcow2",
"version": "6.4.5",
@@ -254,6 +261,13 @@
}
],
"versions": [
{
"name": "7.2.1",
"images": {
"hda_disk_image": "FGT_VM64_KVM-v7.2.1.F-build1254-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.4.5",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FML_VMKV-64-v721.M-build0364-FORTINET.out.kvm.qcow2",
"version": "7.2.1",
"md5sum": "b7bf13c2fb013693936b45d89dfab1ac",
"filesize": 123535360,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FML_VMKV-64-v60-build0257-FORTINET.out.kvm.qcow2",
"version": "6.2.1",
@@ -184,6 +191,13 @@
}
],
"versions": [
{
"name": "7.2.1",
"images": {
"hda_disk_image": "FML_VMKV-64-v721.M-build0364-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.1",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FMG_VM64_KVM-v7.2.1-build1215-FORTINET.out.kvm.qcow2",
"version": "7.2.1",
"md5sum": "1a3eeff1204fa8f4243773f7521e12b5",
"filesize": 242814976,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FMG_VM64_KVM-v6-build2288-FORTINET.out.kvm.qcow2",
"version": "6.4.5",
@@ -177,6 +184,13 @@
}
],
"versions": [
{
"name": "7.2.1",
"images": {
"hda_disk_image": "FMG_VM64_KVM-v7.2.1-build1215-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.4.5",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FPX_KVM-v700.M-build0102-FORTINET.out.kvm.qcow2",
"version": "7.0.6",
"md5sum": "ad0a4612580b5a2754cc4e0121a9cf22",
"filesize": 146800640,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FPX_KVM-v100-build0162-FORTINET.out.kvm.qcow2",
"version": "1.1.2",
@@ -51,6 +58,13 @@
}
],
"versions": [
{
"name": "7.0.6",
"images": {
"hda_disk_image": "FPX_KVM-v700.M-build0102-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "1.1.2",
"images": {
+14
View File
@@ -28,6 +28,13 @@
"options": "-smp 2"
},
"images": [
{
"filename": "FSA_KVM-v400-build0231-FORTINET.out.kvm.qcow2",
"version": "4.2.2",
"md5sum": "02b7f49e3c04861601a7af26452eed66",
"filesize": 156172304,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FSA_KVM-v300-build0124-FORTINET.out.kvm.qcow2",
"version": "3.1.2",
@@ -114,6 +121,13 @@
}
],
"versions": [
{
"name": "4.2.2",
"images": {
"hda_disk_image": "FSA_KVM-v400-build0231-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "FSA-datadrive.qcow2"
}
},
{
"name": "3.1.2",
"images": {
+14
View File
@@ -27,6 +27,13 @@
"kvm": "allow"
},
"images": [
{
"filename": "FWB_KVM-v700-build0097-FORTINET.out.kvm.qcow2",
"version": "7.0.1",
"md5sum": "a197e9db03ffaf7feb520c8f77f940f7",
"filesize": 257622528,
"download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
},
{
"filename": "FWB_KVM-v600-build0727-FORTINET.out.kvm.qcow2",
"version": "6.2.1",
@@ -121,6 +128,13 @@
}
],
"versions": [
{
"name": "7.0.1",
"images": {
"hda_disk_image": "FWB_KVM-v700-build0097-FORTINET.out.kvm.qcow2",
"hdb_disk_image": "empty30G.qcow2"
}
},
{
"name": "6.2.1",
"images": {
+1 -1
View File
@@ -11,7 +11,7 @@
"status": "experimental",
"availability": "service-contract",
"maintainer": "none",
"maintainer_email": "none",
"maintainer_email": "",
"usage": "Default user is super, default password is super.",
"port_name_format": "GigabitEthernet0/0/{0}",
"qemu": {
+1 -1
View File
@@ -10,7 +10,7 @@
"status": "experimental",
"availability": "service-contract",
"maintainer": "none",
"maintainer_email": "none",
"maintainer_email": "",
"port_name_format": "GE1/0/{0}",
"qemu": {
"adapter_type": "e1000",
+1 -1
View File
@@ -11,7 +11,7 @@
"status": "experimental",
"availability": "service-contract",
"maintainer": "none",
"maintainer_email": "none",
"maintainer_email": "",
"first_port_name": "eth0",
"port_name_format": "Ethernet1/0/{0}",
"qemu": {
+1 -1
View File
@@ -11,7 +11,7 @@
"status": "experimental",
"availability": "service-contract",
"maintainer": "none",
"maintainer_email": "none",
"maintainer_email": "",
"usage": "Default password is admin. Default username and password for web is admin/Admin@123.",
"first_port_name": "GigabitEthernet0/0/0",
"port_name_format": "GigabitEthernet1/0/{0}",
+2 -2
View File
@@ -12,13 +12,13 @@
"status": "experimental",
"maintainer": "none",
"maintainer_email": "developers@gns3.net",
"usage": "Initial username is root, password is root.\n",
"usage": "Connect VCP by port Eth1.\nData port ge/xe-x/0/0 to ge/xe-x/0/9 mapping to Eth3 to Eth12.\nInitial username is root, password is root.\n",
"symbol": "juniper-vmx.svg",
"first_port_name": "Eth0",
"port_name_format": "Eth{port1}",
"qemu": {
"adapter_type": "virtio-net-pci",
"adapters": 12,
"adapters": 13,
"ram": 4096,
"hda_disk_interface": "ide",
"arch": "x86_64",
+19
View File
@@ -28,6 +28,18 @@
"options": "-nographic -enable-kvm"
},
"images": [
{
"filename": "junos-x86-64-20.4R3.8.img",
"version": "20.4R3.8-KVM",
"md5sum": "69638ba0ad83d7a99a28b658b1dd8def",
"filesize": 2773090304
},
{
"filename": "metadata.img",
"version": "20.4R3.8-KVM",
"md5sum": "ae4e3562aa389929476d82420c79d511",
"filesize": 393216
},
{
"filename": "junos-x86-64-20.3R1.8.img",
"version": "20.3R1.8-KVM",
@@ -42,6 +54,13 @@
}
],
"versions": [
{
"name": "20.4R3.8-KVM",
"images": {
"hda_disk_image": "junos-x86-64-20.4R3.8.img",
"hdb_disk_image": "metadata.img"
}
},
{
"name": "20.3R1.8-KVM",
"images": {
+32 -32
View File
@@ -28,81 +28,81 @@
},
"images": [
{
"filename": "chr-7.1rc7.img",
"version": "7.1rc7",
"md5sum": "04bc0ae1e5fbbda1522135bc57cf6560",
"filename": "chr-7.4rc2.img",
"version": "7.4rc2",
"md5sum": "ddb107c95cc7d231f8d8bbdb4eebdab6",
"filesize": 134217728,
"download_url": "http://www.mikrotik.com/download",
"direct_download_url": "https://download.mikrotik.com/routeros/7.1rc7/chr-7.1rc7.img.zip",
"direct_download_url": "https://download.mikrotik.com/routeros/7.4rc2/chr-7.4rc2.img.zip",
"compression": "zip"
},
{
"filename": "chr-7.1.img",
"version": "7.1",
"md5sum": "41545bc7b55717fe5bb1e489ee39ca45",
"filename": "chr-7.3.1.img",
"version": "7.3.1",
"md5sum": "99f8ea75f8b745a8bf5ca3cc1bd325e3",
"filesize": 134217728,
"download_url": "http://www.mikrotik.com/download",
"direct_download_url": "https://download.mikrotik.com/routeros/7.1/chr-7.1.img.zip",
"direct_download_url": "https://download.mikrotik.com/routeros/7.3.1/chr-7.3.1.img.zip",
"compression": "zip"
},
{
"filename": "chr-6.49rc2.img",
"version": "6.49rc2",
"md5sum": "e1088f8f64ac3d6ecf2e56ac96261226",
"filesize": 67108864,
"filename": "chr-7.1.5.img",
"version": "7.1.5",
"md5sum": "9c0be05f891df2b1400bdae5e719898e",
"filesize": 134217728,
"download_url": "http://www.mikrotik.com/download",
"direct_download_url": "https://download.mikrotik.com/routeros/6.49rc2/chr-6.49rc2.img.zip",
"direct_download_url": "https://download.mikrotik.com/routeros/7.1.5/chr-7.1.5.img.zip",
"compression": "zip"
},
{
"filename": "chr-6.49.1.img",
"version": "6.49.1",
"md5sum": "6c896c4c853de99f2ea77f0f4b102261",
"filename": "chr-6.49.6.img",
"version": "6.49.6",
"md5sum": "ae27d38acc9c4dcd875e0f97bcae8d97",
"filesize": 67108864,
"download_url": "http://www.mikrotik.com/download",
"direct_download_url": "https://download.mikrotik.com/routeros/6.49.1/chr-6.49.1.img.zip",
"direct_download_url": "https://download.mikrotik.com/routeros/6.49.6/chr-6.49.6.img.zip",
"compression": "zip"
},
{
"filename": "chr-6.48.5.img",
"version": "6.48.5",
"md5sum": "d14debd4cd989f16f695b5b075960703",
"filename": "chr-6.48.6.img",
"version": "6.48.6",
"md5sum": "875574a561570227ff8f395aabe478c6",
"filesize": 67108864,
"download_url": "http://www.mikrotik.com/download",
"direct_download_url": "https://download.mikrotik.com/routeros/6.48.5/chr-6.48.5.img.zip",
"direct_download_url": "https://download.mikrotik.com/routeros/6.48.6/chr-6.48.6.img.zip",
"compression": "zip"
}
],
"versions": [
{
"name": "7.1rc7",
"name": "7.4rc2",
"images": {
"hda_disk_image": "chr-7.1rc7.img"
"hda_disk_image": "chr-7.4rc2.img"
}
},
{
"name": "7.1",
"name": "7.3.1",
"images": {
"hda_disk_image": "chr-7.1.img"
"hda_disk_image": "chr-7.3.1.img"
}
},
{
"name": "6.49rc2",
"name": "7.1.5",
"images": {
"hda_disk_image": "chr-6.49rc2.img"
"hda_disk_image": "chr-7.1.5.img"
}
},
{
"name": "6.49.1",
"name": "6.49.6",
"images": {
"hda_disk_image": "chr-6.49.1.img"
"hda_disk_image": "chr-6.49.6.img"
}
},
{
"name": "6.48.5",
"name": "6.48.6",
"images": {
"hda_disk_image": "chr-6.48.5.img"
"hda_disk_image": "chr-6.48.6.img"
}
}
]
}
}
+2 -2
View File
@@ -29,8 +29,8 @@
"version": "0.4",
"md5sum": "e678698c97804901c7a53f6b68c8b861",
"filesize": 26476544,
"download_url": "https://www.b-ehlers.de/projects/netem/index.html",
"direct_download_url": "https://www.b-ehlers.de/projects/netem/NETem-v4.qcow2"
"download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/",
"direct_download_url": "https://sourceforge.net/projects/gns-3/files/Qemu%20Appliances/NETem-v4.qcow2/download"
}
],
"versions": [
+29 -1
View File
@@ -15,7 +15,7 @@
"usage": "Default password is raspberry",
"symbol": "rpi.png",
"qemu": {
"adapter_type": "virtio",
"adapter_type": "e1000",
"adapters": 1,
"ram": 1024,
"hda_disk_interface": "sata",
@@ -25,6 +25,20 @@
},
"images": [
{
"filename": "2022-07-01-raspios-bullseye-i386.iso",
"version": "2022-07-01",
"md5sum": "e57f42852306ac5ed0d9e97bdc3513cb",
"filesize": 3607101440,
"download_url": "https://www.raspberrypi.org/downloads/raspberry-pi-desktop/"
},
{
"filename": "2021-01-11-raspios-buster-i386.iso",
"version": "2021-01-11",
"md5sum": "14c0b29c393adee45b90d265b3243564",
"filesize": 3091660800,
"download_url": "https://www.raspberrypi.org/downloads/raspberry-pi-desktop/"
},
{
"filename": "2020-02-12-rpd-x86-buster.iso",
"version": "2020-02-12",
"md5sum": "98f34fb53086752b4c9c452094f30740",
@@ -41,6 +55,20 @@
],
"versions": [
{
"name": "2022-07-01",
"images": {
"hda_disk_image": "empty8G.qcow2",
"cdrom_image": "2022-07-01-raspios-bullseye-i386.iso"
}
},
{
"name": "2021-01-11",
"images": {
"hda_disk_image": "empty8G.qcow2",
"cdrom_image": "2021-01-11-raspios-buster-i386.iso"
}
},
{
"name": "2020-02-12",
"images": {
"hda_disk_image": "empty8G.qcow2",
+14
View File
@@ -26,6 +26,13 @@
"options": "-nographic"
},
"images": [
{
"filename": "ubuntu-22.04-server-cloudimg-amd64.img",
"version": "22.04 (LTS)",
"md5sum": "ac2351289daa173fa1ed6b2b81d81d7c",
"filesize": 624295936,
"download_url": "https://cloud-images.ubuntu.com/releases/jammy/release/ubuntu-22.04-server-cloudimg-amd64.img"
},
{
"filename": "ubuntu-20.04-server-cloudimg-amd64.img",
"version": "20.04 (LTS)",
@@ -70,6 +77,13 @@
}
],
"versions": [
{
"name": "22.04 (LTS)",
"images": {
"hda_disk_image": "ubuntu-22.04-server-cloudimg-amd64.img",
"cdrom_image": "ubuntu-cloud-init-data.iso"
}
},
{
"name": "20.04 (LTS)",
"images": {
+1 -1
View File
@@ -11,7 +11,7 @@
"registry_version": 3,
"status": "stable",
"maintainer": "Mohamad Siblini",
"maintainer_email": "https://www.ictkin.com/contact",
"maintainer_email": "info@ictkin.com",
"usage": "Username: gns3\nPassword: gns3 | MD5: 435f15a54f7f673e302ad26f05226e0e",
"port_name_format": "ens{0}",
"qemu": {
+1 -1
View File
@@ -20,7 +20,7 @@
# the start command of the container
#
OLD_PATH="$PATH"
PATH=/gns3/bin:/tmp/gns3/bin:/sbin
PATH=/gns3/bin:/tmp/gns3/bin:/sbin:$PATH
# bootstrap busybox commands
if [ ! -d /tmp/gns3/bin ]; then
-3
View File
@@ -367,9 +367,6 @@ class Compute:
log.warning("Cannot connect to compute '{}': {}".format(self._id, e))
# Try to reconnect after 5 seconds if server unavailable only if not during tests (otherwise we create a ressource usage bomb)
if not hasattr(sys, "_called_from_test") or not sys._called_from_test:
if self.id != "local" and self.id != "vm" and not self._controller.compute_has_open_project(self):
log.warning("Not reconnecting to compute '{}' because there is no project opened on it".format(self._id))
return
self._connection_failure += 1
# After 5 failure we close the project using the compute to avoid sync issues
if self._connection_failure == 10:
+1 -1
View File
@@ -58,7 +58,7 @@ class CrashReport:
Report crash to a third party service
"""
DSN = "https://ee45aee943b94618a12e6848851ebf54@o19455.ingest.sentry.io/38482"
DSN = "https://3f074423e7664595923ae5895b0819c4@o19455.ingest.sentry.io/38482"
_instance = None
def __init__(self):
@@ -0,0 +1 @@
(self.webpackChunkgns3_web_ui=self.webpackChunkgns3_web_ui||[]).push([[179],{98255:function(ue){function q(f){return Promise.resolve().then(function(){var U=new Error("Cannot find module '"+f+"'");throw U.code="MODULE_NOT_FOUND",U})}q.keys=function(){return[]},q.resolve=q,q.id=98255,ue.exports=q},82908:function(ue){ue.exports=function(f,U){(null==U||U>f.length)&&(U=f.length);for(var B=0,V=new Array(U);B<U;B++)V[B]=f[B];return V},ue.exports.default=ue.exports,ue.exports.__esModule=!0},36457:function(ue){ue.exports=function(f){if(Array.isArray(f))return f},ue.exports.default=ue.exports,ue.exports.__esModule=!0},35036:function(ue){ue.exports=function(f,U){var B=null==f?null:"undefined"!=typeof Symbol&&f[Symbol.iterator]||f["@@iterator"];if(null!=B){var R,b,V=[],Z=!0,T=!1;try{for(B=B.call(f);!(Z=(R=B.next()).done)&&(V.push(R.value),!U||V.length!==U);Z=!0);}catch(v){T=!0,b=v}finally{try{!Z&&null!=B.return&&B.return()}finally{if(T)throw b}}return V}},ue.exports.default=ue.exports,ue.exports.__esModule=!0},13969:function(ue){ue.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},ue.exports.default=ue.exports,ue.exports.__esModule=!0},6326:function(ue,q,f){var U=f(36457),B=f(35036),V=f(54850),Z=f(13969);ue.exports=function(R,b){return U(R)||B(R,b)||V(R,b)||Z()},ue.exports.default=ue.exports,ue.exports.__esModule=!0},54850:function(ue,q,f){var U=f(82908);ue.exports=function(V,Z){if(V){if("string"==typeof V)return U(V,Z);var T=Object.prototype.toString.call(V).slice(8,-1);if("Object"===T&&V.constructor&&(T=V.constructor.name),"Map"===T||"Set"===T)return Array.from(V);if("Arguments"===T||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(T))return U(V,Z)}},ue.exports.default=ue.exports,ue.exports.__esModule=!0},26552:function(ue,q,f){ue.exports=f(55590)},61855:function(ue,q,f){"use strict";f.d(q,{ZT:function(){return B},mG:function(){return v},Jh:function(){return I},ev:function(){return N}});var U=function($,ae){return(U=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(se,ce){se.__proto__=ce}||function(se,ce){for(var le in ce)Object.prototype.hasOwnProperty.call(ce,le)&&(se[le]=ce[le])})($,ae)};function B($,ae){if("function"!=typeof ae&&null!==ae)throw new TypeError("Class extends value "+String(ae)+" is not a constructor or null");function se(){this.constructor=$}U($,ae),$.prototype=null===ae?Object.create(ae):(se.prototype=ae.prototype,new se)}function v($,ae,se,ce){return new(se||(se=Promise))(function(oe,Ae){function be(_t){try{qe(ce.next(_t))}catch(yt){Ae(yt)}}function it(_t){try{qe(ce.throw(_t))}catch(yt){Ae(yt)}}function qe(_t){_t.done?oe(_t.value):function(oe){return oe instanceof se?oe:new se(function(Ae){Ae(oe)})}(_t.value).then(be,it)}qe((ce=ce.apply($,ae||[])).next())})}function I($,ae){var ce,le,oe,Ae,se={label:0,sent:function(){if(1&oe[0])throw oe[1];return oe[1]},trys:[],ops:[]};return Ae={next:be(0),throw:be(1),return:be(2)},"function"==typeof Symbol&&(Ae[Symbol.iterator]=function(){return this}),Ae;function be(qe){return function(_t){return function(qe){if(ce)throw new TypeError("Generator is already executing.");for(;se;)try{if(ce=1,le&&(oe=2&qe[0]?le.return:qe[0]?le.throw||((oe=le.return)&&oe.call(le),0):le.next)&&!(oe=oe.call(le,qe[1])).done)return oe;switch(le=0,oe&&(qe=[2&qe[0],oe.value]),qe[0]){case 0:case 1:oe=qe;break;case 4:return se.label++,{value:qe[1],done:!1};case 5:se.label++,le=qe[1],qe=[0];continue;case 7:qe=se.ops.pop(),se.trys.pop();continue;default:if(!(oe=(oe=se.trys).length>0&&oe[oe.length-1])&&(6===qe[0]||2===qe[0])){se=0;continue}if(3===qe[0]&&(!oe||qe[1]>oe[0]&&qe[1]<oe[3])){se.label=qe[1];break}if(6===qe[0]&&se.label<oe[1]){se.label=oe[1],oe=qe;break}if(oe&&se.label<oe[2]){se.label=oe[2],se.ops.push(qe);break}oe[2]&&se.ops.pop(),se.trys.pop();continue}qe=ae.call($,se)}catch(_t){qe=[6,_t],le=0}finally{ce=oe=0}if(5&qe[0])throw qe[1];return{value:qe[0]?qe[1]:void 0,done:!0}}([qe,_t])}}}function N($,ae,se){if(se||2===arguments.length)for(var oe,ce=0,le=ae.length;ce<le;ce++)(oe||!(ce in ae))&&(oe||(oe=Array.prototype.slice.call(ae,0,ce)),oe[ce]=ae[ce]);return $.concat(oe||Array.prototype.slice.call(ae))}},739:function(ue,q,f){"use strict";f.d(q,{l3:function(){return T},_j:function(){return V},LC:function(){return Z},ZN:function(){return O},jt:function(){return b},pV:function(){return E},F4:function(){return M},IO:function(){return A},vP:function(){return I},SB:function(){return k},oB:function(){return D},eR:function(){return _},X$:function(){return R},ZE:function(){return F},k1:function(){return z}});var U=f(14105),B=f(18967),V=function K(){(0,B.Z)(this,K)},Z=function K(){(0,B.Z)(this,K)},T="*";function R(K,j){return{type:7,name:K,definitions:j,options:{}}}function b(K){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:j,timings:K}}function I(K){var j=arguments.length>1&&void 0!==arguments[1]?arguments[1]Line truncated
+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.33"
__version_info__ = (2, 2, 33, 0)
__version__ = "2.2.34"
__version_info__ = (2, 2, 34, 0)
if "dev" in __version__:
try:
+1 -1
View File
@@ -147,7 +147,7 @@ class Route(object):
else:
route = path
# Compute metadata for the documentation
# Compute metadata for the documentation
if api_version:
handler = func.__module__.replace("_handler", "").replace("gns3server.handlers.api.", "")
cls._documentation.setdefault(handler, {})
+1
View File
@@ -1,3 +1,4 @@
[pytest]
asyncio_mode=auto
log_level=NOTSET
ignore=env
+1 -1
View File
@@ -3,7 +3,7 @@ aiohttp==3.8.1
aiohttp-cors==0.7.0
aiofiles==0.8.0
Jinja2==3.0.3
sentry-sdk==1.5.12
sentry-sdk==1.9.5
psutil==5.9.1
async-timeout==4.0.2
distro==1.7.0
@@ -18,7 +18,6 @@
import os
import uuid
import pytest
import asyncio
from gns3server.compute.dynamips.nodes.router import Router
from gns3server.compute.dynamips.dynamips_error import DynamipsError
-1
View File
@@ -18,7 +18,6 @@
from collections import OrderedDict
import pytest
import asyncio
from tests.utils import asyncio_patch, AsyncioMagicMock
@@ -15,7 +15,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import pytest
from gns3server.compute.vmware import VMware
-1
View File
@@ -16,7 +16,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import pytest
import asyncio
from gns3server.compute.vmware.vmware_vm import VMwareVM
from gns3server.compute.vmware import VMware
@@ -16,7 +16,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import pytest
import asyncio
from tests.utils import asyncio_patch, AsyncioMagicMock
from gns3server.utils.asyncio import wait_run_in_executor