Jeremy
349d9d4540
Fixes small issues when deleting Dynamips devices.
2015-02-25 11:52:52 -07:00
Julien Duponchelle
f12d3f07f7
Drop the old -files in the project
2015-02-25 18:23:41 +01:00
Julien Duponchelle
8434a286b6
Fix IOU old project import
...
Fixes #69
2015-02-25 16:35:13 +01:00
Julien Duponchelle
818676ce5e
Support relative path in iou
2015-02-25 16:26:17 +01:00
Julien Duponchelle
47f8ac00c0
Remove debug
2015-02-25 16:04:18 +01:00
Julien Duponchelle
4ea25739e5
Correctly check if qemu is running
...
Fixes #71
Related to #70
2015-02-25 15:46:05 +01:00
grossmj
3528efb1e0
Fixes packet capture for devices when spaces are present in the output file.
2015-02-24 23:12:09 -07:00
Jeremy Grossmann
e910167a85
Quick change warning -> debug
2015-02-23 22:19:03 -07:00
Jeremy
49f3c9295f
Some debug messages to help with port allocation debugging.
2015-02-23 19:59:19 -07:00
Jeremy
42c07cee1a
Properly release UDP ports when closing a project or deleting a link.
2015-02-23 19:00:34 -07:00
Jeremy
3d3300e83a
Rename console methods in port manager to use the generic tcp term in the name.
...
Fixes bug when a console port is allocated to a Ghost VM instance and not released.
Warnings at exit when TCP/UDP ports are still allocated.
2015-02-23 17:42:55 -07:00
Jeremy
182d2e465e
Use projects_path & images_path.
2015-02-23 17:08:34 -07:00
Julien Duponchelle
4d1f08c96e
Turn off Qemu graphics if no display is available
...
Fixes #66
2015-02-23 20:21:00 +01:00
Julien Duponchelle
c9314ec509
autopep8 et upload files
2015-02-23 17:21:39 +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
47be57dca7
Fix qemu close
2015-02-20 17:31:02 +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
b393948b67
Fixes iouyap shutdown.
2015-02-19 16:58:44 -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
b03b9226ff
So we have running code for a qemu module
...
Now the handlers. The telnet code is not yet async
2015-02-19 16:46:57 +01:00
Julien Duponchelle
25bcbfb073
Allocation of console port in base vm
2015-02-19 11:45:43 +01:00
Jeremy
4a3e6632c1
Merge remote-tracking branch 'origin/asyncio' into asyncio
2015-02-18 18:40:16 -07:00
Jeremy
380c4d8211
Fixes capture directory path.
2015-02-18 18:40:01 -07:00
grossmj
3d1363150e
Fixes ghost file path.
2015-02-18 18:24:35 -07:00
grossmj
610dee957d
Use HTTP error 409 instead of 500 for VMError.
2015-02-18 17:48:02 -07:00
Julien Duponchelle
d65617657c
Fix old project directories renames
2015-02-18 16:13:09 +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
Julien Duponchelle
5170428913
Fix a capture crash
2015-02-17 10:01:15 +01:00
grossmj
dc4df68c7a
Keep Dynamips logs.
2015-02-16 21:30:31 -07:00
Jeremy
e6fd471dd5
Save Dynamips VM configs when closing a project.
2015-02-16 18:21:10 -07: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
Julien Duponchelle
018e3c1451
Fix IOU closing
2015-02-16 17:40:13 +01:00
Julien Duponchelle
15f89776d3
All current iou code is async
2015-02-16 17:20:07 +01:00
Julien Duponchelle
d323234520
Harmonisation of slot, adapter notion
2015-02-16 10:19:50 +01:00
Julien Duponchelle
3ceb43fa62
Fix tests
2015-02-16 10:11:46 +01:00
Julien Duponchelle
605afa1d33
Fix bad execption name in IOU
2015-02-16 10:05:54 +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
4f38d96522
Dynamips devices.
2015-02-13 20:01:18 -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
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
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
68427eaddf
Auto PEP8 cleanup
2015-02-13 14:43:28 +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
05df7001a3
Successfully create an iou device from the GUI via HTTP
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
98586b93ee
Add timeout on stopping a VPCS just in case.
2015-02-09 13:41:31 -07: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
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
5a0c224292
Allow user to change project path on local server
2015-02-05 17:52:37 +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
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
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
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
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
45ca493ecf
Use module settings from the config file.
2015-02-02 14:52:58 -07:00
Jeremy
a3a304bd12
Load port ranges from the config file.
2015-02-01 20:43:55 -07:00
Jeremy
334835c985
PEP8 + documentation.
2015-01-31 14:34:49 -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
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
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
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
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
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
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
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
Julien Duponchelle
2c50bb607f
VPCS Mac address / project
2015-01-22 18:47:27 +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
Julien Duponchelle
368d1ff70b
Update VPCS instance
2015-01-21 21:46:16 +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
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
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
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
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
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
Julien Duponchelle
8e307c8cbb
Use PATH environnement variable for searching binary
2015-01-16 20:23:43 +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
7a767a6b92
Merge 1.2.2 into asyncio
...
Conflicts:
gns3server/version.py
2015-01-16 09:43:58 +01: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
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
Jeremy
2ef45781ad
Checks connection failure to Qemu monitor.
2015-01-11 18:24:13 -07:00
Raizo62
cbbb89f69c
Add snapshot named reset to linked cloned Vbox
2015-01-11 12:22:59 +00:00
Jeremy
29896151e7
Support spaces in the controller name of VirtualBox clones.
2015-01-06 15:31:50 -07:00
Jeremy
7f6f7022b0
Support to run VirtualBox as another user.
2015-01-05 16:18:33 -07:00
Jeremy Grossmann
c77ebca036
Merge pull request #62 from shmygov/qemunio
...
Dynamically configure network connections of running QEMU VMs
2015-01-05 15:46:09 -07:00
Jeremy
881cc6f592
Fixes wrong IOS config paths.
2015-01-04 18:51:55 -07:00
Jeremy
5265818365
Support for IOURC file on the server side.
2015-01-04 15:59:00 -07:00
Jeremy
d1e186317c
Console switching from local/remote to remote/local while a VirtualBox VM is running.
2015-01-04 14:56:17 -07:00
Jeremy
a6fd457cff
Bump the maximum network adapters to 32 for Qemu.
2015-01-03 16:16:07 -07:00
Dmitry Shmygov
4eedc9c74c
Dynamically configure network connections of running QEMU VMs (including new QEMU versions)
2015-01-03 05:04:52 +03:00
Dmitry Shmygov
ccb4ccd612
Return QEMU monitor responses as Match Objects (more flexibility for future uses)
2014-12-29 01:59:45 +03:00
Dmitry Shmygov
c775b05d33
Dynamically configure network connections of running QEMU VMs
2014-12-29 01:43:56 +03:00
Dmitry Shmygov
9cedb1cc99
Add sleep after write to QEMU monitor (to work with new QEMU versions)
2014-12-27 12:44:10 +03:00
Jeremy
1f615430ae
Checks for broken symbolic links.
2014-12-24 17:19:42 -07:00
Jeremy
2de1a97076
Merge remote-tracking branch 'origin/master'
2014-12-24 15:47:07 -07:00
Jeremy
747c0ee7a3
More checks on minimum RAM for IOS routers and updates default values to match the latest IOS image requirements.
2014-12-24 15:46:59 -07:00
grossmj
d9f44edcaf
Fixes incompatibility for IOS startup-config and private-config paths created on Windows and loaded from a project on Linux/Mac OS X.
2014-12-23 15:29:27 -07:00
Dmitry Shmygov
84511d7b39
QEMU VM suspend/resume and reload
2014-12-23 14:42:58 +03:00
Dmitry Shmygov
3590985c07
Add QEMU monitor port to control running QEMU VMs
2014-12-23 14:42:58 +03:00