1
0
mirror of https://github.com/GNS3/gns3-server synced 2024-12-01 04:38:12 +00:00
Commit Graph

247 Commits

Author SHA1 Message Date
grossmj
4646ce684f Handle -no-kvm param deprecated in Qemu >= v5.2 2021-07-27 16:34:51 +09:30
grossmj
0ecea8ffbb Change how to generate random MAC addresses 2021-07-25 16:03:54 +09:30
Brian Candler
1ee3e14bd3 Support cloning of encrypted qcow2 base image files
Fixes #1921
2021-07-09 10:53:02 +01:00
grossmj
cefab8d362 Rename __json__() to asdict() 2021-04-17 23:34:28 +09:30
grossmj
9c850e0f2b Move schemas between compute and controller subpackages 2021-04-15 18:12:08 +09:30
grossmj
c021e21309 Use black with -l 120 param. 2021-04-13 18:46:50 +09:30
grossmj
f928738bd5 Use pyupgrade with --py36-plus param. 2021-04-13 18:37:58 +09:30
grossmj
30ebae207f Use Pydantic to validate the server config file. 2021-04-12 17:02:23 +09:30
grossmj
c17a86e814 Add missing async 2021-02-18 18:14:35 +10:30
grossmj
1add223891 Merge branch '2.2' into 3.0
# Conflicts:
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/handlers/api/controller/server_handler.py
#	gns3server/schemas/project.py
#	gns3server/schemas/qemu.py
#	gns3server/schemas/qemu_template.py
#	gns3server/version.py
#	tests/handlers/api/compute/test_qemu.py
2021-02-16 21:11:40 +10:30
grossmj
1043be02a6 Merge branch 'master' into 2.2
# Conflicts:
#	gns3server/compute/qemu/qemu_vm.py
2021-02-16 19:02:12 +10:30
grossmj
9de61cd671 Fix warning: 'ide-drive' is deprecated when using recent version of Qemu. Fixes https://github.com/GNS3/gns3-gui/issues/3101 2021-02-14 14:39:02 +10:30
Brent Baccala
235a127111 Allow cloned QEMU disk images to be resized before the node starts,
by cloning the disk image in response to a resize request instead
of waiting until the node starts.
2020-12-30 15:36:38 -05:00
Bernhard Ehlers
e45bc5aec1 Fix mcopy error messages 2020-11-05 15:00:44 +01:00
grossmj
eeaf10b418 Put all schemas in the same module. 2020-10-31 16:02:21 +10:30
Bernhard Ehlers
de2b9caeeb Use HDD disk image as startup QEMU config disk 2020-10-19 03:19:22 +02:00
grossmj
0746949207 Merge branch '2.2' into 3.0
# Conflicts:
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/handlers/api/compute/qemu_handler.py
#	gns3server/handlers/api/controller/symbol_handler.py
#	gns3server/version.py
#	tests/compute/qemu/test_qemu_vm.py
#	tests/endpoints/compute/test_qemu_nodes.py
#	tests/endpoints/controller/test_nodes.py
2020-10-12 18:04:49 +10:30
grossmj
362701f5aa Allow commas in image paths and VM name for Qemu VMs. Fixes https://github.com/GNS3/gns3-gui/issues/3065 2020-10-11 14:02:22 +10:30
grossmj
91244456f5 Handle comma in disk path for Qemu VMs. Fixes https://github.com/GNS3/gns3-gui/issues/3065 2020-10-08 22:09:03 +10:30
grossmj
c248764efb Fixes update() missing 2 required positional arguments: 'name' and 'value'. Fixes #1821 #1825 2020-10-06 17:08:51 +10:30
grossmj
399f1c082e Add '-smp sockets=1' by default for Qemu VMs. Ref https://github.com/GNS3/gns3-gui/issues/3047 2020-09-13 23:16:52 +09:30
grossmj
992cd7fc6c Implement full restart if user reload a Qemu VM which has been updated. Fixes https://github.com/GNS3/gns3-gui/issues/3038 2020-09-12 23:07:39 +09:30
grossmj
2bf625e000 Fix issue when resuming Qemu VM. Fixes https://github.com/GNS3/gns3-gui/issues/3027 2020-09-04 18:02:21 +09:30
grossmj
4843084158 Prioritize the config disk over HD-D for Qemu VMs.
Fixes https://github.com/GNS3/gns3-gui/issues/3036

