gns3-server 3.0.0b1__py3-none-any.whl → 3.0.0b3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of gns3-server might be problematic. Click here for more details.

Files changed (95) hide show
  1. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/METADATA +20 -20
  2. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/RECORD +93 -75
  3. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/WHEEL +1 -1
  4. gns3server/api/routes/compute/dynamips_nodes.py +2 -2
  5. gns3server/api/routes/compute/notifications.py +1 -5
  6. gns3server/api/routes/controller/controller.py +0 -5
  7. gns3server/api/routes/controller/images.py +4 -2
  8. gns3server/api/routes/controller/projects.py +0 -4
  9. gns3server/appliances/arista-veos.gns3a +178 -2
  10. gns3server/appliances/asterfusion-vAsterNOS.gns3a +49 -0
  11. gns3server/appliances/bird.gns3a +1 -1
  12. gns3server/appliances/bird2.gns3a +14 -0
  13. gns3server/appliances/cisco-asav.gns3a +13 -0
  14. gns3server/appliances/cisco-c8000v.gns3a +26 -0
  15. gns3server/appliances/cisco-cat9k.gns3a +16 -3
  16. gns3server/appliances/cisco-csr1000v.gns3a +13 -0
  17. gns3server/appliances/cisco-iosv.gns3a +14 -0
  18. gns3server/appliances/cisco-iosxrv9k.gns3a +13 -0
  19. gns3server/appliances/cisco-iou-l2.gns3a +12 -0
  20. gns3server/appliances/cisco-iou-l3.gns3a +12 -0
  21. gns3server/appliances/cisco-nxosv9k.gns3a +70 -0
  22. gns3server/appliances/clavister-netsheild.gns3a +15 -2
  23. gns3server/appliances/clavister-netwall.gns3a +15 -2
  24. gns3server/appliances/debian.gns3a +7 -7
  25. gns3server/appliances/dell-ftos.gns3a +21 -4
  26. gns3server/appliances/exos.gns3a +13 -151
  27. gns3server/appliances/fedora-cloud.gns3a +12 -42
  28. gns3server/appliances/fortianalyzer.gns3a +42 -0
  29. gns3server/appliances/fortigate.gns3a +56 -0
  30. gns3server/appliances/fortimanager.gns3a +43 -1
  31. gns3server/appliances/freebsd.gns3a +17 -2
  32. gns3server/appliances/huawei-ne40e.gns3a +51 -2
  33. gns3server/appliances/mikrotik-chr.gns3a +9 -0
  34. gns3server/appliances/mikrotik-rb1100ahx4-dude-edition.gns3a +1 -1
  35. gns3server/appliances/mikrotik-rb450g.gns3a +1 -1
  36. gns3server/appliances/mikrotik-rb450gx4.gns3a +1 -1
  37. gns3server/appliances/open-media-vault.gns3a +16 -0
  38. gns3server/appliances/openvswitch-management.gns3a +1 -1
  39. gns3server/appliances/opnsense.gns3a +13 -0
  40. gns3server/appliances/ostinato.gns3a +13 -0
  41. gns3server/appliances/rhel.gns3a +17 -3
  42. gns3server/appliances/rockylinux.gns3a +30 -0
  43. gns3server/appliances/ubuntu-cloud.gns3a +5 -5
  44. gns3server/compute/docker/__init__.py +3 -3
  45. gns3server/compute/docker/docker_vm.py +12 -3
  46. gns3server/compute/dynamips/__init__.py +7 -0
  47. gns3server/compute/iou/iou_vm.py +2 -1
  48. gns3server/compute/qemu/__init__.py +10 -3
  49. gns3server/compute/qemu/qemu_vm.py +7 -1
  50. gns3server/compute/vpcs/vpcs_vm.py +3 -0
  51. gns3server/controller/__init__.py +6 -6
  52. gns3server/controller/export_project.py +5 -0
  53. gns3server/controller/project.py +19 -5
  54. gns3server/controller/snapshot.py +3 -3
  55. gns3server/controller/symbol_themes.py +7 -0
  56. gns3server/controller/udp_link.py +1 -1
  57. gns3server/crash_report.py +1 -1
  58. gns3server/db/models/templates.py +2 -2
  59. gns3server/db_migrations/README +1 -0
  60. gns3server/main.py +5 -1
  61. gns3server/schemas/compute/docker_nodes.py +1 -1
  62. gns3server/schemas/controller/templates/__init__.py +0 -1
  63. gns3server/schemas/controller/templates/docker_templates.py +1 -1
  64. gns3server/server.py +3 -4
  65. gns3server/services/authentication.py +7 -7
  66. gns3server/services/templates.py +1 -1
  67. gns3server/static/web-ui/3rdpartylicenses.txt +23 -0
  68. gns3server/static/web-ui/index.html +1 -1
  69. gns3server/static/web-ui/main.f3840f9b1c0240e6.js +1 -0
  70. gns3server/static/web-ui/runtime.24fa95b7061d7056.js +1 -0
  71. gns3server/symbols/affinity/circle/blue/nat.svg +60 -0
  72. gns3server/symbols/affinity/circle/blue/nat2.svg +55 -0
  73. gns3server/symbols/affinity/circle/gray/nat.svg +60 -0
  74. gns3server/symbols/affinity/circle/gray/nat2.svg +55 -0
  75. gns3server/symbols/affinity/circle/green/nat.svg +60 -0
  76. gns3server/symbols/affinity/circle/green/nat2.svg +55 -0
  77. gns3server/symbols/affinity/circle/red/nat.svg +60 -0
  78. gns3server/symbols/affinity/circle/red/nat2.svg +55 -0
  79. gns3server/symbols/affinity/square/blue/nat.svg +58 -0
  80. gns3server/symbols/affinity/square/blue/nat2.svg +74 -0
  81. gns3server/symbols/affinity/square/gray/nat.svg +58 -0
  82. gns3server/symbols/affinity/square/gray/nat2.svg +74 -0
  83. gns3server/symbols/affinity/square/green/nat.svg +58 -0
  84. gns3server/symbols/affinity/square/green/nat2.svg +74 -0
  85. gns3server/symbols/affinity/square/red/nat.svg +58 -0
  86. gns3server/symbols/affinity/square/red/nat2.svg +74 -0
  87. gns3server/symbols/classic/nat.svg +207 -0
  88. gns3server/utils/asyncio/telnet_server.py +17 -4
  89. gns3server/utils/images.py +3 -5
  90. gns3server/version.py +1 -1
  91. gns3server/static/web-ui/main.fa00b32e7c90ea1c.js +0 -1
  92. gns3server/static/web-ui/runtime.53e0b4d68251ad21.js +0 -1
  93. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/LICENSE +0 -0
  94. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/entry_points.txt +0 -0
  95. {gns3_server-3.0.0b1.dist-info → gns3_server-3.0.0b3.dist-info}/top_level.txt +0 -0
