Commit Graph

380 Commits

Author SHA1 Message Date
Julien Duponchelle
ce0d715895
Fix Deleted node are still return by the API
Fix #529
2016-05-17 13:11:43 +02:00
Julien Duponchelle
1eb77a0b3f
Fix docker support on 2.0
Fix #528
2016-05-16 18:32:29 +02:00
grossmj
7a523990a6 Base for generic switch nodes. Ref #492. 2016-05-15 11:23:14 -06:00
grossmj
f1bc2f22c3 Start, stop, suspend and reload endpoints for all nodes belonging to a project. Fixes #1212. 2016-05-13 19:26:50 -06:00
grossmj
f81d35cc29 Handlers: cleanup and fixes. 2016-05-13 18:00:07 -06:00
Julien Duponchelle
d43e78a1d7
Support all characters for compute ID 2016-05-12 16:41:05 +02:00
Julien Duponchelle
b46a0ff4ae
Endpoint for getting information about a compute node 2016-05-12 16:35:14 +02:00
grossmj
801b94a964 Fixes VirtualBox VMs list images. 2016-05-11 16:45:17 -06:00
grossmj
ef7b4ef020 Fixes tests and some PEP8. 2016-05-11 15:19:00 -06: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
grossmj
76cc1d2750 Fixes call to export project. 2016-05-07 10:39:32 -06:00
Julien Duponchelle
5fd385159c
HTTP support for docker
Fix #509
2016-05-03 16:49:33 +02:00
Julien Duponchelle
98b32cd9e2
Merge branch '1.5' into 2.0 2016-05-02 16:59:56 +02:00
Julien Duponchelle
936faaba5a
gns3z => gns3project 2016-05-02 10:33:04 +02:00
Julien Duponchelle
92d1594afd
Return link object when start capturing 2016-04-26 18:13:15 +02:00
Julien Duponchelle
264254e657
Captures written in the captures directory on the controller 2016-04-26 17:10:33 +02:00
Julien Duponchelle
1d08d4a5fa
Merge branch 'master' into 1.5 2016-04-26 11:49:24 +02:00
Julien Duponchelle
6d6e8196d2
Allow only .pcap to be downloaded from remote stream API
Fix #500
2016-04-26 09:52:18 +02:00
Julien Duponchelle
1ce576c020
Stream pcap from compute to controller to client 2016-04-22 16:22:03 +02:00
Julien Duponchelle
549a6280c0
Data link type is on the capture not on the link 2016-04-21 13:49:29 +02:00
Julien Duponchelle
04a1b2df3b
Method for start / stop capture on a link
Ref https://github.com/GNS3/gns3-gui/issues/1117
2016-04-21 12:14:09 +02:00
Julien Duponchelle
f6593663b5
APi for listing VM in controller 2016-04-20 14:38:14 +02:00
Julien Duponchelle
c8c61f2ae8
Add endpoint to list the compute nodes 2016-04-19 16:53:41 +02:00
Julien Duponchelle
6463007ef1
Remove debug 2016-04-19 15:17:02 +02:00
Julien Duponchelle
6b9e46950c
Update VPCS and delete VPCS via controller 2016-04-18 18:56:03 +02:00
Julien Duponchelle
d7ed37ce02
Update and delete VM on controller 2016-04-18 17:36:38 +02:00
Julien Duponchelle
6c11ad5fa6
Reload VM 2016-04-18 16:57:02 +02:00
Julien Duponchelle
58d4a529d4
Rename hypervisor to compute
Fix #487
2016-04-15 17:59:59 +02:00
Julien Duponchelle
2055cdea5e
/start /stop and /suspend API for VM via container 2016-04-12 18:02:36 +02:00
Julien Duponchelle
6b61811f9d
Merge branch '1.5' into 2.0 2016-04-12 16:14:37 +02:00
Julien Duponchelle
b7a859fa30
Import / Export with images
Ref https://github.com/GNS3/gns3-gui/issues/1173
2016-04-12 10:11:45 +02:00
Julien Duponchelle
9e8fcab65c
Merge branch '1.5' into 2.0 2016-04-08 17:40:27 +02:00
Julien Duponchelle
977ccabf98
Server support for VNC console resolution
Ref https://github.com/GNS3/gns3-gui/issues/1165
2016-04-07 13:29:11 +02:00
Jeremy Grossmann
6bc54b17c7 Merge pull request #481 from GNS3/import_linux
Flatten the project at export and support import for Linux
2016-04-06 11:55:46 -06:00
Julien Duponchelle
b93c85c390
Allow to change the number of adapters for Docker (server side) 2016-04-06 16:01:34 +02:00
Julien Duponchelle
e564c84529
Flatten the project at export and support import for Linux
The client will send a flag to say if the import should be done
on the VM or not

