Commit Graph

618 Commits

Author SHA1 Message Date
Julien Duponchelle
e082cd8b1a Update the remote IOU initial config 2015-02-13 22:16:43 +01:00
Julien Duponchelle
83edc649d2 Rename NVRAM to the correct application id before start the server 2015-02-13 20:57:20 +01:00
Julien Duponchelle
a9a3bb1c38 Pep8 2015-02-13 20:57:09 +01:00
Julien Duponchelle
49f012cf4c Turn off documentation sidebar because it's broken 2015-02-13 18:27:08 +01:00
Julien Duponchelle
2cab5293c7 Add the notion of adapters and slot in the api 2015-02-13 18:09:50 +01:00
Julien Duponchelle
821eb5e92b Repare config file loading 2015-02-13 17:34:22 +01:00
Julien Duponchelle
ee019caa37 Support l1_keepalives in IOU 2015-02-13 16:57:35 +01:00
Julien Duponchelle
1550ca01e6 IOU support nio ethernet 2015-02-13 16:41:18 +01:00
Julien Duponchelle
3e1875b069 Set console host from port manager 2015-02-13 14:46:00 +01:00
Julien Duponchelle
68427eaddf Auto PEP8 cleanup 2015-02-13 14:43:28 +01:00
Julien Duponchelle
a4669689e7 Fix tests due to test reading the local config file 2015-02-13 11:15:11 +01:00
grossmj
0a5aaedc7c Merge remote-tracking branch 'origin/asyncio' into asyncio 2015-02-12 19:15:47 -07:00
grossmj
8f089c45f5 Fixes a few problems in Dynamips implementation. 2015-02-12 19:15:35 -07:00
Julien Duponchelle
f99d825346 Support network for IOU 2015-02-12 22:29:34 +01:00
Julien Duponchelle
9160d3caf4 Remove old directories to avoid editing them by mistake... 2015-02-12 22:29:34 +01:00
Julien Duponchelle
3471b03ef9 Clarify JSON schema validation errors 2015-02-12 22:29:33 +01:00
Julien Duponchelle
8b61aa9ae7 Set ram, ethernet adapters, serial adapters 2015-02-12 22:29:33 +01:00
Julien Duponchelle
05df7001a3 Successfully create an iou device from the GUI via HTTP 2015-02-12 22:29:33 +01:00
Julien Duponchelle
4689024b50 Add a --live options to control livereload
Because the livereload bug due to timezone issues with Vagrant
2015-02-12 22:29:33 +01:00
Julien Duponchelle
ebc214d6fa Fix tests and rename path to iou_path 2015-02-12 22:29:33 +01:00
Julien Duponchelle
fb69c693f6 Start iouyap 2015-02-12 22:29:33 +01:00
Julien Duponchelle
faa7472670 IOUCON start when vm start 2015-02-12 22:29:33 +01:00
Julien Duponchelle
986c63f344 HTTP api start iou process
Now we need to start ioucon
2015-02-12 22:29:32 +01:00
Julien Duponchelle
2e99ef69a9 Modules support start iou process (not ioucon and iouyap) 2015-02-12 22:29:32 +01:00
Jeremy
79a57ca420 New Dynamips integration part 3 2015-02-11 19:21:34 -07:00
grossmj
37945585b9 New Dynamips integration part 2 2015-02-10 21:50:02 -07:00
Jeremy
46cbcd6132 New Dynamips integration part 1 2015-02-09 18:24:13 -07:00
Jeremy
648850c411 Server listen to 0.0.0.0 by default. 2015-02-09 13:42:50 -07:00
Jeremy
30c452e938 Merge remote-tracking branch 'origin/asyncio' into asyncio 2015-02-09 13:41:36 -07:00
Jeremy
98586b93ee Add timeout on stopping a VPCS just in case. 2015-02-09 13:41:31 -07:00
Julien Duponchelle
2f85d71f32 Correctly override the config from command line
The tests was long write but allow me to found some typos
bugs.
2015-02-09 21:30:22 +01:00
Julien Duponchelle
b31af0abcd Sub directory project-files 2015-02-09 11:26:42 +01:00
grossmj
0d7d0a05c3 Handle old projects. 2015-02-08 18:10:04 -07:00
grossmj
2a3b37a3bd VirtualBox packet capture. 2015-02-08 14:44:56 -07:00
grossmj
d499402491 VirtualBox implementation complete. 2015-02-06 17:31:13 -07:00
Julien Duponchelle
e81dcd4bba Add /projects before /project 2015-02-06 17:42:25 +01:00
Julien Duponchelle
571044b3e8 Fix server close tests 2015-02-06 11:31:54 +01:00
Jeremy
8118d7762f Parallel execution when closing VMs. 2015-02-05 14:24:06 -07:00
Jeremy
f2ff933b20 Fixes console and close in VirtualBox VM. 2015-02-05 11:58:10 -07:00
Julien Duponchelle
ab122d969e Allow empty project directory 2015-02-05 17:57:51 +01:00
Julien Duponchelle
5a0c224292 Allow user to change project path on local server 2015-02-05 17:52:37 +01:00
Julien Duponchelle
9f7b8574c8 Useless print 2015-02-05 17:15:40 +01:00
Julien Duponchelle
30f10a559e Fix crash in debug log 2015-02-05 16:34:18 +01:00
Julien Duponchelle
0abf2e82d6 Improve server debug logging 2015-02-05 15:35:52 +01:00
Julien Duponchelle
41a8872819 Refactor VPCS script file loading
This allow to support moving the project on disk
2015-02-05 14:20:01 +01:00
Julien Duponchelle
869405738e Code cleanup 2015-02-05 13:55:53 +01:00
Julien Duponchelle
b92e065add Fix binary location change for VPCS 2015-02-05 12:00:34 +01:00
Julien Duponchelle
dae48b2de4 Update temporary status if project change location
This avoid race condition during file move.
2015-02-05 11:44:51 +01:00
Julien Duponchelle
8367a9eb30 Remove unused files (we can restore them later via git history) 2015-02-05 11:00:42 +01:00
Jeremy
291fac7084 Add project_id in all VM calls. 2015-02-04 17:13:35 -07:00
Jeremy
b680138073 Merge remote-tracking branch 'origin/asyncio' into asyncio
Conflicts:
	gns3server/modules/project.py
	tests/modules/test_project.py