@@ -28,6 +28,13 @@
28
28
  "kvm": "allow"
29
29
  },
30
30
  "images": [
31
+ {
32
+ "filename": "FGT_VM64_KVM-v7.4.3.F-build2573-FORTINET.out.kvm.qcow2",
33
+ "version": "7.4.3",
34
+ "md5sum": "e7517095c91dce1a76a9bcf114b5fa15",
35
+ "filesize": 100728832,
36
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
37
+ },
31
38
  {
32
39
  "filename": "FGT_VM64_KVM-v7.4.1.F-build2463-FORTINET.out.kvm.qcow2",
33
40
  "version": "7.4.1",
@@ -35,6 +42,13 @@
35
42
  "filesize": 116064256,
36
43
  "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
37
44
  },
45
+ {
46
+ "filename": "FGT_VM64_KVM-v7.2.7.M-build1577-FORTINET.out.kvm.qcow2",
47
+ "version": "7.2.7",
48
+ "md5sum": "752b56844e464b0b135e57f72681c288",
49
+ "filesize": 102760448,
50
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
51
+ },
38
52
  {
39
53
  "filename": "FGT_VM64_KVM-v7.2.6.F-build1575-FORTINET.out.kvm.qcow2",
40
54
  "version": "7.2.6",
@@ -63,6 +77,13 @@
63
77
  "filesize": 86704128,
64
78
  "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
65
79
  },
80
+ {
81
+ "filename": "FGT_VM64_KVM-v7.0.14.M-build0601-FORTINET.out.kvm.qcow2",
82
+ "version": "7.0.14",
83
+ "md5sum": "20c855889e1117902bcf448b30746d30",
84
+ "filesize": 77398016,
85
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
86
+ },
66
87
  {
67
88
  "filename": "FGT_VM64_KVM-v7.0.13.M-build0566-FORTINET.out.kvm.qcow2",
68
89
  "version": "7.0.13",
@@ -91,6 +112,13 @@
91
112
  "filesize": 77135872,
92
113
  "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
93
114
  },
115
+ {
116
+ "filename": "FGT_VM64_KVM-v6.4.15.M-build2095-FORTINET.out.kvm.qcow2",
117
+ "version": "6.4.15",
118
+ "md5sum": "a0306a3905877de654dab7e1bb67089e",
119
+ "filesize": 81592320,
120
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
121
+ },
94
122
  {
95
123
  "filename": "FGT_VM64_KVM-v6.4.14.M-build2093-FORTINET.out.kvm.qcow2",
96
124
  "version": "6.4.14",
@@ -339,6 +367,13 @@
339
367
  }
340
368
  ],