(cherry picked from commit c12b675691)
2020-08-18 10:54:11 +09:30
grossmj
c12b675691 Prioritize the config disk over HD-D for Qemu VMs.
Fixes https://github.com/GNS3/gns3-gui/issues/3036
2020-08-18 10:54:11 +09:30
Jeremy Grossmann
fa26555d00
Merge pull request #1801 from GNS3/qemu-config-disk
QEMU config disk - enable QEMU config import/export
2020-08-15 16:35:20 +08:00
grossmj
f2ddef855f Fix tests.
(cherry picked from commit 620d93634e)
2020-08-15 16:35:31 +09:30
grossmj
620d93634e Fix tests. 2020-08-15 16:35:31 +09:30
grossmj
ec02150fd2 Set default disk interface type to "none".
Fail-safe: use "ide" if an image is set but no interface type is configured.
Use the HDA disk interface type if none has been configured for HDD.

(cherry picked from commit 464fd804ce)
2020-08-15 16:14:16 +09:30
grossmj
464fd804ce Set default disk interface type to "none".
Fail-safe: use "ide" if an image is set but no interface type is configured.
Use the HDA disk interface type if none has been configured for HDD.
2020-08-15 16:14:16 +09:30
grossmj
a56b816c1a Add explicit option to automatically create or not the config disk. Off by default.
(cherry picked from commit 56aba96a5f)
2020-08-14 17:57:24 +09:30
grossmj
56aba96a5f Add explicit option to automatically create or not the config disk. Off by default. 2020-08-14 17:57:24 +09:30
grossmj
c684c554bf Fix tests
(cherry picked from commit 2ba6eac113)
2020-08-13 17:10:31 +09:30
grossmj
2ba6eac113 Fix tests 2020-08-13 17:10:31 +09:30
grossmj
7043d48f1a Auxiliary console support for Qemu. Ref #2873
Improvements for auxiliary console support for Docker and Dynamips.
2020-07-29 16:23:51 +09:30
grossmj
01b2c72767 Add maxcpus property for Qemu VMs. Ref #1674 2020-07-24 15:15:41 +09:30
Bernhard Ehlers
068c31038f QEMU config disk - improve error handling 2020-07-19 17:56:49 +09:30
Bernhard Ehlers
2bbee15b18 QEMU config disk - notification of import/export errors 2020-07-19 17:56:49 +09:30
Bernhard Ehlers
50c49cfedb QEMU config disk - notification of import/export errors 2020-07-19 17:56:49 +09:30
Bernhard Ehlers
b672900406 QEMU config disk - use disk interface of HD-D, fallback is HD-A 2020-07-19 17:56:49 +09:30
Bernhard Ehlers
2e0fba925b QEMU config disk - add missing config disk to image directory 2020-07-19 17:56:49 +09:30
Bernhard Ehlers
450c6cddc7 QEMU config disk - get rid of mtoolsrc 2020-07-19 17:56:48 +09:30
Bernhard Ehlers
5c44268476 QEMU config disk - preserve file timestamp on zip unpack 2020-07-19 17:56:48 +09:30
Bernhard Ehlers
b69965791d QEMU config disk - initial implementation. Ref #2958 2020-07-19 17:56:48 +09:30
Bernhard Ehlers
9acb2ceda1 QEMU config disk - improve error handling
(cherry picked from commit 068c31038f)
2020-07-03 11:31:17 +02:00
Bernhard Ehlers
053828f3e8 QEMU config disk - init config disk in base class
(cherry picked from commit 2bbee15b18)
2020-06-28 16:35:39 +02:00
Bernhard Ehlers
f747b3a880 QEMU config disk - notification of import/export errors
(cherry picked from commit 50c49cfedb)
2020-06-28 09:21:57 +02:00
Bernhard Ehlers
750590d0db QEMU config disk - use disk interface of HD-D, fallback is HD-A
(cherry picked from commit b672900406)
2020-06-17 17:06:55 +02:00
grossmj
e1dab0dff4 Show error message if IPv6 is not enabled when using SPICE console. Fixes #1772 2020-06-09 15:06:41 +09:30
grossmj
58a19af9ac Support to activate/deactive network connection state replication in Qemu. 2020-06-02 18:45:22 +09:30
Bernhard Ehlers
347035a99b QEMU config disk - add missing config disk to image directory
(cherry picked from commit 2e0fba925b)
2020-04-16 11:07:56 +02:00
Bernhard Ehlers
0db0f6256b QEMU config disk - get rid of mtoolsrc
(cherry picked from commit 450c6cddc7)
2020-04-15 20:50:59 +02:00
Bernhard Ehlers
99d9728360 QEMU config disk - preserve file timestamp on zip unpack
(cherry picked from commit 5c44268476)
2020-04-07 14:11:00 +02:00
Bernhard Ehlers
6a1eef0627 QEMU config disk - initial implementation. Ref #2958
(cherry picked from commit b69965791d)
2020-04-06 12:56:00 +02:00
grossmj
6eb62ad179 Remove 'format=raw' from the Qemu options of the disk interfaces. Ref #1699 2020-02-24 20:06:45 +08:00
grossmj
92ac250bc7 Add nvme disk interface and fix scsi disk interface for Qemu VMs. 2020-01-25 16:22:34 +08:00
grossmj
667d50aa4a Disallow using "legacy networking mode" with Qemu >= 2.9.0 2020-01-24 19:06:24 +08:00
grossmj
ff9bd59ef8 Fix how PCI bridges are created for Qemu VMs with greater than 32 interfaces. 2019-11-03 17:56:52 +08:00
grossmj
df9b40c1dc Fix QEMU link detection flaky on last port. Fixes #1666 2019-10-15 23:42:42 +08:00
grossmj
f5c02368e6 Fix tests. 2019-10-09 17:47:22 +08:00
grossmj
7cfd0d4d1d Use compatible shlex_quote to handle case where Windows needs double quotes around file names, not single quotes. Ref https://github.com/GNS3/gns3-gui/issues/2866 2019-10-09 17:02:30 +08:00
grossmj
87390274cc Add debug message for what directory is checked for Qemu binaries. Ref #1655 2019-09-30 15:54:57 +08:00
grossmj
2cfac30810 Fix single quote is not closed. Fixes #1654 2019-09-17 18:54:18 +07:00
Jeremy Grossmann
2e41328ae9
Merge branch 'master' into fix-sata 2019-09-05 17:36:53 +07:00
David Kreitschmann
8105b68d52 Don't specify the PCI bus for AHCI device
pci.X is not always defined, let qemu handle this.