Ref https://github.com/GNS3/gns3-gui/issues/1151
2016-04-06 12:08:00 +02:00
Julien Duponchelle
5531a576d1
Import create project if not exists (GNS3 VM just need an UUID) 2016-04-05 19:59:38 +02:00
Julien Duponchelle
9ed15e55af
Move more import code to the server
https://github.com/GNS3/gns3-gui/issues/1156
2016-04-05 18:32:48 +02:00
Julien Duponchelle
bd71f0cf4c
Import API 2016-03-30 17:42:00 +02:00
Julien Duponchelle
879591eaf5
Export API 2016-03-30 17:42:00 +02:00
Julien Duponchelle
23c48f5e3d
Add to project an API to write a file 2016-03-24 17:34:41 +01:00
Julien Duponchelle
de61ed316c
The controller has a streaming API
Now we need to link the hypervisor to the controller.
2016-03-17 17:32:37 +01:00
Julien Duponchelle
76a0120d3e
PEP8 2016-03-17 15:16:09 +01:00
Julien Duponchelle
b55969d381
Notification feed for the hypervisor 2016-03-17 15:15:30 +01:00
Julien Duponchelle
8fed1d9b9f
API for deleting a link 2016-03-14 20:54:05 +01:00
Julien Duponchelle
9062490be3
API for deleting a list 2016-03-14 17:40:27 +01:00
Julien Duponchelle
9771b33b68
Create link using UDP work 2016-03-14 16:51:47 +01:00
Julien Duponchelle
e3580d52c3
Dummy link api documentation 2016-03-11 17:02:50 +01:00
Julien Duponchelle
abdda4d3b3
Link API (do nothing for the moment) 2016-03-11 16:51:35 +01:00
Julien Duponchelle
be4aa41dda
Create VPCS VM on controller 2016-03-11 15:06:14 +01:00
Julien Duponchelle
4326d412f9
API for creating a VM 2016-03-10 21:51:29 +01:00
Julien Duponchelle
58f1abff35
Close, commit and delete supported for projects in controller 2016-03-10 10:32:07 +01:00
Julien Duponchelle
3296b97f59
Rename modules => hypervisor 2016-03-08 16:12:46 +01:00
Julien Duponchelle
6fa2491255
Rename /controller/servers to /controller/hypervisors 2016-03-08 16:04:12 +01:00
Julien Duponchelle
8114c1d4be
Return just version number for API /v1/version for compatibility 2016-03-07 18:17:24 +01:00
Julien Duponchelle
b2ce7ee8d7
API V2 2016-03-07 17:57:12 +01:00
Julien Duponchelle
664cec97ba
Create /hypervisor and /controller namespace 2016-03-07 15:01:35 +01:00
Julien Duponchelle
aad69e9650
Create a /server API for register servers
This allow to push to the controller information about
the connection to a server.
2016-03-03 16:05:09 +01:00
Julien Duponchelle
03ffce0a75
Docker VNC support
Ref https://github.com/GNS3/gns3-gui/issues/947
2016-02-29 23:09:47 +01:00
Julien Duponchelle
fd18458588
Fix stop capture for Docker
Fix #443, #442
2016-02-24 15:14:01 +01:00
Julien Duponchelle
5f15667ad1
Rename invalid variable iou_manager in Docker 2016-02-24 15:08:48 +01:00
Julien Duponchelle
a7ec224b6d
Docker capture and refactor common capture code
Fix https://github.com/GNS3/gns3-gui/issues/891
2016-02-09 16:07:33 +01:00
Julien Duponchelle
942d07c8ce
Removed docker support from 1.4 (drop unused code) 2016-02-08 13:40:14 +01:00
Julien Duponchelle
f6fb0623be
Merge branch 'master' into 1.5 2016-02-08 13:14:30 +01:00
Julien Duponchelle
fd22cd8361
Send command line used to start the VM to client
Add a command_line attribute to the VM object with
the command line used to start the VM.