341
369
  "versions": [
370
+ {
371
+ "name": "7.4.3",
372
+ "images": {
373
+ "hda_disk_image": "FGT_VM64_KVM-v7.4.3.F-build2573-FORTINET.out.kvm.qcow2",
374
+ "hdb_disk_image": "empty30G.qcow2"
375
+ }
376
+ },
342
377
  {
343
378
  "name": "7.4.1",
344
379
  "images": {
@@ -346,6 +381,13 @@
346
381
  "hdb_disk_image": "empty30G.qcow2"
347
382
  }
348
383
  },
384
+ {
385
+ "name": "7.2.7",
386
+ "images": {
387
+ "hda_disk_image": "FGT_VM64_KVM-v7.2.7.M-build1577-FORTINET.out.kvm.qcow2",
388
+ "hdb_disk_image": "empty30G.qcow2"
389
+ }
390
+ },
349
391
  {
350
392
  "name": "7.2.6",
351
393
  "images": {
@@ -374,6 +416,13 @@
374
416
  "hdb_disk_image": "empty30G.qcow2"
375
417
  }
376
418
  },
419
+ {
420
+ "name": "7.0.14",
421
+ "images": {
422
+ "hda_disk_image": "FGT_VM64_KVM-v7.0.14.M-build0601-FORTINET.out.kvm.qcow2",
423
+ "hdb_disk_image": "empty30G.qcow2"
424
+ }
425
+ },
377
426
  {
378
427
  "name": "7.0.13",
379
428
  "images": {
@@ -402,6 +451,13 @@
402
451
  "hdb_disk_image": "empty30G.qcow2"
403
452
  }
404
453
  },
454
+ {
455
+ "name": "6.4.15",
456
+ "images": {
457
+ "hda_disk_image": "FGT_VM64_KVM-v6.4.15.M-build2095-FORTINET.out.kvm.qcow2",
458
+ "hdb_disk_image": "empty30G.qcow2"
459
+ }
460
+ },
405
461
  {
406
462
  "name": "6.4.14",
407
463
  "images": {
@@ -13,7 +13,7 @@
13
13
  "status": "stable",
14
14
  "maintainer": "Ean Towne",
15
15
  "maintainer_email": "ean.fortinet@gmail.com",
16
- "usage": "Default username is admin, no password is set.\n\n- Versions lower than 7.0.x require less CPU/RAM",
16
+ "usage": "Default username is admin, no password is set.\n\n- Versions lower than 7.0.x require less CPU/RAM\n7.4.x may require 16GB RAM.",
17
17
  "symbol": "fortinet.svg",
18
18
  "port_name_format": "Port{port1}",
19
19
  "qemu": {
@@ -29,6 +29,13 @@
29
29
  "kvm": "allow"
30
30
  },
31
31
  "images": [
32
+ {
33
+ "filename": "FMG_VM64_KVM-v7.4.2-build2397-FORTINET.out.kvm.qcow2",
34
+ "version": "7.4.2",
35
+ "md5sum": "36371fbf06210ded57c00b2ff290f2c5",
36
+ "filesize": 322514944,
37
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
38
+ },
32
39
  {
33
40
  "filename": "FMG_VM64_KVM-v7.4.1-build2308-FORTINET.out.kvm.qcow2",
34
41
  "version": "7.4.1",
@@ -57,6 +64,13 @@
57
64
  "filesize": 242814976,
58
65
  "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
59
66
  },
67
+ {
68
+ "filename": "FMG_VM64_KVM-v7.0.11-build0595-FORTINET.out.kvm.qcow2",
69
+ "version": "7.0.11",
70
+ "md5sum": "7b166222136e26190159f37cccbaab6e",
71
+ "filesize": 249360384,
72
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
73
+ },
60
74
  {
61
75
  "filename": "FMG_VM64_KVM-v7.0.9-build0489-FORTINET.out.kvm.qcow2",
62
76
  "version": "7.0.9",
@@ -78,6 +92,13 @@
78
92
  "filesize": 237535232,
79
93
  "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
80
94
  },
95
+ {
96
+ "filename": "FMG_VM64_KVM-v6.4.14-build2660-FORTINET.out.kvm.qcow2",
97
+ "version": "6.4.14",
98
+ "md5sum": "0fe56e363b166c07b710bde795e36049",
99
+ "filesize": 219430912,
100
+ "download_url": "https://support.fortinet.com/Download/FirmwareImages.aspx"
101
+ },
81
102
  {
82
103
  "filename": "FMG_VM64_KVM-v6.4.12-build2610-FORTINET.out.kvm.qcow2",
83
104
  "version": "6.4.12",
@@ -235,6 +256,13 @@
235
256
  }
236
257
  ],
237
258
  "versions": [
259
+ {
260
+ "name": "7.4.2",
261
+ "images": {
262
+ "hda_disk_image": "FMG_VM64_KVM-v7.4.2-build2397-FORTINET.out.kvm.qcow2",
263
+ "hdb_disk_image": "empty30G.qcow2"
264
+ }
265
+ },
238
266
  {
239
267
  "name": "7.4.1",
240
268
  "images": {
@@ -263,6 +291,13 @@
263
291
  "hdb_disk_image": "empty30G.qcow2"
264
292
  }
265
293
  },
294
+ {
295
+ "name": "7.0.11",
296
+ "images": {
297
+ "hda_disk_image": "FMG_VM64_KVM-v7.0.11-build0595-FORTINET.out.kvm.qcow2",
298
+ "hdb_disk_image": "empty30G.qcow2"
299
+ }
300
+ },
266
301
  {
267
302
  "name": "7.0.9",
268
303
  "images": {
@@ -284,6 +319,13 @@
284
319
  "hdb_disk_image": "empty30G.qcow2"
285
320
  }
286
321
  },
322
+ {
323
+ "name": "6.4.14",
324
+ "images": {
325
+ "hda_disk_image": "FMG_VM64_KVM-v6.4.14-build2660-FORTINET.out.kvm.qcow2",
326
+ "hdb_disk_image": "empty30G.qcow2"
327
+ }
328
+ },
287
329
  {
288
330
  "name": "6.4.12",
289
331
  "images": {
@@ -24,13 +24,22 @@
24
24
  "kvm": "require"
25
25
  },
26
26
  "images": [
27
+ {
28
+ "filename": "FreeBSD-14.0-RELEASE-amd64.qcow2",
29
+ "version": "14.0",
30
+ "md5sum": "87b988eaa4a8aaabea1c10649c98b3f0",
31
+ "filesize": 3506569216,
32
+ "download_url": "https://www.freebsd.org/where.html",
33
+ "direct_download_url": "https://download.freebsd.org/releases/VM-IMAGES/14.0-RELEASE/amd64/Latest/FreeBSD-14.0-RELEASE-amd64.qcow2.xz",
34
+ "compression": "xz"
35
+ },
27
36
  {
28
37
  "filename": "FreeBSD-13.0-RELEASE-amd64.qcow2",
29
38
  "version": "13.0",
30
39
  "md5sum": "e8e598959da456c03260421b5f9890de",
31
40
  "filesize": 3466854400,
32
41
  "download_url": "https://www.freebsd.org/where.html",
33
- "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/13.0-RELEASE/amd64/Latest/FreeBSD-13.0-RELEASE-amd64.qcow2.xz",
42
+ "direct_download_url": "http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/VM-IMAGES/13.0-RELEASE/amd64/Latest/FreeBSD-13.0-RELEASE-amd64.qcow2.xz",
34
43
  "compression": "xz"
35
44
  },
36
45
  {
@@ -39,11 +48,17 @@
39
48
  "md5sum": "3d7d5396f3d89ed30c2bfa2ee2e6b013",
40
49
  "filesize": 3412000768,
41
50
  "download_url": "https://www.freebsd.org/where.html",
42
- "direct_download_url": "https://download.freebsd.org/ftp/releases/VM-IMAGES/12.3-RELEASE/amd64/Latest/FreeBSD-12.3-RELEASE-amd64.qcow2.xz",
51
+ "direct_download_url": "http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/VM-IMAGES/12.3-RELEASE/amd64/Latest/FreeBSD-12.3-RELEASE-amd64.qcow2.xz",
43
52
  "compression": "xz"
44
53
  }
45
54
  ],
46
55
  "versions": [
56
+ {
57
+ "name": "14.0",
58
+ "images": {
59
+ "hda_disk_image": "FreeBSD-14.0-RELEASE-amd64.qcow2"
60
+ }
61
+ },
47
62
  {
48
63
  "name": "13.0",
49
64
  "images": {
@@ -7,16 +7,65 @@
7
7
  "vendor_url": "https://www.huawei.com",
8
8
  "product_name": "HuaWei NE40E",
9
9
  "product_url": "https://e.huawei.com/en/products/enterprise-networking/routers/ne/ne40e",
10
- "registry_version": 4,
10
+ "registry_version": 6,
11
11
  "status": "experimental",
12
12
  "availability": "service-contract",
13
13
  "maintainer": "none",
14
14
  "maintainer_email": "",
15
- "first_port_name": "eth0",
16
15
  "port_name_format": "Ethernet1/0/{0}",
17
16
  "qemu": {
18
17
  "adapter_type": "e1000",
19
18
  "adapters": 12,
19
+ "custom_adapters": [
20
+ {
21
+ "adapter_number": 0,
22
+ "port_name": "Gi0/0/0"
23
+ },
24
+ {
25
+ "adapter_number": 1,
26
+ "port_name": "Mgmt0/0"
27
+ },
28
+ {
29
+ "adapter_number": 2,
30
+ "port_name": "Ethernet1/0/0"
31
+ },
32
+ {
33
+ "adapter_number": 3,
34
+ "port_name": "Ethernet1/0/1"
35
+ },
36
+ {
37
+ "adapter_number": 4,
38
+ "port_name": "Ethernet1/0/2"
39
+ },
40
+ {
41
+ "adapter_number": 5,
42
+ "port_name": "Ethernet1/0/3"
43
+ },
44
+ {
45
+ "adapter_number": 6,
46
+ "port_name": "Ethernet1/0/4"
47
+ },
48
+ {
49
+ "adapter_number": 7,
50
+ "port_name": "Ethernet1/0/5"
51
+ },
52
+ {
53
+ "adapter_number": 8,
54
+ "port_name": "Ethernet1/0/6"
55
+ },
56
+ {
57
+ "adapter_number": 9,
58
+ "port_name": "Ethernet1/0/7"
59
+ },
60
+ {
61
+ "adapter_number": 10,
62
+ "port_name": "Ethernet1/0/8"
63
+ },
64
+ {
65
+ "adapter_number": 11,
66
+ "port_name": "Ethernet1/0/9"
67
+ }
68
+ ],
20
69
  "ram": 2048,
21
70
  "cpus": 2,
22
71
  "hda_disk_interface": "ide",
@@ -27,6 +27,15 @@
27
27
  "options": "-nographic"
28
28
  },
29
29
  "images": [
30
+ {
31
+ "filename": "chr-7.14.2.img",
32
+ "version": "7.14.2",
33
+ "md5sum": "531901dac85b67b23011e946a62abc7b",
34
+ "filesize": 134217728,
35
+ "download_url": "http://www.mikrotik.com/download",
36
+ "direct_download_url": "https://download.mikrotik.com/routeros/7.14.2/chr-7.14.2.img.zip",
37
+ "compression": "zip"
38
+ },
30
39
  {
31
40
  "filename": "chr-7.11.2.img",
32
41
  "version": "7.11.2",
@@ -8,7 +8,7 @@
8
8
  "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR",
9
9
  "product_name": "MikroTik RouterBOARD 1100AHx4 Dude Edition",
10
10
  "product_url": "http://www.mikrotik.com/download",
11
- "registry_version": 5,
11
+ "registry_version": 4,
12
12
  "status": "stable",
13
13
  "maintainer": "Azorian Solutions",
14
14
  "maintainer_email": "help@azorian.solutions",
@@ -8,7 +8,7 @@
8
8
  "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR",
9
9
  "product_name": "MikroTik RouterBOARD 450G",
10
10
  "product_url": "http://www.mikrotik.com/download",
11
- "registry_version": 5,
11
+ "registry_version": 4,
12
12
  "status": "stable",
13
13
  "maintainer": "Azorian Solutions",
14
14
  "maintainer_email": "help@azorian.solutions",
@@ -8,7 +8,7 @@
8
8
  "documentation_url": "http://wiki.mikrotik.com/wiki/Manual:CHR",
9
9
  "product_name": "MikroTik RouterBOARD 450Gx4",
10
10
  "product_url": "http://www.mikrotik.com/download",
11
- "registry_version": 5,
11
+ "registry_version": 4,
12
12
  "status": "stable",
13
13
  "maintainer": "Azorian Solutions",
14
14
  "maintainer_email": "help@azorian.solutions",
@@ -26,6 +26,14 @@
26
26
  "kvm": "require"
27
27
  },
28
28
  "images": [
29
+ {
30
+ "filename": "openmediavault_7.0.32-amd64.iso",
31
+ "version": "7.0.32",
32
+ "md5sum": "36d1fda7de0c8dd6806a65145845d362",
33
+ "filesize": 981467136,
34
+ "download_url": "https://www.openmediavault.org/download.html",
35
+ "direct_download_url": "https://sourceforge.net/projects/openmediavault/files/iso/7.0-32/openmediavault_7.0-32-amd64.iso"
36
+ },
29
37
  {
30
38
  "filename": "openmediavault_6.5.0-amd64.iso",
31
39
  "version": "6.5.0",
@@ -68,6 +76,14 @@
68
76
  }
69
77
  ],
70
78
  "versions": [
79
+ {
80
+ "name": "7.0.32",
81
+ "images": {
82
+ "hda_disk_image": "empty30G.qcow2",
83
+ "hdb_disk_image": "empty30G.qcow2",
84
+ "cdrom_image": "openmediavault_7.0.32-amd64.iso"
85
+ }
86
+ },
71
87
  {
72
88
  "name": "6.5.0",
73
89
  "images": {
@@ -16,6 +16,6 @@
16
16
  "docker": {
17
17
  "adapters": 16,
18
18
  "image": "gns3/openvswitch:latest",
19
- "environment": "MANAGEMENT_INTERFACE=1"
19
+ "environment": "MANAGEMENT_INTERFACE=eth0"
20
20
  }
21
21
  }
@@ -25,6 +25,13 @@
25
25
  "kvm": "require"
26
26
  },
27
27
  "images": [
28
+ {
29
+ "filename": "OPNsense-24.1-nano-amd64.img",
30
+ "version": "24.1",
31
+ "md5sum": "ea8472df2c272419b7834cddaf68048d",
32
+ "filesize": 3221225472,
33
+ "download_url": "https://opnsense.c0urier.net/releases/24.1/"
34
+ },
28
35
  {
29
36
  "filename": "OPNsense-23.1-OpenSSL-nano-amd64.img",
30
37
  "version": "23.1",
@@ -62,6 +69,12 @@
62
69
  }
63
70
  ],
64
71
  "versions": [
72
+ {
73
+ "name": "24.1",
74
+ "images": {
75
+ "hda_disk_image": "OPNsense-24.1-nano-amd64.img"
76
+ }
77
+ },
65
78
  {
66
79
  "name": "23.1",
67
80
  "images": {
@@ -30,6 +30,13 @@
30
30
  "options": "-vga std -usbdevice tablet"
31
31
  },
32
32
  "images": [
33
+ {
34
+ "version": "1.3.0",
35
+ "filename": "ostinatostd-1.3.0-1.qcow2",
36
+ "filesize": 173735936,
37
+ "md5sum": "ff25fed989c43aeac84bf0d542ad43ba",
38
+ "download_url": "https://ostinato.org/pricing/gns3"
39
+ },
33
40
  {
34
41
  "filename": "ostinatostd-1.2.0-1.qcow2",
35
42
  "version": "1.2.0",
@@ -46,6 +53,12 @@
46
53
  }
47
54
  ],
48
55
  "versions": [
56
+ {
57
+ "name": "1.3.0",
58
+ "images": {
59
+ "hda_disk_image": "ostinatostd-1.3.0-1.qcow2"
60
+ }
61
+ },
49
62
  {
50
63
  "name": "1.2.0",
51
64
  "images": {
@@ -11,9 +11,9 @@
11
11
  "registry_version": 4,
12
12
  "status": "stable",
13
13
  "availability": "service-contract",
14
- "maintainer": "Neyder Achahuanco",
15
- "maintainer_email": "neyder@neyder.net",
16
- "usage": "You should download Red Hat Enterprise Linux KVM Guest Image from https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.2/x86_64/product-software attach/customize cloud-init.iso and start.\nusername: cloud-user\npassword: redhat",
14
+ "maintainer": "Da-Geek",
15
+ "maintainer_email": "dageek@dageeks-geeks.gg",
16
+ "usage": "You should download Red Hat Enterprise Linux KVM Guest Image from https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.3/x86_64/product-software attach/customize rhel-cloud-init.iso and start.\nusername: cloud-user\npassword: redhat",
17
17
  "qemu": {
18
18
  "adapter_type": "virtio-net-pci",
19
19
  "adapters": 1,
@@ -26,6 +26,13 @@
26
26
  "options": "-cpu host -nographic"
27
27
  },
28
28
  "images": [
29
+ {
30
+ "filename": "rhel-9.3-x86_64-kvm.qcow2",
31
+ "version": "9.3",
32
+ "md5sum": "409d8d15f5177db2617b0e3e02139b5c",
33
+ "filesize": 858193920,
34
+ "download_url": "https://access.redhat.com/downloads/content/479/ver=/rhel---9/9.3/x86_64/product-software"
35
+ },
29
36
  {
30
37
  "filename": "rhel-9.2-x86_64-kvm.qcow2",
31
38
  "version": "9.2",
@@ -112,6 +119,13 @@
112
119
  }
113
120
  ],
114
121
  "versions": [
122
+ {
123
+ "name": "9.3",
124
+ "images": {
125
+ "hda_disk_image": "rhel-9.3-x86_64-kvm.qcow2",
126
+ "cdrom_image": "rhel-cloud-init.iso"
127
+ }
128
+ },
115
129
  {
116
130
  "name": "9.2",
117
131
  "images": {
@@ -26,6 +26,14 @@
26
26
  "options": "-nographic -cpu host"
27
27
  },
28
28
  "images": [
29
+ {
30
+ "filename": "Rocky-9-GenericCloud-Base-9.3-20231113.0.x86_64.qcow2",
31
+ "version": "9.3",
32
+ "md5sum": "48cdeb033364af5909e15ee48d0e144d",
33
+ "filesize": 1083965440,
34
+ "download_url": "https://download.rockylinux.org/pub/rocky/9/images/x86_64/",
35
+ "direct_download_url": "https://download.rockylinux.org/pub/rocky/9/images/x86_64/Rocky-9-GenericCloud-Base-9.3-20231113.0.x86_64.qcow2"
36
+ },
29
37
  {
30
38
  "filename": "Rocky-9-GenericCloud-Base-9.2-20230513.0.x86_64.qcow2",
31
39
  "version": "9.2",
@@ -34,6 +42,14 @@
34
42
  "download_url": "https://download.rockylinux.org/pub/rocky/9/images/x86_64/",
35
43
  "direct_download_url": "https://download.rockylinux.org/pub/rocky/9/images/x86_64/Rocky-9-GenericCloud-Base-9.2-20230513.0.x86_64.qcow2"
36
44
  },
45
+ {
46
+ "filename": "Rocky-8-GenericCloud-Base-8.9-20231119.0.x86_64.qcow2",
47
+ "version": "8.9",
48
+ "md5sum": "50c44d8d9c4df43694372c13768f114c",
49
+ "filesize": 1971978240,
50
+ "download_url": "https://download.rockylinux.org/pub/rocky/8/images/x86_64/",
51
+ "direct_download_url": "https://download.rockylinux.org/pub/rocky/8/images/x86_64/Rocky-8-GenericCloud-Base-8.9-20231119.0.x86_64.qcow2"
52
+ },
37
53
  {
38
54
  "filename": "Rocky-8-GenericCloud-Base-8.8-20230518.0.x86_64.qcow2",
39
55
  "version": "8.8",
@@ -52,6 +68,13 @@
52
68
  }
53
69
  ],
54
70
  "versions": [
71
+ {
72
+ "name": "9.3",
73
+ "images": {
74
+ "hda_disk_image": "Rocky-9-GenericCloud-Base-9.3-20231113.0.x86_64.qcow2",
75
+ "cdrom_image": "rocky-cloud-init-data.iso"
76
+ }
77
+ },
55
78
  {
56
79
  "name": "9.2",
57
80
  "images": {
@@ -59,6 +82,13 @@
59
82
  "cdrom_image": "rocky-cloud-init-data.iso"
60
83
  }
61
84
  },
85
+ {
86
+ "name": "8.9",
87
+ "images": {
88
+ "hda_disk_image": "Rocky-8-GenericCloud-Base-8.9-20231119.0.x86_64.qcow2",
89
+ "cdrom_image": "rocky-cloud-init-data.iso"
90
+ }
91
+ },
62
92
  {
63
93
  "name": "8.8",
64
94
  "images": {
@@ -28,12 +28,12 @@
28
28
  },
29
29
  "images": [
30
30
  {
31
- "filename": "ubuntu-23.04-server-cloudimg-arm64.img",
31
+ "filename": "ubuntu-23.04-server-cloudimg-amd64.img",
32
32
  "version": "Ubuntu 23.04 (Lunar Lobster)",
33
- "md5sum": "35fa3b31b65717af6f0520a769aac8c0",
34
- "filesize": 786432000,
33
+ "md5sum": "369e3b1f68416c39245a8014172406dd",
34
+ "filesize": 756678656,
35
35
  "download_url": "https://cloud-images.ubuntu.com/releases/23.04/release/",
36
- "direct_download_url": "https://cloud-images.ubuntu.com/releases/23.04/release/ubuntu-23.04-server-cloudimg-arm64.img"
36
+ "direct_download_url": "https://cloud-images.ubuntu.com/releases/23.04/release/ubuntu-23.04-server-cloudimg-amd64.img"
37
37
  },
38
38
  {
39
39
  "filename": "ubuntu-22.04-server-cloudimg-amd64.img",
@@ -72,7 +72,7 @@
72
72
  {
73
73
  "name": "Ubuntu 23.04 (Lunar Lobster)",
74
74
  "images": {
75
- "hda_disk_image": "ubuntu-23.04-server-cloudimg-arm64.img",
75
+ "hda_disk_image": "ubuntu-23.04-server-cloudimg-amd64.img",
76
76
  "cdrom_image": "ubuntu-cloud-init-data.iso"
77
77
  }
78
78
  },
@@ -87,7 +87,7 @@ class Docker(BaseManager):
87
87
  f"{stdout.decode('utf-8', errors='ignore').strip()}")
88
88
  except OSError as e:
89
89
  raise DockerError(f"Could not install busybox: {e}")
90
- raise DockerError("No busybox executable could be found")
90
+ raise DockerError("No busybox executable could be found, please install busybox (apt install busybox-static on Debian/Ubuntu) and make sure it is in your PATH")
91
91
 
92
92
  @staticmethod
93
93
  def resources_path():
@@ -193,8 +193,8 @@ class Docker(BaseManager):
193
193
  if timeout is None:
194
194
  timeout = 60 * 60 * 24 * 31 # One month timeout
195
195
 
196
- if path == "version":
197
- url = "http://docker/v1.12/" + path # API of docker v1.0
196
+ if path == 'version':
197
+ url = "http://docker/v1.24/" + path
198
198
  else:
199
199
  url = "http://docker/v" + DOCKER_MINIMUM_API_VERSION + "/" + path
200
200
  try:
@@ -506,6 +506,10 @@ class DockerVM(BaseNode):
506
506
  result = await self.manager.query("POST", "containers/create", data=params)
507
507
  self._cid = result["Id"]
508
508
  log.info(f"Docker container '{self._name}' [{self._id}] created")
509
+ if self._cpus > 0:
510
+ log.info(f"CPU limit set to {self._cpus} CPUs")
511
+ if self._memory > 0:
512
+ log.info(f"Memory limit set to {self._memory} MB")
509
513
  return True
510
514
 
511
515
  def _format_env(self, variables, env):
@@ -571,6 +575,9 @@ class DockerVM(BaseNode):
571
575
  await self._start_vnc_process(restart=True)
572
576
  monitor_process(self._vnc_process, self._vnc_callback)
573
577
 
578
+ if self._console_websocket:
579
+ await self._console_websocket.close()
580
+ self._console_websocket = None
574
581
  await self._clean_servers()
575
582
 
576
583
  await self.manager.query("POST", f"containers/{self._cid}/start")
@@ -833,9 +840,7 @@ class DockerVM(BaseNode):
833
840
  f"containers/{self._cid}/attach/ws?stream=1&stdin=1&stdout=1&stderr=1"
834
841
  )
835
842
  input_stream.ws = self._console_websocket
836
-
837
843
  output_stream.feed_data(self.name.encode() + b" console is now available... Press RETURN to get started.\r\n")
838
-
839
844
  asyncio.ensure_future(self._read_console_output(self._console_websocket, output_stream))
840
845
 
841
846
  async def _read_console_output(self, ws, out):
@@ -858,13 +863,14 @@ class DockerVM(BaseNode):
858
863
  out.feed_eof()
859
864
  await ws.close()
860
865
  break
861
- await self.stop()
862
866
 
863
867
  async def reset_console(self):
864
868
  """
865
869
  Reset the console.
866
870
  """
867
871
 
872
+ if self._console_websocket:
873
+ await self._console_websocket.close()
868
874
  await self._clean_servers()
869
875
  await self._start_console()
870
876
 
@@ -908,6 +914,9 @@ class DockerVM(BaseNode):
908
914
  """
909
915
 
910
916
  try:
917
+ if self._console_websocket:
918
+ await self._console_websocket.close()
919
+ self._console_websocket = None
911
920
  await self._clean_servers()
912
921
  await self._stop_ubridge()
913
922