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
Julien Duponchelle
d0c386860e
Fix curl sample generation in the documentation
2015-02-27 18:47:08 +01:00
Julien Duponchelle
ae7bf828cd
Fix tests on MacOS
2015-02-27 18:30:22 +01: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
Jeremy
182d2e465e
Use projects_path & images_path.
2015-02-23 17:08:34 -07:00
Jeremy
fb9f5d3c14
List only executable files in upload handler.
2015-02-23 15:56:40 -07:00
Jeremy
8b19029d97
List only executable files in upload handler.
2015-02-23 15:56:10 -07:00
Jeremy
0e8c184987
Recursive listing of the images directory & fixes bug when uploading no files.
2015-02-23 15:49:05 -07:00
Julien Duponchelle
4ffb2c8c20
Fix tests
2015-02-23 17:32:55 +01:00
Julien Duponchelle
89b7d62ec6
Some code cleanup
2015-02-23 17:28:17 +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
Jeremy
210aa6f12a
Bit of cleaning.
2015-02-22 19:56:52 -07:00
Jeremy
565a7b35a6
Default NVRAM and Idle-PC for some IOS images.
2015-02-21 17:24:39 -07:00
Jeremy
9a745ed3f4
Merge remote-tracking branch 'origin/asyncio' into asyncio
2015-02-20 16:53:57 -07:00
Jeremy
af700e9bcb
Idle-PC and auto idle-pc for Dynamips.
2015-02-20 16:53:51 -07:00
Julien Duponchelle
cecf2f5014
Async qemu monitor reading
2015-02-21 00:15:56 +01:00
Julien Duponchelle
15036837bb
No project for qemu binaries list
2015-02-20 16:54:23 +01:00
Julien Duponchelle
8aa5514890
Qemu binary list
2015-02-20 14:39:13 +01:00
Jeremy
90f71e7581
Idle-PC proposals for Dynamips.
2015-02-19 19:14:30 -07:00
Jeremy
8d02f464c5
Dynamips import/export configs.
2015-02-19 16:04:15 -07:00
Julien Duponchelle
48f5c7c8b3
All params for qemu
2015-02-19 20:22:30 +01:00
Julien Duponchelle
d0244824bf
Get a working Qemu handler. Next step add all parameters
2015-02-19 19:43:45 +01:00
Julien Duponchelle
03b6563864
Initial config path for IOU
2015-02-17 18:12:43 +01:00
Julien Duponchelle
dd1833c4f0
iourc_path is set from server settings file
2015-02-17 16:40:45 +01:00
Julien Duponchelle
0e98497a99
Add an endpoint for exporting the initial config file
2015-02-17 14:52:51 +01:00
Jeremy
516b882122
Merge remote-tracking branch 'origin/asyncio' into asyncio
2015-02-16 16:53:56 -07:00
Jeremy
3e95bb9748
Adapter settings and configs for Dynamips VMs.
2015-02-16 16:53:50 -07:00
Julien Duponchelle
6c3a926ce3
Capture is OK on server side
2015-02-16 20:08:04 +01:00
grossmj
78ffe313fd
Dynamips VM & device deletion and ghost support.
2015-02-15 22:13:24 -07:00
grossmj
26f7195288
Dynamips devices packet capture.
2015-02-15 17:45:53 -07:00
grossmj
f99e834c37
Dynamips devices support (packet capture to complete).
2015-02-15 12:18:12 -07:00
Jeremy
094339304c
Packet capture for Dynamips VMs.
2015-02-13 15:41:56 -07:00
Jeremy
6ac6c7d796
Merge remote-tracking branch 'origin/asyncio' into asyncio
2015-02-13 15:11:19 -07:00
Jeremy
a5ac7c5481
Dynamips NIO connections.
2015-02-13 15:11:14 -07:00
Julien Duponchelle
e082cd8b1a
Update the remote IOU initial config
2015-02-13 22:16:43 +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
ee019caa37
Support l1_keepalives in IOU
2015-02-13 16:57:35 +01:00
Julien Duponchelle
3e1875b069
Set console host from port manager
2015-02-13 14:46:00 +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
8b61aa9ae7
Set ram, ethernet adapters, serial adapters
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
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
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
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
5a0c224292
Allow user to change project path on local server
2015-02-05 17:52:37 +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
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
f572f3fc95
You can't modify startup script remotely
2015-02-03 20:29:28 +01:00
Jeremy
81f9252554
Fixes nasty bug when close a cloned VirtualBox VM.
2015-02-02 18:56:13 -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
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
Jeremy
e60366c5bb
Change URL to get all VirtualBox VMs.
2015-01-26 20:29:02 -07:00
Julien Duponchelle
4518404706
Run rmtree in a different thread
2015-01-26 12:10:30 +01:00
Jeremy
50fea669b5
Network handler for UDP port allocation and server network interfaces.
2015-01-24 15:32:58 -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
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
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
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
72c6182062
Typo
2015-01-22 17:04:14 +01:00
Julien Duponchelle
e12e6044dc
Delete VPCS
2015-01-22 11:34:10 +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
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
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
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
17f6223fb1
Try to fix VirtualBox create test.
2015-01-20 15:28:40 -07:00
Julien Duponchelle
649d4e5143
Allow user to set console port
2015-01-20 20:54:46 +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
f5ed9fbcf1
PEP 8 clean thanks to auto pep8
2015-01-20 13:24:00 +01:00
Julien Duponchelle
68d0e5f42d
PEP8
2015-01-20 13:04:20 +01:00
Julien Duponchelle
0695e75e77
Fix tests
2015-01-20 12:46:15 +01:00
Jeremy
7fff25a9a9
UUID support for VMs.
...
Basic VirtualBox support (create, start and stop).
Some refactoring for BaseVM class.
Updated CURL command in tests.
2015-01-19 18:30:57 -07:00
Julien Duponchelle
ed973dbcf2
Project handler use ProjectManager
2015-01-19 17:12:36 +01:00
Julien Duponchelle
240d83411c
Create a project entity
2015-01-19 16:23:41 +01:00
Jeremy
1cfce6ac5e
Merge remote-tracking branch 'origin/asyncio' into asyncio
...
Conflicts:
gns3server/handlers/vpcs_handler.py
tests/api/test_version.py
tests/api/test_vpcs.py
2015-01-18 12:23:42 -07:00
Jeremy
d142a9a885
Rename vpcs_id to id. Must be an integer in the route definition.
2015-01-18 12:12:11 -07:00
Julien Duponchelle
77db08c39e
Remove NIO from VPCS
2015-01-16 21:39:58 +01:00
Julien Duponchelle
bf6f62e629
Serialize NIO
2015-01-16 17:09:45 +01:00
Julien Duponchelle
0cdc1c3042
VCPS create NIO work and tested
2015-01-16 16:20:10 +01:00
Julien Duponchelle
c1ef406311
A basic implementation of port manager
2015-01-15 16:59:01 +01:00
Julien Duponchelle
6c35cc304e
Dirty stop start for VPCS
2015-01-14 18:52:02 +01:00
Julien Duponchelle
aab944fb6c
Move old test to old_tests directory
2015-01-14 11:43:23 +01:00
Jeremy
369cd06279
Merge latest changes from the POC.
2015-01-13 18:26:32 -07:00
Jeremy
61344a1669
New base server.
2015-01-13 17:05:26 -07:00
Jerry Seutter
c4afc33ea8
IOS devices can be deployed on cloud instances.
2014-10-27 18:12:56 -06:00
grossmj
b88abb7c91
Remote servers and load-balancing (still things to improve).
2014-10-19 17:29:04 -06:00
Jerry Seutter
ee88d6f808
Merge branch 'master' into dev
2014-09-29 17:24:52 -06:00
Jerry Seutter
b132c901c9
Disabling auth from version string
2014-09-18 20:39:12 +00:00
Michael
4fa87005bc
Enabled HTTP Auth, SSL and DMS disabling based on cloud.conf availability
2014-09-08 21:51:56 -06:00
Michael
b84dda3c8e
HTTP auth added to file_upload and jsonrpc
2014-09-03 22:12:34 -06:00
Michael
382e693fc8
Added authentication handler for basic auth check
2014-09-03 00:05:06 -06:00
Daniel Lintott
578bb5741d
Override check_origin from tornado.websocket
2014-08-06 22:43:37 +01:00
grossmj
1fb4ab7e33
Minimal VirtualBox integration.
2014-07-17 15:28:02 -06:00
grossmj
4b5c38495a
Change default projects directory from ~/Documents/GNS3/projects to ~/GNS3/projects.
2014-06-29 10:14:15 -06:00
grossmj
cb763e0926
Use Dynamips, IOU and VPCS identifiers to correctly load a topology.
2014-06-15 05:18:33 -06:00
grossmj
f9ee38dd55
Fixes issues to restore the correct working directories for IOU and VPCS devices when loading a project.
...
Prevent multiple clients to use the same server (this is not supported yet).
2014-06-10 09:33:27 -06:00
grossmj
7b58f14681
Some PEP8 style fixes.
2014-05-28 06:26:20 -06:00
grossmj
85ef421d72
Catch exceptions in file upload handler.
2014-05-17 18:39:37 -06:00
grossmj
c0a876af68
Move cloud code (module independent) to a builtin package.
2014-05-07 19:31:53 -06:00
grossmj
ed8b93dee2
Possibility to get the server version over JSON-RPC/Websocket.
2014-05-01 15:10:06 -06:00
grossmj
28ca12367a
Proper server shutdown.
2014-04-26 17:51:47 -06:00
grossmj
724e3051fd
Send the server version when a client connects.
2014-04-24 19:50:58 -06:00
grossmj
2ebac2f20a
Update upload template.
2014-04-19 18:37:10 -06:00
grossmj
ada36e5382
Bump version to 1.0-alpha2.
2014-04-16 12:43:59 -06:00
grossmj
872515fa78
Use the FileExistsError exception.
2014-04-12 16:46:02 -06:00
grossmj
96231e3f7f
More specific path checks (file vs directory).
2014-04-11 14:48:30 -06:00
grossmj
f4dd096a8b
Rename all EnvironmentError to OSError.
...
Change version number to 1.0a2-dev1.
Check only on Python >= 3.3.
2014-04-02 16:10:59 -06:00
grossmj
a92da02973
Builtin destination to shutdown the server.
2014-03-31 18:36:45 -06:00
grossmj
c91f876656
Default host binding is 0.0.0.0.
...
Move the file uploader template.
UDP port allocation (removed the host).
Minor changes with iouyap lookup and remote server project directory.
2014-03-29 21:29:10 -06:00
grossmj
0f75dbc68a
IOU integration.
...
Improvements on module management.
File upload support.
Config file for the server.
2014-03-11 15:45:04 -06:00
grossmj
687d5b75ab
Renaming things & more inline docs.
2014-02-27 21:50:46 -07:00
grossmj
cef29e53aa
General work on the Dynamips backend (need to finish and polish).
2014-01-31 16:31:34 -07:00
grossmj
0cb98318b5
Remove STOMP over Websockets implementation.
2013-12-21 17:37:49 -07:00
grossmj
e28079096e
JSON-RPC over Websockets implementation.
2013-12-21 17:34:51 -07:00
grossmj
2f23a092e3
Polishing base server implementation
2013-12-05 21:39:27 -07:00