Now /start return the object in order to get
this new attribute. And the HTTP status code
is 200 instead of 204 because 204 disallow body.

Support:
* Qemu
* Dynamips
* IOU

Ref https://github.com/GNS3/gns3-gui/issues/513
2016-02-02 18:25:17 +01:00
Julien Duponchelle
03414993dc
Merge branch 'master' into 1.5 2016-02-01 15:47:46 +01:00
Julien Duponchelle
58b998600e Send machine stats via the notification stream
Fix #252
2016-01-26 16:35:00 +01:00
Julien Duponchelle
758fb2a0e7 adapter_remove_nio_binding is a coroutine for all device type
It's cleaner
2016-01-11 15:19:15 +01:00
Julien Duponchelle
1f756c0d4f Merge branch '1.4' into 1.5 2016-01-06 14:35:48 +01:00
Julien Duponchelle
d184b65800 Improve PR #386
* Add more test
* Check to kvmi-ok is asynchronous
2016-01-04 16:30:06 +01:00
Vasil Rangelov
d00efbfb0f Adds a handler for getting the Qemu related capabilities of the server. Currently includes just a check for KVM architectures. 2016-01-03 19:38:16 +02:00
Julien Duponchelle
33edbefa3b Docker cleanup and improvements 2015-12-18 18:20:56 +01:00
Julien Duponchelle
ac16ee5bc6 Fix minor issues 2015-11-09 12:32:36 +01:00
Julien Duponchelle
da240f21ba Apply pep8 fix 2015-11-09 12:28:00 +01:00
Julien Duponchelle
1248584841 Cleanup unused and duplicates 2015-11-09 12:14:25 +01:00
grossmj
ce4727e51a Support for modifications to a base Qemu VM (not a linked clone). 2015-10-18 19:19:27 -06:00
grossmj
6e36687347 Fixes issue when loading a project using VMware vmnet interfaces. Fixes #319. 2015-10-14 21:39:17 -06:00
grossmj
57bbd63085 Support for NAT connection with cloud for VMware VMs. Fixes #322. 2015-10-12 17:07:39 -06:00
Julien Duponchelle
5e3ce48a52 Merge branch 'master' into unstable 2015-10-06 19:19:56 +02:00
Julien Duponchelle
3d7d8682ee OVA file support 2015-10-06 17:50:54 +02:00
Julien Duponchelle
034ac392b7 Support listing images in subdirectories
It's a part of the OVA support:
https://github.com/GNS3/gns3-gui/issues/700
2015-10-05 11:07:15 +02:00
grossmj
e63e3280a1 Prevent launching a packet capture with a non-ASCII path when using Dynamips. 2015-09-29 06:56:01 -06:00
grossmj
5bcabc705f Use custom VMnet interfaces without host adapter when uBridge is not used. Fixes #673. 2015-09-20 13:19:57 -06:00
grossmj
0ee31361c0 Support for packet capture on VMware VM links. 2015-09-13 09:40:09 -06:00
Goran Cetusic
0fa300cb99 Initial Docker support from Google Summer of Code 2015-09-08 10:57:28 +02:00
grossmj
0ab95ae043 basic docker container support 2015-09-08 10:54:27 +02:00
grossmj
4efec03448 Allows VMware VMs to use vmnet interfaces for connections without using uBridge. Fixes #295. 2015-09-05 14:38:11 -06:00
Julien Duponchelle
5388d43695 Fix closing project when multiple project is open
Fix #305
2015-09-03 17:41:27 +02:00
Julien Duponchelle
986ab649d7 Fix project not closing
Fix #303
2015-09-03 16:46:34 +02:00
Julien Duponchelle
f0f901a15d Should solve the BufferError by avoiding using thread
Fix #293
2015-08-24 19:59:11 +02:00
grossmj
7bccf9e554 Check for VMware Player version >= 7 and VMware Workstation >= 11. Fixes #286. 2015-08-01 13:49:02 -06:00
grossmj
bb69f02da6 Catch GeneratorExit exception when trying to create a Ghost IOS image. 2015-08-01 11:50:16 -06:00
Julien Duponchelle
78ef6e3032 Validation schema for qemu-img 2015-07-28 17:50:57 +02:00
Julien Duponchelle
54448ab936 Prevent user to create a qemu to a different directory on non local
server
2015-07-28 16:07:13 +02:00
Julien Duponchelle
5b0c36c0d6 API for creating a qemu disk image 2015-07-27 19:18:36 +02:00
Jeremy
fcd4fda68e Prevent starting different hypervisors that leverage hardware virtualization (VT-x/AMD-V). Fixes #548. 2015-07-26 19:21:30 -06:00
Julien Duponchelle
d9f1a7c7d3 API for listing current projects
Fix #274
2015-07-24 10:09:16 +02:00
Jeremy
8e236a7045 Prevent using different hypervisors that leverage hardware virtualization.
- Implemented for Qemu when a VMware or VirtualBox VM with hardware virtualization is already running.
- Implemented for VirtualBox only when a Qemu VM with KVM is already running.
2015-07-21 22:58:28 -06:00
grossmj
1f890b4cad Implements uBridge hypervisor. 2015-07-19 22:55:10 -06:00
Julien Duponchelle
a461cb71c6 Allow to send the iourc when starting the VM
Ref https://github.com/GNS3/gns3-server/issues/255
2015-07-09 16:06:52 +02:00
Jeremy
442aa31065 Make sure VNC ports are between 5900 and 6000. Fixes #490. 2015-07-03 16:06:25 -06:00
Jeremy
be85d95ff7 Checks if IOS image exist at startup and not during node creation. Fixes #240. 2015-06-29 16:30:57 -06:00
Julien Duponchelle
f39f7be503 Add log when we didn't close a project due to another client 2015-06-12 15:14:30 +02:00
Julien Duponchelle
2da0b36ee7 Support a platform parameter for Qemu
I'm sure we will discover a distribution with a different
naming conventions...