I think PCI buses only exist if PCI network adapters are defined, this
is not the case with virtio.
2019-09-03 16:03:27 +02:00
David Kreitschmann
906f29d5fc Add id value to all qemu drives
A fixed id doesn't hurt and now we can select Disk Interface=none in
GNS3 and e.g. attach the volume as a USB thumb drive with -device
usb-storage,drive=drive0,...
2019-09-03 15:54:51 +02:00
grossmj
7a463676cd Eject cdrom first before changing an image. Use 'force' when ejecting. 2019-06-15 15:20:21 +02:00
grossmj
b7af2e4d5c Refresh mounted media after ISO switch. 2019-06-12 14:23:03 +02:00
grossmj
61c87e57a4 Use console port to allocate guest CID (console ID) for Qemu VMs. Fixes #2804 2019-06-05 11:25:35 +02:00
grossmj
9cce4de190 %guest-cid% variable implementation for Qemu VMs. Fixes https://github.com/GNS3/gns3-gui/issues/2804 2019-06-04 18:00:44 +02:00
grossmj
3b87a19979 Do not start QEMU console if QEMU process is not started. Fixes https://github.com/GNS3/gns3-gui/issues/2712 2019-05-25 15:31:35 +07:00
grossmj
e8b8554c1a Fix Qemu VM state support after closing a project and check for JSON data returned by qemu-img. Fixes #1591 2019-05-19 17:59:00 +07:00
grossmj
cf0cc8bb87 Ensure Qemu monitor commands are executed. Ref #1582. 2019-05-18 19:31:41 +07:00
grossmj
470cea327f Fix console variable replacement issue. 2019-05-18 14:31:21 +07:00
grossmj
e763980dbe Add %console-port% variable for additional Qemu options. Fixes https://github.com/GNS3/gns3-gui/issues/2786 2019-05-18 13:51:00 +07:00
grossmj
7543d7587c Release v2.2.0a5 2019-04-15 17:05:20 +07:00
grossmj
a17119187b Fix remote packet capture for Dynamips. 2019-04-01 20:58:18 +07:00
grossmj
4cc5dbc228 Fix remote packet capture and make sure packet capture is stopped when deleting an NIO. Fixes https://github.com/GNS3/gns3-gui/issues/2753 2019-04-01 19:47:31 +07:00
grossmj
4c83fc1243 Update paths for binaries moved to the MacOS directory in GNS3.app 2019-03-04 16:07:04 +07:00
Jeremy Grossmann
3f7c4c0474
Update qemu_vm.py 2019-03-01 23:40:32 +07:00
grossmj
80eb06f67c Merge 2.1 into 2.2 2019-03-01 17:23:49 +07:00
grossmj
879e32eb9a Bump ACPI Shutdown Timeout to 120 seconds. Ref #1536 2019-02-26 23:19:33 +07:00
grossmj
5754747a90 Merging 2.1 into 2.2 2019-02-22 18:04:49 +07:00
grossmj
0b07299472 Fixes double display output in GRUB in QEMU v3.1. Fixes #1516. 2019-02-17 19:03:36 +08:00
grossmj
456ef1348b Fix DeprecationWarning: invalid escape sequence. Fixes https://github.com/GNS3/gns3-gui/issues/2670 2019-01-17 18:01:58 +07:00
grossmj
c6afea49da Try to delete saved VM state only if a snapshot has been saved. 2019-01-12 17:04:37 +07:00
grossmj
3497deaa31 Allow virtual machines to use files in project directory as disk images. 2018-11-19 15:53:43 +07:00
grossmj
2764828f38 Refactor how clients access PCAP capture files. Fixes https://github.com/GNS3/gns3-gui/issues/2438.
* The PCAP file is directly accessed if controller and client are on the same host.
* The PCAP file is streamed from the compute server to the client with the controller as a proxy when the controller is remote for the client.
2018-10-27 14:47:17 +07:00
grossmj
76af98404a Drop Python 3.4 and switch to async / await syntax for asyncio. Fixes #1425 2018-10-15 17:05:49 +07:00
grossmj
9de13c570c Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/compute/docker/docker_vm.py
#	gns3server/compute/dynamips/nodes/ethernet_switch.py
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
#	gns3server/controller/__init__.py
#	gns3server/version.py
#	gns3server/web/web_server.py
2018-10-04 15:44:13 +02:00
grossmj
17d657c919 Fix small errors like unhandled exceptions etc. 2018-09-11 15:06:01 +02:00
grossmj
4021a13651 Catch exceptions in various locations to fix small issues reported by Sentry. 2018-09-06 09:49:12 +02:00
grossmj
1905a99ce7 Fix saved VM state was not deleted correctly. 2018-06-09 17:28:26 +07:00
grossmj
2ea0aa5ded Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
2018-04-18 17:08:42 +08:00
grossmj
9ecb058343 Fix tests. 2018-04-18 16:13:59 +08:00
grossmj
fff2e128eb Set the first byte to 0C when generating a random MAC address for a Qemu VM. Ref #1267. 2018-04-18 16:06:51 +08:00
grossmj
dd9c18b9f8 Use SO_REUSEADDR before calling bind() where missing. Fixes #1289. 2018-04-16 16:36:36 +08:00
grossmj
22a71b0e8c Fix problem with VM saved stated. 2018-04-06 13:19:54 +07:00
grossmj
757c103c03 Possibility to customize port names and adapter types for Qemu, VirtualBox, VMware and Docker. Fixes #2361.
MAC addresses can customized for Qemu as well.
2018-04-02 22:27:12 +07:00
grossmj
ea0009db6c Save state feature for VirtualBox and VMware. New "On close" setting to
select the action to execute when closing/stopping a Qemu/VirtualBox/VMware VM.
2018-03-30 21:18:44 +07:00