2015-02-04 13:52:46 -07:00
Jeremy
1bea78194c Explicit ID names, remove {uuid} from URLs and add vms in URLs for VMs. 2015-02-04 13:48:29 -07:00
Julien Duponchelle
c5c219ffe1 Allow modification of path from the client 2015-02-04 21:17:00 +01:00
Julien Duponchelle
2ace014a3c Cleanup old temporary project at startup 2015-02-04 17:18:53 +01:00
Julien Duponchelle
ca354ae7f2 Doc API V1 2015-02-04 10:31:31 +01:00
Julien Duponchelle
08158884a4 Add api versionning 2015-02-04 10:24:59 +01:00
Jeremy
119bebee25 Documentation. 2015-02-03 18:44:04 -07:00
Jeremy
59c82e26df Use project_id instead of project_uuid for the API. 2015-02-03 18:40:13 -07:00
Jeremy
d2699f051d Change URL for projects: /project becomes /projects and project_id is used instead of uuid. 2015-02-03 18:23:11 -07:00
Julien Duponchelle
aeb83a7945 Support %h in VPCS config file 2015-02-03 21:48:20 +01:00
Julien Duponchelle
f572f3fc95 You can't modify startup script remotely 2015-02-03 20:29:28 +01:00
Julien Duponchelle
0ce344b1d2 PEP8 2015-02-03 10:49:21 +01:00
Jeremy
81f9252554 Fixes nasty bug when close a cloned VirtualBox VM. 2015-02-02 18:56:13 -07:00
Jeremy
66569f26a4 Make sure to wait for the unload coroutine to finish when the server is shutting down. 2015-02-02 17:01:25 -07:00
Jeremy
df72369b0e Fix VirtualBox VM close. 2015-02-02 17:00:29 -07:00
Jeremy
33d5882a4a Add traceback info when catching an exception to help with debugging. 2015-02-02 15:36:13 -07:00
Jeremy
471fbe576c Ignore OSError when checking for config file changes. 2015-02-02 15:00:56 -07:00
Jeremy
45ca493ecf Use module settings from the config file. 2015-02-02 14:52:58 -07:00
Julien Duponchelle
2c3fe2ad4b Repare debug log 2015-02-02 21:28:42 +01:00
Jeremy
aecd7dedba Fixes app name for the config file on Linux. 2015-02-02 13:13:56 -07:00
Julien Duponchelle
0ae8d8031a Override configuration from command line even in case of config reload 2015-02-02 15:08:46 +01:00
Julien Duponchelle
6abf420ce1 Support configuration live reload 2015-02-02 15:01:48 +01:00
Julien Duponchelle
21020a2753 Fix server configuration path 2015-02-02 10:49:46 +01:00
Jeremy
a3a304bd12 Load port ranges from the config file. 2015-02-01 20:43:55 -07:00
Jeremy
0c90393b5b Send explicit error message when client is checking for the server version. 2015-02-01 16:55:08 -07:00
Jeremy
8d471a89a8 Check for OSError when starting the server. 2015-02-01 15:56:10 -07:00
Jeremy
334835c985 PEP8 + documentation. 2015-01-31 14:34:49 -07:00
Jeremy
8a00d30e23 Change ports to adapters in VirtualBox API entry points. 2015-01-31 12:07:30 -07:00
Jeremy
22369ade49 Rename port_id to port_number for VPCS and adapter_id for VirtualBox to avoid confusion. 2015-01-31 12:01:23 -07:00
Jeremy
fa978b6a28 Send all VirtualBox settings when creating the VM. 2015-01-30 19:36:05 -07:00
Julien Duponchelle
8bc26420b7 If not script file is setted we use the default from VPCS 2015-01-30 14:57:25 +01:00
Julien Duponchelle
29a4a0634d Add console debug 2015-01-27 11:39:31 +01:00
Jeremy
e60366c5bb Change URL to get all VirtualBox VMs. 2015-01-26 20:29:02 -07:00
Julien Duponchelle
776bfea3d7 Clean enable debug mode 2015-01-26 17:40:41 +01:00
Julien Duponchelle
6764c6e866 Useless debug 2015-01-26 16:39:09 +01:00
Julien Duponchelle
9abf323e7d Send GNS 3 server version in header and upgrade aiohttp 2015-01-26 14:40:31 +01:00
Julien Duponchelle
df8bdcc152 Catch exceptions from rmtree 2015-01-26 13:54:44 +01:00
Julien Duponchelle
4518404706 Run rmtree in a different thread 2015-01-26 12:10:30 +01:00
Julien Duponchelle
1bfb201368 Enable code live reload only in debug mode 2015-01-26 09:51:29 +01:00
Julien Duponchelle
70faf76c10 PEP8, documentation update, test fix 2015-01-26 09:36:26 +01:00
Jeremy
50fea669b5 Network handler for UDP port allocation and server network interfaces. 2015-01-24 15:32:58 -07:00
Jeremy
c002bbfb23 Minimal SSL support. 2015-01-24 12:11:51 -07:00
Jeremy
365af02f37 Packet capture support for VirtualBox. 2015-01-23 18:33:49 -07:00
Jeremy
ff63530f52 Get all available VirtualBox VMs on the server. 2015-01-23 17:57:54 -07:00
Jeremy
6460e94311 More VirtualBox implementation. 2015-01-23 16:38:46 -07:00
Jeremy
bc3d63081b Unload should not delete VMs, just close them. 2015-01-23 16:36:58 -07:00
Jeremy
6e7a5ca8bd Adds debug and quiet command line args. 2015-01-23 13:10:57 -07:00
Jeremy
39e3ca91a9 Fixes module unload & adds host, port and allow-remote-console command line args. 2015-01-23 13:01:23 -07:00
Julien Duponchelle
59f940625a Flag --local 2015-01-23 18:37:29 +01:00
Julien Duponchelle
8e249b670d Set a location by default 2015-01-23 17:39:17 +01:00
Julien Duponchelle
7bed9f56bc Avoid crash when closing vms
Otherwise the size of dict change and Python raise
an exception.
2015-01-23 17:33:58 +01:00
Julien Duponchelle
017c5ac9f6 Allow changing location only for local usage 2015-01-23 16:58:14 +01:00
grossmj
4f2764c0b4 Fixes module unload. 2015-01-23 08:44:00 -07:00
Julien Duponchelle
547adf0dc6 Get project 2015-01-23 16:18:40 +01:00
Julien Duponchelle
0e76527ce2 Update a project 2015-01-23 16:13:58 +01:00
Julien Duponchelle
abc885049f Temporary project 2015-01-23 16:02:26 +01:00
Julien Duponchelle
7bf121c6da When we remove a VM, the VM is removed from the project. 2015-01-23 14:37:21 +01:00
Julien Duponchelle
3f5c2390cd Close a project 2015-01-23 14:07:10 +01:00
Julien Duponchelle
986a7f55ef Delete a project 2015-01-23 11:48:20 +01:00
Julien Duponchelle
f97c2b2cbe Delete a VM, mark it as destroyable 2015-01-23 11:28:58 +01:00
Julien Duponchelle
28308b10bc Add missing documentation 2015-01-23 10:11:40 +01:00
grossmj
0d503b779e Explicitly close VM when the server is shutdown. 2015-01-22 23:40:51 -07:00
grossmj
e61e976368 Adapters support for VirtualBox. 2015-01-22 21:31:26 -07:00
grossmj
2a8823b856 Use the Proactor event loop on Windows. 2015-01-22 21:11:57 -07:00
Jeremy
05c0efe39b More VirtualBox work. 2015-01-22 19:07:09 -07:00
Jeremy
d9b02efbfa Rename destroy to close or unload (more friendly). 2015-01-22 19:06:17 -07:00
Jeremy
2681defe27 Moves NIO creation to the base manager. 2015-01-22 18:04:24 -07:00
Jeremy
6ec4dea9b9 Fixes reload call in VPCS handler. 2015-01-22 15:04:44 -07:00
Julien Duponchelle
2c50bb607f VPCS Mac address / project 2015-01-22 18:47:27 +01:00
Julien Duponchelle
72c6182062 Typo 2015-01-22 17:04:14 +01:00
Julien Duponchelle
6644c640db Attribute mac address 2015-01-22 16:12:21 +01:00
Julien Duponchelle
08b2dc6369 Cleanup VMS when leaving 2015-01-22 11:49:22 +01:00
Julien Duponchelle
e12e6044dc Delete VPCS 2015-01-22 11:34:10 +01:00
Julien Duponchelle
545a3d2b58 PEP8 2015-01-22 10:57:08 +01:00
Julien Duponchelle
8d3ea60404 VPCS reload 2015-01-22 10:55:11 +01:00
Jeremy
3b7d08a80e Suspend and resume for VirtualBox. 2015-01-21 19:28:52 -07:00
Jeremy
87bd0d1869 VirtualBox VM almost done. 2015-01-21 19:26:39 -07:00
Jeremy
f231b06833 No need for start_vm and stop_vm in the manager. 2015-01-21 17:41:35 -07:00
Jeremy
0b1b27db8f Add module name to base manager. 2015-01-21 15:21:15 -07:00
Julien Duponchelle
f3e07d5ad9 Fix random failure related to ports 2015-01-21 22:21:01 +01:00
Julien Duponchelle
ef4ecbfb6a Improve VPCS port change test 2015-01-21 22:09:52 +01:00
Jeremy
7ce1cf3f84 Return correct status codes and fix tests. 2015-01-21 14:01:15 -07:00
Julien Duponchelle
368d1ff70b Update VPCS instance 2015-01-21 21:46:16 +01:00
Julien Duponchelle
7abb426d04 Get informations about a VPCS instance 2015-01-21 17:21:17 +01:00
Julien Duponchelle
87a089457f Update script file 2015-01-21 16:43:34 +01:00
Julien Duponchelle
df31b2ad5a Fix project path 2015-01-21 11:33:24 +01:00
Jeremy
ba91cbaac0 Remove find_unused_port from the attic. 2015-01-20 19:10:08 -07:00
Jeremy
7a19c9062e Pass *args to VM_CLASS.
Move Config the the base manager.
More checks for projects (UUID,  makedirs).
Return error 500 when a VMError exception is raised.
Some more progress to VirtualBox.
2015-01-20 19:02:22 -07:00
Jeremy
061d3223a7 Merge remote-tracking branch 'origin/asyncio' into asyncio 2015-01-20 15:28:45 -07:00
Jeremy
17f6223fb1 Try to fix VirtualBox create test. 2015-01-20 15:28:40 -07:00
Julien Duponchelle
fc66e4592a VPCS is trully async 2015-01-20 23:27:28 +01:00
Julien Duponchelle
984d47f9c8 Test work without vpcs binary 2015-01-20 22:50:26 +01:00
Julien Duponchelle
0eaa7be86a PEP 8 Enforcer. 2015-01-20 22:13:58 +01:00
Julien Duponchelle
649d4e5143 Allow user to set console port 2015-01-20 20:54:46 +01:00
Julien Duponchelle
f2289874af Raise exception if we try to reserve an already reserve port 2015-01-20 20:09:20 +01:00
Julien Duponchelle
fa57485f11 Support script file 2015-01-20 19:56:18 +01:00
Julien Duponchelle
54eb8d9e81 Drop decorator for async test 2015-01-20 18:55:17 +01:00
Julien Duponchelle
db31afeb63 Merge branch 'master' into asyncio
Conflicts:
	gns3server/old_modules/qemu/qemu_vm.py
	gns3server/version.py
2015-01-20 16:45:09 +01:00
Julien Duponchelle
bbee5f90a0 Yet another PEP 8 :) 2015-01-20 16:37:18 +01:00
Julien Duponchelle
7cf409c392 Kill VPCS process when the server exit 2015-01-20 16:24:46 +01:00