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
Julien Duponchelle
78237e9fb6
Bold parameter in documentation in order to improve readability
2015-01-20 15:31:27 +01:00
Julien Duponchelle
f5ac73d1ca
Fix documentation generation
2015-01-20 15:27:28 +01:00
Julien Duponchelle
0b97509a74
Do not color logger message
2015-01-20 15:18:57 +01:00
Julien Duponchelle
4488cc3960
Colored logs
2015-01-20 15:10:38 +01:00
Julien Duponchelle
db41076ce5
Use the project working directory for VPCS VM
2015-01-20 14:31:47 +01:00
Julien Duponchelle
f5ed9fbcf1
PEP 8 clean thanks to auto pep8
2015-01-20 13:24:00 +01:00
Julien Duponchelle
7f185663d1
VPCS Device => VPCS VM
2015-01-20 13:12:26 +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
Jeremy
fe22576ae2
Some quick cleaning.
2015-01-19 14:43:35 -07:00
Julien Duponchelle
345b471c47
Drop unused code
2015-01-19 17:58:01 +01:00
Julien Duponchelle
ed973dbcf2
Project handler use ProjectManager
2015-01-19 17:12:36 +01:00
Julien Duponchelle
f0094cc0d0
Project Manager
2015-01-19 17:07:32 +01:00
Julien Duponchelle
240d83411c
Create a project entity
2015-01-19 16:23:41 +01:00
Julien Duponchelle
a9a09cc0bc
Temporaru drop old tornado logging
2015-01-19 15:05:44 +01:00
Julien Duponchelle
a06d935ef4
Drop tornado
2015-01-19 14:21:08 +01:00
Julien Duponchelle
f0880c4a37
Drop queue codes because it's too specific
2015-01-19 13:47:20 +01:00
Julien Duponchelle
73a481e510
Refactor port manager
2015-01-19 11:22:24 +01:00
Jeremy
ae8e2f4199
Prepare VirtualBox module.
2015-01-18 16:26:56 -07:00
Jeremy
b6212fc885
Improve Port Manager to handle UDP ports.
2015-01-18 15:41:53 -07: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
Jeremy
c47081f363
Bump version to 1.2.3
2015-01-16 17:58:09 -07:00
Jeremy
3793789732
Fixes broken -netdev + legacy virtio in Qemu support.
2015-01-16 17:44:07 -07:00
Julien Duponchelle
77db08c39e
Remove NIO from VPCS
2015-01-16 21:39:58 +01:00
Julien Duponchelle
8e307c8cbb
Use PATH environnement variable for searching binary
2015-01-16 20:23:43 +01:00
Jeremy
4c010b466d
Bump version to 1.2.3.dev1
2015-01-16 10:43:44 -07: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
aff834f565
Oops bad merge
2015-01-16 10:18:02 +01:00
Julien Duponchelle
7a767a6b92
Merge 1.2.2 into asyncio
...
Conflicts:
gns3server/version.py
2015-01-16 09:43:58 +01:00
Jeremy
701a1626f7
Bump version to 1.2.2
2015-01-15 17:44:09 -07:00
Jeremy
2ee49fed57
Some cleaning.
2015-01-15 17:43:06 -07:00
Jeremy
9e83329f14
Rename Device to VM.
2015-01-15 16:50:36 -07:00
Julien Duponchelle
c1ef406311
A basic implementation of port manager
2015-01-15 16:59:01 +01:00
Julien Duponchelle
3abcac43ab
Test the stop method
2015-01-15 14:27:33 +01:00
Julien Duponchelle
6bb2b88f1a
It's was hard but i have finally a beginning of test for start VPCS
2015-01-15 13:02:43 +01:00
Jeremy
e6e83ffa8a
Update the VM name in VirtualBox for linked clones.
2015-01-14 16:48:32 -07:00
Julien Duponchelle
6c35cc304e
Dirty stop start for VPCS
2015-01-14 18:52:02 +01:00
Julien Duponchelle
1431c66c54
Documentation generation
2015-01-14 12:32:56 +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