Fix #220
2015-06-10 15:49:24 +02:00
grossmj
ca331ae2a5 Import/Export support for IOU nvrams. 2015-06-06 15:15:03 -06:00
Julien Duponchelle
9442042d7a Merge branch 'master' into unstable 2015-05-28 12:04:01 +02:00
Vasil Rangelov
9ef4628cbc Added a method for getting qemu-img binaries, and moved the qemu folder into a separate method. 2015-05-28 00:11:36 +03:00
grossmj
0476f2932e Prevent users to add links to running Qemu VMs and start a capture on running VirtualBox VMs. 2015-05-27 13:56:27 -06:00
Julien Duponchelle
c98bcedd39 Cleanup the temporary project after modules have been notified of the
path change
2015-05-26 15:20:14 +02:00
Julien Duponchelle
6f9f004ebb API for list & download files of a project 2015-05-26 09:49:12 +02:00
Jeremy
cb7b9e8190 Adapters for VMware VMs. 2015-05-15 19:09:48 -06:00
Julien Duponchelle
743187bb2e Merge branch 'master' into unstable 2015-05-14 19:29:30 +02:00
Jeremy
dd9f62158f Fixes bugs with IOS router configs. Fixes #354. 2015-05-13 15:53:58 -06:00
Julien Duponchelle
bb4ebbfe64 Upload images API
Conflicts:
	requirements.txt
	setup.py
