1
0
mirror of https://github.com/GNS3/gns3-server synced 2024-11-28 19:28:07 +00:00
Commit Graph

245 Commits

Author SHA1 Message Date
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
grossmj
3d1ee4da3f Support for suspend to disk / resume (Qemu). 2018-03-30 19:28:22 +07:00
grossmj
ff7911bd99 Allow to resize a Qemu VM disk (extend only). 2018-03-26 18:05:49 +07:00
grossmj
caa2bda71b Spice with agent support for Qemu VMs. 2018-03-25 14:36:14 +07:00
grossmj
d419d3fa39 Check if the HAXM service is running when starting a Qemu VM with hardware acceleration. Ref #1242. 2018-03-24 22:15:20 +07:00
grossmj
e52775fa3a Support for console type "none". 2018-03-24 18:11:21 +07:00
grossmj
b8353bc0d5 Support for none console type (Qemu & Docker only) 2018-03-23 15:44:16 +07:00
grossmj
a40fdb3641 Fix bug and add optimizations when connecting and sending commands to QEMU monitor after starting a VM. Fixes #2336. 2018-03-23 00:07:32 +07:00
grossmj
135bbe8825 Check if HAXM support is installed on macOS. Ref #1242. 2018-03-22 22:37:09 +07:00
grossmj
9a9ac6d9f7 Fix some issues with hardware acceleration support for Qemu. 2018-03-22 15:45:41 +07:00
grossmj
17bfed52f2 Fix Qemu VM tests. 2018-03-22 14:05:31 +07:00
grossmj
44f2acffa5 Support Qemu with HAXM acceleration. Ref #1242. 2018-03-21 16:41:25 +07:00
grossmj
279b4d7b20 Fix link filters/suspend tests. 2018-03-19 18:25:56 +07:00
grossmj
8b91894fa4 Improve suspend a link for Qemu and VirtualBox VMs.
A suspended link will be unplugged allowing the VMs to be notified
of the change.
2018-03-19 16:26:12 +07:00
grossmj
cde30f8f53 Fix warning message. 2018-03-19 14:23:46 +07:00
grossmj
c7875f93a3 Qemu VM support to detect when a link is plugged/unplugged. 2018-03-19 14:22:10 +07:00
grossmj
90ce6093d8 Some spring cleaning. 2018-03-15 14:17:39 +07:00
grossmj
658aa4bae9 Merge 2.1 into 2.2 branch 2018-03-12 13:38:50 +07:00
grossmj
1045364adc Set first byte to 52 when generating a random MAC address for a Qemu VM. Ref #1267. 2018-01-30 18:26:38 +07:00
ziajka
bb26e8acdd Calculate MD5 on thread and before json response, Ref. gui#2239 2018-01-29 14:20:48 +01:00
ziajka
6868e20a70 Compute md5sum on thread and don't block main server, Ref. gui#2239 2018-01-26 12:53:48 +01:00
grossmj
e8353e68bb Merge remote-tracking branch 'origin/2.1' into 2.1 2017-12-21 09:38:28 +01:00
grossmj
23c63bbd4d Protect variable replacement for Qemu options. Escape double quotes. 2017-12-21 09:38:18 +01:00
ziajka
3efe753eee Add proper exception when cannot find tunnel on QEMU, Fixes: #1241 2017-12-21 08:55:49 +01:00
grossmj
79bca29b93 Protect variable replacement for Qemu options. 2017-12-20 20:46:16 +01:00
grossmj
3a1ba8f42d Fix issue with Qemu + SPICE when IPv4 is not enabled. 2017-12-07 12:02:41 -06:00
grossmj
3e2e8e61f7 New option: require KVM. If false, Qemu VMs will not be prevented to run without KVM. 2017-11-19 12:39:37 +07:00
grossmj
068077c594 Remove forgotten debug. 2017-11-18 17:36:39 +07:00
grossmj
e08aebf1f0 Implement variable replacement for Qemu VM options. 2017-11-18 17:36:11 +07:00
grossmj
cfbcc1194d Avoid duplicate "-nographic" option. 2017-11-18 16:22:29 +07:00
grossmj
035a078b5e Show qemu-img stdout in case of an error. 2017-11-17 18:13:34 +07:00
grossmj
967798a7de Check and fix corrupt Qemu disk images. Fixes #2301. 2017-11-16 14:54:37 +07:00
Dušan Dragić
44bb912139 QEMU: fix logging of base mac address when creating a new node 2017-10-14 13:55:16 +02:00
Jeremy Grossmann
897f7656da Merge pull request #1185 from GNS3/fix-delete-project
Don't create directory structure during json dump. Fixes #2270
2017-10-02 13:49:46 -07:00
ziajka
3d85bba9d4 Don't create directory structure during json dump. Fixes #2270 2017-10-02 10:41:57 +02:00
grossmj
7269285b0f Add more information when qemu-img fails. 2017-10-02 00:47:16 +08:00
Julien Duponchelle
03f8c747cc
Qemu support for packet filtering
Fix #1112
2017-07-12 14:50:33 +02:00
Julien Duponchelle
66d5d34877
Fix qemu hotlink 2017-07-12 10:07:21 +02:00
Julien Duponchelle
d112da400e
Remove use_ubridge flag
Ref #1115
2017-07-11 13:58:59 +02:00
Julien Duponchelle
557924e91a
Use ubridge for dynamips routers
Ref #1109
2017-07-10 20:38:28 +02:00
ziajka
7447b3190d spice - added qxl vga support 2017-06-22 12:56:28 +02:00
ziajka
bc5ec98cd5
Spice support
* QEMU VNC options tests
* QEMU - SPICE support at build options and schemas
* SPICE console_type for nodes
2017-06-21 15:14:41 +02:00
Julien Duponchelle
a8e8eac0b4
Merge remote-tracking branch 'origin/master' into 2.1 2017-06-21 15:13:04 +02:00
Julien Duponchelle
5a1d313fca Merge pull request #1080 from GNS3/spice-feature
Spice feature
2017-06-21 10:37:04 +02:00
Julien Duponchelle
36dc264a6c Revert "Spice feature" 2017-06-21 10:32:28 +02:00
Julien Duponchelle
bb8097a052
Merge remote-tracking branch 'origin/master' into 2.1 2017-06-19 10:44:52 +02:00
ziajka
88c2353e2e QEMU - SPICE support at build options and schemas 2017-06-16 10:17:26 +02:00
ziajka
eb6068c3d3 Fix Qemu disk creation with unicode characters not supported by local filesystem #1058 (#1063) 2017-06-07 12:35:41 +02:00
grossmj
f338158654 Use 127.0.0.1 for local UDP tunnels to uBridge for Qemu. Ref #664. 2017-05-16 20:51:14 +02:00
Julien Duponchelle
cd17ef6b12
Merge branch '2.0' into 2.1 2017-05-15 15:46:50 +02:00
Julien Duponchelle
078a6d8d34
Fix a race condition when editing a qemu vm and connecting it
Fix #997
2017-05-03 16:01:51 +02:00
Julien Duponchelle
273a711459
Merge branch '2.0' into 2.1 2017-04-26 17:22:14 +02:00
grossmj
5edb631b00 Fixes Qemu sata option. Ref #875. 2017-04-07 17:25:14 +08:00
Julien Duponchelle
6017ebbd97
Merge branch '2.0' into 2.1 2017-03-07 11:16:05 +01:00
Julien Duponchelle
5e7f97b175
Fix when qemu exit by itself clean other processes
Fix https://github.com/GNS3/gns3-gui/issues/1898
2017-03-03 18:40:26 +01:00
Jeremy Grossmann
635e163954 Update qemu_vm.py 2017-02-17 17:37:06 +08:00
Julien Duponchelle
99f817392d
Raise an error if you use Qemu < 2.4 and try to use large number of adapters 2017-02-17 09:55:50 +01:00
Julien Duponchelle
b0567772f7
Allow up to 275 adapters for qemu
See #889 for more details
2017-02-07 17:04:29 +01:00
Julien Duponchelle
82da073dd7
If qemu status change internally we mirror it 2017-01-17 16:03:12 +01:00
Julien Duponchelle
9480065b28 Sata disk interface support for Qemu VMs. (#862) 2017-01-10 14:11:40 +01:00
Julien Duponchelle
d0f65aebff
Fix Can't delete link between docker VM after they were in use
Fix #818
2016-12-14 12:01:34 +01:00
Julien Duponchelle
508edf5cc5
Fix a rare crash when stopping qemu
Fix #821
2016-12-12 09:16:29 +01:00
Julien Duponchelle
5ba5c62670
Add support for bios images
Ref https://github.com/GNS3/gns3-gui/issues/1700
2016-12-08 16:18:30 +01:00
Julien Duponchelle
49315adf79
Do not recurse scan for images in standard image directory
Fix https://github.com/GNS3/gns3-gui/issues/1680
2016-11-28 19:49:50 +01:00
Julien Duponchelle
2b15da3d19
Catch error when qemuy can't connect to his console
Fix #803
2016-11-28 13:18:04 +01:00
Julien Duponchelle
9b6b989d1b
Qemu UDP listen on all ips 2016-11-25 15:21:35 +01:00
Julien Duponchelle
928d9f13f4
Do not log warning at qemu exit on windows if it's normal
Fix #777
2016-11-16 13:06:43 +01:00
Julien Duponchelle
bddf9ec2ac
Qemu telnet support multiple client connected
Fix #770
2016-11-09 09:47:48 +01:00
Julien Duponchelle
ae1e027031
Raise error if using a non linked clone VM twice
Fix https://github.com/GNS3/gns3-gui/issues/1593
2016-10-24 21:39:35 +02:00
Jeremy Grossmann
46e1fbda60 Merge pull request #712 from GNS3/set_qemu_uuid
Set Qemu uuid for csr1000v
2016-10-04 20:55:11 -06:00
Julien Duponchelle
7baf584367
Merge branch 'master' into 2.0 2016-10-04 14:53:50 +02:00
Julien Duponchelle
f3d255756b
Set Qemu uuid for csr1000v
Fix #711
2016-10-03 15:54:20 +02:00
Julien Duponchelle
fd3ac65eb5
Qemu fixes for windows 2016-09-27 18:01:50 +02:00
Julien Duponchelle
f3596767c1
Merge branch 'master' into 2.0 2016-09-26 15:17:05 +02:00
Julien Duponchelle
4bd9556767
Merge branch 'master' into 2.0 2016-09-21 19:27:44 +02:00
Julien Duponchelle
d2b0321419
Improve ASA 8 warning 2016-09-21 12:37:25 +02:00
Julien Duponchelle
2f0e2260ab
Move the generation of the list of ports to the server
Ref #676
2016-09-14 15:21:37 +02:00
Jeremy Grossmann
b8909c54cf Merge pull request #649 from GNS3/bind_qemu_all_host
Bind qemu UDP tunnels on all hosts
2016-09-12 11:04:08 -06:00
Julien Duponchelle
0573c3f7d5
Port name format for 2.0
Ref #667, https://github.com/GNS3/gns3-gui/issues/1400
2016-09-06 11:30:08 +02:00
Julien Duponchelle
72fe5d3489
Merge branch 'master' into 2.0 2016-08-29 14:08:23 +02:00
Julien Duponchelle
7fd520c08b
Bind qemu UDP tunnels on all hosts
Qemu is the only platform where we limit the binding of UDP
tunnel to a specific host. It's probably much secure and cleaner
but we have scenario where we need one port bind to an IP and
another bind to a different IP (Link between qemu and and a VM on the
GNS3 VM)

This allow the use of 134fed8fc5
2016-08-26 10:40:11 +02:00
grossmj
d79fb231d3 Use uBridge for VirtualBox connections plus some cleaning. Ref #267. 2016-06-24 18:35:39 -06:00
grossmj
04022677bd Use uBridge for Qemu connections. Ref #267.
Handle packet captures for VPCS & Qemu nodes. Fixes #548.
2016-06-23 16:56:06 -06:00
Julien Duponchelle
08e482004f
Auto upload missing images 2016-06-07 19:38:01 +02:00
Julien Duponchelle
d8bdd16e13
Raise an error if image is missing on compute 2016-06-07 15:34:04 +02:00
Julien Duponchelle
cb7dbfb256
Merge branch '1.5' into 2.0 2016-06-02 13:47:40 +02:00
grossmj
cd07a99118 Some cleaning + move "/version" endpoint to "/server/version". 2016-06-01 17:50:31 -06:00
grossmj
f2eb2a4bdc Remove NAT NIO. 2016-05-31 19:06:48 -06:00
grossmj
c1aad550fa Merge branch '1.5' into 2.0
Conflicts:
	gns3server/version.py
2016-05-29 19:52:15 -06:00
Julien Duponchelle
d5895c3a47
Merge branch '1.5' into 2.0 2016-05-18 11:25:41 +02:00
grossmj
5b604da33a Make sure nodes send the right notification when started, stopped or suspended. 2016-05-13 20:41:58 -06:00
grossmj
6cea6c9162 Some more (spring) cleaning. 2016-05-13 18:48:10 -06:00
Julien Duponchelle
5280644327
Return command_line and node_directory via the controller 2016-05-12 10:39:50 +02:00
grossmj
5a76f81271 Refactoring to use a common node class for all VMs and other (future) objects. 2016-05-11 11:35:36 -06:00
Julien Duponchelle
9dca7dfe4a
Merge branch '1.5' into 2.0 2016-05-10 17:51:40 +02:00
Julien Duponchelle
98b32cd9e2
Merge branch '1.5' into 2.0 2016-05-02 16:59:56 +02:00
Julien Duponchelle
7390d833ba
Merge branch 'master' into 2.0 2016-04-26 11:50:16 +02:00
Julien Duponchelle
58d4a529d4
Rename hypervisor to compute
Fix #487
2016-04-15 17:59:59 +02:00