2015-05-10 21:06:31 +02:00
Jeremy Grossmann
61fb641215 Merge pull request #168 from GNS3/listen
A notification stream with process monitoring.
2015-05-09 17:15:58 -06:00
Julien Duponchelle
00fa1cc370 Merge branch 'master' into unstable 2015-05-08 14:45:07 +02:00
Jeremy
b57a023394 NIO NAT support for VirtualBox VMs. 2015-05-06 15:21:39 -06:00
grossmj
fcff2d0813 NIO NAT support for QEMU VMs (user mode back-end is used). 2015-05-06 14:59:01 -06:00
Jeremy
71e2586e17 Refactors how startup-config and private-config are handled for IOS routers. 2015-05-04 18:42:32 -06:00
Julien Duponchelle
d2d91ebdea Fix temporary project not cleanup with save as 2015-05-04 14:04:57 +02:00
grossmj
a260377f0e List all available VMware VMs. 2015-05-01 18:47:46 -06:00
Julien Duponchelle
e9ec5c8a37 A notification stream with process monitoring 2015-05-01 13:20:30 +02:00
Jeremy
ab60d7929b Basic VMware support (start & stop a VM). 2015-04-30 19:05:37 -06:00
Julien Duponchelle
359abb0286 Revert "Merge branch 'unstable'"
This reverts commit 929c337e8b, reversing
changes made to b9bc73fd01.
2015-04-30 16:43:30 +02:00
Jeremy
929c337e8b Merge branch 'unstable'
Conflicts:
	gns3server/modules/virtualbox/__init__.py
	gns3server/version.py
	tests/modules/test_manager.py
2015-04-29 16:29:45 -06:00
Julien Duponchelle
5f6d1bfdd6 Merge branch 'master' into unstable
Conflicts:
	tests/modules/test_manager.py
2015-04-28 10:46:59 +02:00
Jeremy Grossmann
4f021054e0 Merge pull request #158 from GNS3/keep_iou_config
Do not erase the IOU initial-config if there is one when creating the IOU VM.
2015-04-27 18:37:17 -06:00
Jeremy
f208b472a1 TAP interface support for QEMU VMs. Fixes #153. 2015-04-27 14:38:15 -06:00
Jeremy
b6a935aeb8 Return an explicit error when a NIO type is not supported by a VM. 2015-04-27 14:19:17 -06:00
Julien Duponchelle
324a4f73d0 Do not erase the IOU config 2015-04-27 18:22:54 +02:00
Jeremy
40ce22222e Merge branch 'unstable' into api_list_images
Conflicts:
	gns3server/handlers/api/iou_handler.py
2015-04-23 17:19:37 -06:00
Julien Duponchelle
83f2509cfe Cleanup exceptions 2015-04-23 16:56:46 +02:00
Julien Duponchelle
8b879c0614 Support wireshark remote capture 2015-04-20 19:27:07 +02:00
Julien Duponchelle
3926390d30 Fix tests broken by a previous commit 2015-04-18 09:22:37 +02:00
Julien Duponchelle
bca90bc563 API in order to get the list of IOU, Dynamips, Qemu images 2015-04-16 18:32:12 +02:00
grossmj
aeab9780d8 Fixes initial-configs that were not restored when opening a project containing IOU VMs. 2015-04-15 19:49:40 -06:00
grossmj
aab4a7243b Merge remote-tracking branch 'origin/master' 2015-04-14 18:21:42 -06:00
Julien Duponchelle
af942dc419 Fix a crash in VirtualBox vm creation
Fix #138
2015-04-14 14:24:13 +02:00
grossmj
78bc6e29a8 Explicitly delete Dynamips NIOs and unmap VCs for ATM and Frame-Relay switches. 2015-04-12 18:09:53 -06:00
grossmj
de5e8f852d Cleaner and generic way to set Qemu & IOU VM settings. 2015-04-12 15:09:37 -06:00
grossmj
056ff14437 Fixes unicode decode error when saving IOS router configs. Fixes #115. 2015-03-28 18:09:53 -06:00
Jeremy
81ce86a8a7 Fixes use_default_iou_values param was not set. 2015-03-26 16:47:55 -06:00
Jeremy
879ed9e4e6 Fixes issue when exporting IOS router configs. 2015-03-25 14:58:04 -06:00
grossmj
588088ca93 Fixes bug when remove_nio() is not a coroutine for ATM and FR switches. 2015-03-24 22:15:49 -06:00
grossmj
980e63e667 Allocate a random port for Qemu monitor. Fixes issue with pre 1.3 projects. 2015-03-23 22:52:02 -06:00
grossmj
73310105a8 Fixes default chassis bug. 2015-03-23 21:13:22 -06:00
grossmj
24300b2502 Adds project id when requesting UDP port. 2015-03-21 22:27:40 -06:00
grossmj
628dfef0d3 Initialize chassis when creating an IOS router. Fixes #107. 2015-03-21 13:58:52 -06:00
Jeremy
8415117d2d Save IOS router configs when saving the project (done right this time). 2015-03-18 15:34:31 -06:00
Julien Duponchelle
4a9f578784 Support IOURC update 2015-03-17 19:00:14 +01:00
Julien Duponchelle
66cdf39ea2 Support uploading iourc 2015-03-17 16:31:45 +01:00
Jeremy
cc9b575b77 Bind UDP tunnels to the correct source address. Fixes #96. 2015-03-16 12:45:21 -06:00
Julien Duponchelle
3a6a04b8e5 Fix version test 2015-03-16 10:18:37 +01:00
Jeremy
cf92bfe81e Alternative local server shutdown (mostly intended for Windows). 2015-03-13 18:57:27 -06:00
Jeremy
4ccca5dc99 Support RAM setting for VirtualBox VMs. 2015-03-13 17:13:36 -06:00
Jeremy
a81d2274cd Adds info either the server is started as a local server in VersionHandler response. 2015-03-13 15:15:27 -06:00
Jeremy
03796ca729 Server handler to shutdown a local server. 2015-03-12 18:44:05 -06:00
grossmj
95766fa30d Let the server know about the project name and convert old IOU projects on remote servers. 2015-03-08 19:13:01 -06:00
grossmj
c3014632a4 Fixes rename bug for linked clones in VirtualBox. 2015-03-08 12:32:36 -06:00
Jeremy
ee578d3c12 Fixes Qemu networking. 2015-03-06 20:08:00 -07:00
Julien Duponchelle
d657f94c18 Fix crash when you start capture on a non running IOU 2015-03-06 14:48:46 +01:00
Jeremy
7a6136ed14 Fixes adapter bug with VirtualBox. 2015-03-04 18:24:15 -07:00
Jeremy
6e89f2c7c7 Remove console_host from IOU and Qemu handlers. 2015-03-02 19:17:13 -07:00
Jeremy
a6869379c3 Fixes console restoration when loading a VirtualBox project. 2015-03-02 17:28:28 -07:00
Jeremy
f269ec9527 Fixes Qemu networking. 2015-03-02 16:34:28 -07:00
Julien Duponchelle
91ccd6167c API for reloading server config 2015-03-02 20:46:05 +01:00
Julien Duponchelle
a9afaa028c Garbage collect VM when closing a project 2015-03-02 17:17:28 +01:00
grossmj
c48ca212bd Stop Dynamips hypervisors used by devices before the project is closed.
This is to avoid locked files by hypervisors preventing temporary project working directories to be deleted.
2015-03-01 19:20:33 -07:00
Jeremy
0e8b8fa66f Update hypervisors working dir when the project is moved. 2015-02-27 16:51:17 -07:00
Jeremy
985c23a40e Explicitly import handlers so freezing application can find and include the right modules.
Do not import IOU on Windows to avoid importing unknown modules like fcntl on that platform.
2015-02-26 19:31:18 -07:00
Jeremy
58d92f1584 Fixes Dynamips console/aux ports restoration when loading a project. 2015-02-26 16:15:44 -07:00
Jeremy
54fc873be5 Prevent multiple projects with the same ID to be created. 2015-02-25 16:05:57 -07:00
Julien Duponchelle
7c2329d870 Garbage collect the lock 2015-02-25 11:19:16 +01:00
Julien Duponchelle
46b348e46a VM concurrency 2015-02-24 21:53:38 +01:00
Julien Duponchelle
250bb38d7c Crash report with Sentry 2015-02-24 17:40:01 +01:00
Julien Duponchelle
1ca445d5f5 Fix dynampis resume API 2015-02-24 10:02:06 +01:00
Julien Duponchelle
c9314ec509 autopep8 et upload files 2015-02-23 17:21:39 +01:00
Julien Duponchelle
259f6249e2 Fix tests 2015-02-23 16:09:52 +01:00
Julien Duponchelle
f7cd09d5fb Display an upload form (upload is not yet ready) 2015-02-23 11:28:33 +01:00