Commit Graph

1080 Commits

Author SHA1 Message Date
Jeremy
c7034c25ef Fixes issue when IOURC environment variable is set to None. 2015-03-26 15:11:36 -06:00
Julien Duponchelle
2e72bc2d3a Fix tests 2015-03-26 17:43:00 +01:00
Julien Duponchelle
64152c1af8 Fix a crash in CI, making log impossible to read 2015-03-26 15:49:51 +01:00
Jeremy
ec6a761e04 Fixes check if VPCS process is running. 2015-03-25 14:43:51 -06:00
grossmj
07067d6765 Fixes how to test if iou and iouyap are running. 2015-03-24 22:04:48 -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
Jeremy
b5aabd4cc5 Fixes initial-config not loading for IOU L2. 2015-03-23 12:30:27 -06:00
grossmj
f451ed144e Prevent error when suspend/resume is not supported in QEMU VM. 2015-03-22 20:40:19 -06:00
grossmj
153914bf97 Make sure used ports in a project are cleaned up when closing it. 2015-03-21 17:19:12 -06:00
grossmj
2d6d153262 Save configs when project is committed. 2015-03-21 14:52:17 -06:00
grossmj
628dfef0d3 Initialize chassis when creating an IOS router. Fixes #107. 2015-03-21 13:58:52 -06:00
Jeremy
17d5b3a7bc Remove unnecessary locks. 2015-03-20 19:19:49 -06:00
Julien Duponchelle
01bcbe2fd9 Lock the dynamips reader an writer
Fix #103
2015-03-20 10:21:40 +01:00
Julien Duponchelle
ddb8a9f06e Fix an issue in IOU relative path looking 2015-03-19 15:36:06 +01:00
Jeremy
8415117d2d Save IOS router configs when saving the project (done right this time). 2015-03-18 15:34:31 -06:00
Jeremy
f6b122cdfa Look in legacy IOU images dir when looking for relative IOU image path. 2015-03-17 19:28:43 -06:00
Jeremy
fb0490d8e3 Merge remote-tracking branch 'origin/asyncio' into asyncio 2015-03-17 18:53:36 -06:00
Jeremy
163d1e375d Save IOS configs when a project is committed. 2015-03-17 18:53:24 -06:00
Julien Duponchelle
6330e99ff1 More robust IOUVM support 2015-03-17 22:18:55 +01:00
Julien Duponchelle
386b311755 Fix iou key verification for large hostid 2015-03-17 20:15:01 +01:00
Julien Duponchelle
4a9f578784 Support IOURC update 2015-03-17 19:00:14 +01:00
Julien Duponchelle
8ca9c2121a Do not crash if iourc file is missing 2015-03-17 18:34:23 +01:00
Julien Duponchelle
66cdf39ea2 Support uploading iourc 2015-03-17 16:31:45 +01:00
Julien Duponchelle
bb7eda63af Support more all QEMU status
Fix #98
2015-03-17 11:02:14 +01:00
Jeremy
93a5f4be79 Temporarily deactivate IOS router saveconfigs. 2015-03-16 17:36:23 -06:00
Jeremy
46fe973a96 Save IOS router configs when the user saves a project. 2015-03-16 16:33:37 -06:00
Jeremy
cc9b575b77 Bind UDP tunnels to the correct source address. Fixes #96. 2015-03-16 12:45:21 -06:00
Julien Duponchelle
cf247a9301 Fix iou tests and add tests 2015-03-16 11:52:22 +01:00
grossmj
21587fda5a Removes confreg setting for IOS routers. 2015-03-14 16:31:15 -06:00
grossmj
6d56da03e5 Fixes tests. 2015-03-14 13:16:27 -06: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
f7d3af4a59 Fixes hostid retrieval. 2015-03-13 11:45:38 -06:00
Jeremy
6d901e8295 Fixes issue when VBoxManage returns an error. 2015-03-12 16:53:22 -06:00
grossmj
4f7b896a6a Fixes tests. 2015-03-11 23:09:01 -06:00
Jeremy
54c2d34185 Optional IOU license key check. 2015-03-11 18:59:57 -06:00
Jeremy
aebcd9f08b Relative path support of IOU, IOS and Qemu images. 2015-03-11 15:04:11 -06:00
Jeremy
c41bec0516 Do not give attachment warning for generic attachments in VirtualBox. 2015-03-11 12:05:22 -06:00
Jeremy
223f3ee705 Should fix ProcessLookupError exceptions. 2015-03-11 10:53:09 -06:00
grossmj
1610067eee Support for HDC and HDD disk images in Qemu. 2015-03-10 11:50:30 -06:00
grossmj
062e5a5986 Fixes bug when starting a packet capture in VirtualBox with the project path containing spaces. 2015-03-10 11:05:52 -06:00
grossmj
03dfd177f9 Use TCP instead of Telnet to communicate with Qemu monitor. 2015-03-10 00:34:57 -06:00
grossmj
5910b4b0be Have the server look in the right place for relative image paths. 2015-03-09 21:57:21 -06:00
grossmj
ad5548f70b Convert more that IOU pre 1.3 projects but also other modules on remote servers. 2015-03-09 21:46:23 -06:00
grossmj
5ca65093e4 Fixes bugs when checking if this is a local project. 2015-03-09 12:45:02 -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
2934232afb Convert legacy IOU directories on remote servers. 2015-03-08 17:45:29 -06:00
grossmj
b1eccc0ace Properly restore configs for Dynamips routers. 2015-03-08 14:13:19 -06:00
grossmj
c3014632a4 Fixes rename bug for linked clones in VirtualBox. 2015-03-08 12:32:36 -06:00
grossmj
0d379f428e Makes absolute path checks work on Windows. 2015-03-07 18:16:46 -07:00
Julien Duponchelle
ed2e4e43f2 Support the options use_default_iou_values
Fix #92
2015-03-07 14:27:09 +01:00
Julien Duponchelle
1b68a54234 Look for qemu images in ~/GNS3/images 2015-03-07 11:56:51 +01:00
Jeremy
ee578d3c12 Fixes Qemu networking. 2015-03-06 20:08:00 -07:00
Jeremy
d87ebb3ed2 Fixes suspend and resume for Qemu. 2015-03-06 15:16:19 -07:00
Julien Duponchelle
e37392c482 Correctly recover id when closing VMS
Fixes #91
2015-03-06 15:48:16 +01:00
grossmj
18f3859e87 Fixes Telnet server initialization issue in VirtualBox. Fixes #88. 2015-03-05 21:20:02 -07:00
Jeremy
a64dfdd694 Disconnect network cable if adapter is not attached in VirtualBox vNIC. 2015-03-05 19:11:33 -07:00
Jeremy
2bae814eb1 Remove redundant code for Dynamips hypervisor connections. 2015-03-05 18:00:17 -07:00
Julien Duponchelle
3407ba802e Rename vlan dat file for IOU 2015-03-05 17:00:25 +01:00
Julien Duponchelle
80fd857658 Fix tests 2015-03-03 14:37:34 +01:00
Jeremy
6208cb997d Fixes Qemu adapters support. 2015-03-02 19:59:44 -07:00
Jeremy
3472f19519 Use console_host from the PortManager. 2015-03-02 18:19:11 -07:00
Jeremy
a6869379c3 Fixes console restoration when loading a VirtualBox project. 2015-03-02 17:28:28 -07:00
Jeremy
b673b898a8 Fixes problem when trying to convert VirtualBox projects without cloned VMs. 2015-03-02 13:04:30 -07:00
Julien Duponchelle
a9afaa028c Garbage collect VM when closing a project 2015-03-02 17:17:28 +01:00
Julien Duponchelle
66860655b9 If a VM is already loaded, we return a VM instead of creating it twice
Partial fix for #81
2015-03-02 15:35:36 +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
grossmj
3ef529fb0e Temporally fixes Dynamips console listening issues. 2015-03-01 18:53:03 -07:00
grossmj
518b037d54 Fixes connect call failed for Dynamips hypervisor #78. 2015-03-01 14:25:09 -07:00
grossmj
7223005acd Restore device IDs and fixes race condition when converting an old project. 2015-03-01 13:05:51 -07:00
grossmj
5ae8728ee6 Fixes ATM switch. 2015-03-01 10:41:27 -07:00
grossmj
dfce18a48f Fixes migration issues for pre-1.3 projects. 2015-02-28 18:55:53 -07:00
grossmj
0f10d25c0b Optional AUX console port allocation for Dynamips VMs. 2015-02-28 16:20:27 -07:00
grossmj
7fe2d6c367 Support to deactivate sparsemem or mmap globally for Dynamips VMs. 2015-02-28 15:53:21 -07:00
grossmj
d762c43314 Include the images directory when converting an old project. 2015-02-28 15:00:00 -07:00
grossmj
708f66b608 Fixes asyncio Lock instantiation issues on Windows.
Because the event loop is essentially a global variable, asyncio Lock objects that get instantiated early could grab a reference to the wrong loop (Selector instead of Proactor).
2015-02-27 22:12:43 -07:00
grossmj
666064f1ae Revert commit: Remove lock for Ghost IOS (problem on Windows). 2015-02-27 22:01:37 -07:00
Jeremy
70d5dea256 Remove lock for Ghost IOS (problem on Windows). 2015-02-27 19:36:45 -07:00
Jeremy
ba95567886 Some info message and fixes ghost IOS activation/deactivation. 2015-02-27 19:35:31 -07:00
Jeremy
84870bf736 Some changes with config files on Windows. 2015-02-27 18:08:34 -07:00
Jeremy
0e8b8fa66f Update hypervisors working dir when the project is moved. 2015-02-27 16:51:17 -07:00
Julien Duponchelle
ae7bf828cd Fix tests on MacOS 2015-02-27 18:30:22 +01:00
Julien Duponchelle
ebb865d973 Export vpcs config path 2015-02-27 13:38:57 +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
Julien Duponchelle
62afef06af After an iou reload you can write on the console 2015-02-26 15:47:47 +01:00
Julien Duponchelle
5e59145948 If you type reload inside iou you are no longer disconnected 2015-02-26 15:09:15 +01:00
Julien Duponchelle
29e8d91745 Do not output debug for ioucon standard telnet commands 2015-02-26 13:07:26 +01:00
Julien Duponchelle
5a58f6efc8 Fix a crash with Python 3.4 when you stop IOU
http://bugs.python.org/issue23140
2015-02-26 11:29:57 +01:00
Julien Duponchelle
c07b8c746e Drop poll from Qemu 2015-02-26 10:18:52 +01:00
Jeremy
0eaad579c2 IOU + VirtualBox conversion of old projects. 2015-02-25 18:55:35 -07:00
Jeremy
85518a3cd6 Fixes race condition when generating an ghost IOS file. 2015-02-25 17:38:55 -07:00
Jeremy
9dc713f31d Fixes race condition when deleting empty legacy project files dir. 2015-02-25 17:38:36 -07:00
Jeremy
473eb0280e Support for relative path in Dynamips. 2015-02-25 17:19:37 -07:00
Jeremy
de1be0961f Do not return an error when creating the same project multiple times (for now). 2015-02-25 17:19:12 -07:00
Jeremy
54fc873be5 Prevent multiple projects with the same ID to be created. 2015-02-25 16:05:57 -07:00
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
Jeremy
7785c03eac Ignore Unicode errors when executing vboxmanage. 2014-12-19 15:47:12 -07:00
Jeremy
7f37f649da Catch OSError exception for subprocess calls. 2014-12-11 12:15:24 -07:00
Jeremy
acb5103119 Merge remote-tracking branch 'origin/master' 2014-12-09 19:17:53 -07:00
Jeremy
823344bf44 Get Windows interface list from the registry if the COM service fails. 2014-12-09 19:17:25 -07:00
Jeremy Grossmann
ecf7ebc26b Merge pull request #58 from dlintott/fix_gns3-gui_158
Remove extra line that was over-writing the auto Idle-PC value
2014-12-09 16:16:05 -07:00
Daniel Lintott
317a37147e Remove extra line that was over-writing the auto Idle-PC value
Fixes GNS3/gns3-gui#158
2014-12-09 19:39:22 +00:00
Jeremy Grossmann
0f238c5bb7 Merge pull request #54 from planctechnologies/dev
Qemu cloud improvements
2014-12-09 12:36:38 -07:00
Jerry Seutter
f1503ae655 Handle initrd and kernel paths in qemu 2014-12-08 20:14:55 -07:00
Jeremy
20592f72c0 Fixes UID bit test. 2014-12-08 14:54:06 -07:00
Jerry Seutter
00f49e337d Merge branch 'master' into dev 2014-12-08 14:22:31 -07:00
Jeremy
f58c7960c9 Use bundled Qemu on Windows and OSX by default and checks if remote server are registered. 2014-12-04 12:25:49 -07:00
Jeremy
5a468888c8 Bump version to 1.2.1.dev2 2014-12-02 18:52:28 -07:00
Jeremy
8f53d51c05 Support for CPU throttling and process priority for Qemu. 2014-12-02 18:12:37 -07:00
Jeremy
1e01c85be9 Change search paths for Qemu on Windows. 2014-12-02 14:49:39 -07:00
grossmj
fed02ee167 Adds default path for VBoxManage on Mac OS X. 2014-11-29 16:42:57 -07:00
grossmj
632134a02a Support for older Qemu versions like the 0.11.0 on Windows. 2014-11-29 14:11:51 -07:00
Jeremy
183a6aed44 Do not use universal_newlines in subprocess. 2014-11-26 15:07:15 -07:00
Jeremy
d97ba11728 Fixes C7200 IO cards insert/remove issues and makes C7200-IO-FE the default. 2014-11-24 17:02:00 -07:00
Jerry Seutter
ef8c6b603c Add debugging to deadman process 2014-11-24 14:32:06 -07:00
Jeremy
4918675cd5 Fixes Qemu version detection. 2014-11-24 11:44:27 -07:00
Jeremy
6ef614103e Ignore inaccessible VirtualBox VMs. 2014-11-24 11:15:30 -07:00
Jeremy
09948a366f Use SubprocessError to catch Subprocess exceptions. 2014-11-22 17:45:04 -07:00
grossmj
fd92189d51 Restore dock widgets. 2014-11-19 10:22:09 -07:00
Jeremy
cb913416ef Bump to version 1.2.dev3 2014-11-15 16:47:30 -07:00
Jeremy
5a7e482dac Linked clone support for VirtualBox (still problems with temporary projects). 2014-11-15 16:05:55 -07:00
Jeremy
e2e4f4f38b Fixes remote server issue when creating a new project while already in a project. 2014-11-14 19:59:06 -07:00
Jeremy Grossmann
e75dde3ebf Merge pull request #48 from planctechnologies/pr3
Add support for Qemu devices on cloud instances (server)
2014-11-12 21:19:15 -07:00
Jeremy Grossmann
bba2c2b0d3 Merge pull request #47 from planctechnologies/pr2
Support IOU devices on cloud instances
2014-11-12 21:17:57 -07:00
Jeremy
a9e924934a Fixes important issue when searching for a free port. 2014-11-12 19:49:02 -07:00
Jeremy
f6561bf684 Automatically extract IOS configs when a project is closed. 2014-11-10 13:50:17 -07:00
Jerry Seutter
5b73786653 Move image path manipulation to server side 2014-11-10 11:28:19 -07:00
Jeremy
f44fbd1f16 Option to allow console connections to any local IP address when using the local server. 2014-11-09 23:01:13 -07:00
Jeremy
1982ff8100 Allows Qemu VM to have 0 interface. 2014-11-09 18:27:40 -07:00
Jeremy
7a6f27fed9 New VirtualBox guest property: ProjectDirInGNS3. 2014-11-09 16:10:30 -07:00
Jeremy
747ca7bb90 Base for VirtualBox linked clones (not completed yet). 2014-11-09 11:50:47 -07:00
Jerry Seutter
faa3ef8cb4 Add support for Qemu devices on cloud instances 2014-11-07 20:42:08 -07:00
Jerry Seutter
0b0830976f Support IOU devices on cloud instances 2014-11-06 15:50:46 -07:00
grossmj
31db1a4e84 Merge remote-tracking branch 'origin/master'
Conflicts:
	gns3server/modules/virtualbox/virtualbox_vm.py
2014-11-06 13:59:05 -07:00
grossmj
e07347a961 Rename "enable console" to "remote console". 2014-11-06 13:56:19 -07:00
Jeremy
a4e20cd6f6 Add VirtualBox guest property "NameInGNS3". 2014-11-06 10:11:39 -07:00
Jeremy
a98a8b1acc Change default VirtualBox adapter type. 2014-11-04 19:00:01 -07:00
Jeremy
7809160ea1 Add detection of qemu and qemu.exe binaries. 2014-11-03 17:36:14 -07:00
grossmj
087f0e82de Fixes issues with VirtualBox Telnet server on Windows. 2014-11-02 18:06:15 -07:00
grossmj
393a312e7e New Telnet server for VirtualBox. 2014-11-02 15:47:44 -07:00
grossmj
4d23c5917c Add REUSE flag to socket when scanning for unused ports. 2014-11-01 15:44:18 -06:00
Jeremy Grossmann
89e80fd74b Merge pull request #43 from planctechnologies/dev
Download IOS images from Cloud Files to a cloud instance
2014-11-01 11:19:12 -06:00
Jeremy
a48aff6ce5 Fixes some issues with VirtualBox support. 2014-10-31 17:41:12 -06:00
Jerry Seutter
e5fa52fcb5 Adding back a line that was mistakenly removed. 2014-10-31 10:26:53 -06:00
Jerry Seutter
ff02bb977a Merge branch 'master' into dev 2014-10-31 10:02:58 -06:00
grossmj
7b531cf094 Fixes issue when getting the VirtualBox VM list. 2014-10-30 21:10:14 -06:00
Jeremy
dab72cf036 New VirtualBox support (under testing). 2014-10-30 18:53:17 -06:00
grossmj
95a89ac91b Change find an unused port. 2014-10-29 10:15:22 -06:00
grossmj
f5540ee147 Change find an unused port. 2014-10-28 21:03:51 -06:00
Jerry Seutter
5f9554b86c Cleanup 2014-10-28 11:07:44 -06:00
Jerry Seutter
7830bf8b1a Merge branch 'dev' into gns-110 2014-10-28 10:39:03 -06:00
Jerry Seutter
c4afc33ea8 IOS devices can be deployed on cloud instances. 2014-10-27 18:12:56 -06:00
grossmj
88b9d946da Fixes SecureCRT issue when disconnecting from an IOU device on Windows. 2014-10-25 18:03:24 -06:00
grossmj
20acca64b5 Bump version to 1.2.dev1 2014-10-25 18:01:14 -06:00
grossmj
f48c9117b0 Serial console for VirtualBox. 2014-10-22 21:59:11 -06:00
grossmj
666c8ea922 Pedantic: make sure Idle-PC is spelled that way. 2014-10-22 20:47:59 -06:00
Jerry Seutter
91894935bf Merge branch 'dev' into gns-110 2014-10-21 15:39:14 -06:00
grossmj
f0c344939b Polish and bump up to version 1.0! 2014-10-20 18:40:05 -06:00
grossmj
e261263aab Add path lookup directory for Qemu on OSX. 2014-10-20 11:56:30 -06:00
Jerry Seutter
c08e1011ed Make the server download images from cloud files 2014-10-15 15:51:00 -06:00
grossmj
4195bdc7dd Auto idle-pc feature and improvements/bug fixes for GNS3 preferences. 2014-10-13 19:53:17 -06:00
Jeremy Grossmann
b3e86be182 Merge pull request #37 from planctechnologies/server_security2
Add secure communication between gui and server 2/2
2014-09-30 11:24:28 -06:00
Jeremy Grossmann
e39c93c91a Merge pull request #34 from planctechnologies/deadman
Deadman switch support 1/2
2014-09-30 11:20:01 -06:00
grossmj
1a96a150bc Fix shemas for QEMU. 2014-09-30 11:15:15 -06:00
Jerry Seutter
7c446796fe gns3server now controls the deadman switch. 2014-09-29 18:09:16 -06:00
Jerry Seutter
ee88d6f808 Merge branch 'master' into dev 2014-09-29 17:24:52 -06:00
grossmj
a8193fa063 Split the PATH environment variable using os.pathsep 2014-09-28 18:23:27 -06:00
grossmj
e7141685cc Tweaks to support Qemu on Windows. 2014-09-23 21:38:51 -06:00
grossmj
aca9e0de56 Qemu integration stage 2, support for ASA and IDS. 2014-09-22 21:24:55 -06:00
Jerry Seutter
cf59240bef Bugfixes with cloud server communication 2014-09-21 21:41:51 -06:00
grossmj
d1715baae1 Base QEMU support. 2014-09-18 15:47:43 -06:00
Michael
4fa87005bc Enabled HTTP Auth, SSL and DMS disabling based on cloud.conf availability 2014-09-08 21:51:56 -06:00
Michael
f876a862c4 GNS3 server will now create the heardbeat file durining initialization 2014-09-06 21:13:09 -06:00
Michael
ef492d4690 Update gns3dms to support cloud.conf 2014-09-06 20:46:06 -06:00
Michael
e688d96c36 Add start, stop, restart and heartbeat handling to DeadMan module 2014-08-28 23:06:28 -06:00
Michael
3845cab84b Adding initial module 2014-08-28 22:09:38 -06:00
grossmj
76b357c1ce Do not activate sparse memory by default for c1700 and c2600 platforms.
https://github.com/GNS3/dynamips/issues/54
2014-08-26 17:07:48 -06:00
grossmj
80ab81190c Add "enable console" option to VirtualBox VMs (True by default).
Add "start at" option to VirtualBox VMs (adapter start index, 0 by default).
2014-08-26 15:27:43 -06:00
grossmj
934404cc90 Change default port ranges. 2014-08-25 15:40:04 -06:00
grossmj
6e39630b9b Required VirtualBox wrapper is >= 9.1 2014-08-22 17:39:57 -06:00
grossmj
569a68a486 VirtualBox support refactoring. 2014-08-22 17:36:12 -06:00
grossmj
77c583ca39 Check if the VirtualBox COM service is installed on Windows. 2014-08-21 18:13:41 -06:00
grossmj
ea05744e1c Force to rebuild the COM cache on Windows (for VirtualBox support). 2014-08-17 15:15:07 -06:00
grossmj
e0f0c98ffd Do not look for vboxwrapper on non Windows platforms. 2014-08-13 12:11:41 -06:00
grossmj
ae0feb8c9c Fixes packet capture when spaces are in the capture file path. 2014-07-18 22:43:01 -06:00
grossmj
7ff218a5fc Fixes issue when adding multiple VirtualBox VMs.
Remove early release dialog.
2014-07-18 21:10:46 -06:00
grossmj
cdc778c159 Fixes issue with VirtualBox integration on Windows. 2014-07-18 18:04:21 -06:00
grossmj
19d24975c2 Remove privileged access checks for Dynamips. 2014-07-17 20:48:11 -06:00
grossmj
65d70bacfa Telnet to pipe support for VirtualBox. 2014-07-17 20:02:18 -06:00
grossmj
9ac2716826 Adds VirtualBox API for Python3 (not official). 2014-07-17 18:28:55 -06:00
grossmj
53ee3dc5cc Remove vboxapi_py3 package. 2014-07-17 18:24:21 -06:00
grossmj
64f78bb847 Fixes some inconsistencies when exporting configs. 2014-07-17 18:22:27 -06:00
grossmj
f5cf7363da Work around for the c7200 reload bug in Dynamips <= 0.2.13. 2014-07-17 18:03:21 -06:00
grossmj
1fb4ab7e33 Minimal VirtualBox integration. 2014-07-17 15:28:02 -06:00
grossmj
0ef727ce4b Base for VirtualBox support. 2014-07-12 13:18:25 -06:00
grossmj
6ffba35742 Use Windows interface names instead of their GUID (more user friendly).
Ask for an alternative interface if one cannot be found.
2014-07-08 14:01:45 -06:00
grossmj
9fc7650f3f Find an alternative IOS or IOU image if one cannot be found when importing a topology. 2014-07-06 16:34:38 -06:00
grossmj
551b98880b Default preferences for remote servers. 2014-07-04 15:18:13 -06:00
grossmj
7c99ee9de8 New feature: import/export device configs. 2014-07-03 18:56:37 -06:00
grossmj
9ac5b86431 Fixes IOU and VPCS renaming issues. 2014-07-03 09:02:25 -06:00
grossmj
329891fc83 Check for VPCS version >= 0.5b1 2014-07-02 15:04:39 -06:00
grossmj
c9a729b369 Bump version to 1.0a7. 2014-06-29 03:59:35 -06:00
grossmj
9bc0287540 New feature: packet capture for IOU (not working, issue with iouyap). 2014-06-27 09:42:34 -06:00
grossmj
33787d486a New feature: packet capture for the Ethernet hub and Ethernet, ATM and Frame relay switches. 2014-06-27 07:26:47 -06:00
grossmj
606f773f3d New feature: packet capture for IOS routers. 2014-06-26 03:06:58 -06:00
grossmj
14bb12d3fb Check for sticky bit when checking for executable access. 2014-06-21 06:53:47 -06:00
grossmj
49506ada3f Fixes inconsistencies with startup and private config paths when renaming an IOS router. 2014-06-18 07:22:57 -06:00
grossmj
587ddf7646 IOU: rename startup-config to initial-config because it makes more sense. 2014-06-18 06:08:00 -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
61ef750da3 Replace decode errors when reading device configs. 2014-05-29 12:59:13 -06:00
grossmj
e817c13738 Catch BlockingIOError in ioucon. 2014-05-29 03:10:45 -06:00
grossmj
7b58f14681 Some PEP8 style fixes. 2014-05-28 06:26:20 -06:00
grossmj
a39a693cda Hostname management refactoring. 2014-05-27 11:23:06 -06:00
grossmj
3a0439c9ae New hostnames management for the Dynamips module. 2014-05-27 03:59:22 -06:00
grossmj
f2fbdf618f Fixes privileged access checks for IOU. 2014-05-22 13:06:29 -06:00
grossmj
9da5aa1107 Fixes validation issue with c2600 XM chassis. 2014-05-22 10:54:34 -06:00
grossmj
0f5d2927df Fixes VPCS start on Linux/UNIX. Fixes #15. 2014-05-22 10:14:09 -06:00
grossmj
72b204dfe6 Use SIGBREAK to stop VPCS on Windows. 2014-05-21 19:11:28 -06:00
grossmj
3d6ec140b7 Forbid additional properties in schemas, add missing ones. 2014-05-20 18:06:28 -06:00
grossmj
b42d751e89 Fix console port restoration for IOU and VPCS (when loading a project). 2014-05-20 17:21:45 -06:00
grossmj
566c48ffed Send error if L1 keepalive messages are not supported. 2014-05-20 10:37:11 -06:00
grossmj
77b845a17f Revert "Fix a potential issue in ioucon."
This reverts commit 08cb3de683.
2014-05-20 10:28:59 -06:00
grossmj
08cb3de683 Fix a potential issue in ioucon. 2014-05-19 22:21:15 -06:00
grossmj
119eb635cf Changes how to look for vpcs and iouyap locations. 2014-05-19 18:52:59 -06:00
grossmj
e41afbb5c6 IOU layer 1 keepalive messages support. 2014-05-19 15:50:27 -06:00
grossmj
babdfd5086 Amend device configs when renaming. 2014-05-19 13:14:57 -06:00
grossmj
7182e59892 Clean delete for IOU & VPCS devices. 2014-05-19 12:05:30 -06:00
grossmj
6c0918312c Use SIGTERM instead of SIGUSR1 to stop vpcs. 2014-05-18 22:29:41 -06:00
grossmj
3b05d89837 Fix issue with VPCS create request. 2014-05-18 19:20:05 -06:00
grossmj
0af4ea81ff Working VPCS implementation. 2014-05-18 19:12:46 -06:00
grossmj
f4ab8e2dd0 UDP connection checks. 2014-05-17 18:07:16 -06:00
Jeremy Grossmann
0f8d1bc6da Merge pull request #12 from joebowen/master
Fixes for the VPCS path setting and base_script_file setting
2014-05-16 13:32:59 -06:00
grossmj
6a839c4b7b Wait more time for ioucon thread to be completed. Prevent IOS to be
started or stopped if the status isn't right.
2014-05-16 12:35:48 -06:00
Joe Bowen
cef8a3f116 Added base64 transmission of script_file 2014-05-16 11:42:43 -06:00
grossmj
9b55a8623c Fixes #41. 2014-05-16 11:38:48 -06:00
Joe Bowen
f79b2b061b Updated vpcs to allow up to 512 interfaces to start 2014-05-16 10:15:11 -06:00
Joe Bowen
ec44d70c7b Fixed VPCS base_script_file setting 2014-05-15 09:27:46 -06:00
grossmj
6981f82b7b Bump version to alpha4. 2014-05-14 17:45:06 -06:00
grossmj
ff6c864294 Fixes issue with server shutdown. 2014-05-14 11:24:14 -06:00
grossmj
9cc5131024 Missing file for the modules.vpcs.nios package. 2014-05-13 17:27:11 -06:00
grossmj
0412e051b2 Fixes major bug with ghost instance ID. 2014-05-13 17:17:26 -06:00
grossmj
64e09a19d9 Renaming for VPCS. 2014-05-13 16:09:47 -06:00
grossmj
43fa46779f Rename exception vpcsError to VPCSError. 2014-05-13 15:11:37 -06:00
Jeremy Grossmann
db4280713c Merge pull request #11 from joebowen/master
Initial pull request for VPCS module
2014-05-13 15:06:12 -06:00
Joe Bowen
87c3a41398 Update Class names to camelcase 2014-05-13 15:00:35 -06:00
grossmj
0d944d39ef Implement special request to stop a module. 2014-05-13 14:17:04 -06:00
Joe Bowen
5926bfbd07 Fixed first round of bugs/comments from first pull request 2014-05-13 10:17:28 -06:00
Joe Bowen
588ee8eed0 Changed the way vpcs closes by using the socket to send quit message instead of pid kill 2014-05-12 08:16:37 -06:00
grossmj
879362d09f Remove .gns3 from folder name. 2014-05-09 11:19:07 -06:00
grossmj
13f469f9d6 Handle local base config path. 2014-05-08 14:20:12 -06:00
grossmj
29be7ac4e2 Error message that JIT sharing is only supported in Dynamips unstable
version if someone tries. Fixes #10.
2014-05-07 21:07:47 -06:00
grossmj
c0a876af68 Move cloud code (module independent) to a builtin package. 2014-05-07 19:31:53 -06:00
grossmj
44bcc94e3e Option to use the default IOU RAM & NVRAM values. 2014-05-07 15:54:52 -06:00
grossmj
34ad75860d Socket shutdown. 2014-05-06 19:11:51 -06:00
grossmj
51c1f15853 New UDP and console port allocation system for IOU. Fixes duplicated
port issues.
2014-05-06 16:58:22 -06:00
grossmj
62da0a5ec2 Delete more Dynamips files that are useless to save. 2014-05-06 13:46:23 -06:00
grossmj
17b56810d1 Fixes bug where IOS nvram/disk files were not kept after closing a
topology.
2014-05-06 12:22:38 -06:00
Joe Bowen
bbce6b2c5c Added NIO TAP support 2014-05-06 10:52:34 -06:00
Joe Bowen
476a3c42b6 Added NIO TAP support 2014-05-06 10:42:38 -06:00
Joe Bowen
a50c4c112e Removed redundant definition 2014-05-06 10:26:34 -06:00
Joe Bowen
0fc019da03 Setup NIO for UDP communication 2014-05-06 10:25:05 -06:00
Joe Bowen
81b11403db Update file structure 2014-05-06 10:09:11 -06:00
Joe Bowen
975e5db82f Update file structure 2014-05-06 10:08:16 -06:00
Joe Bowen
ec08a5a72a Update file structure 2014-05-06 10:06:10 -06:00
Joe Bowen
46c653998e First draft of VPCS module 2014-05-06 09:06:25 -06:00
Joe Bowen
c6b4ac04e1 Revert "Test"
This reverts commit a61686a436.
2014-05-06 09:05:05 -06:00
Joe Bowen
a61686a436 Test 2014-05-06 08:50:34 -06:00
grossmj
cd47d96de7 Fixes error when ldd cannot be found. 2014-05-02 16:20:10 -06:00
grossmj
f185c4d489 Delete IOS ghost files. Bump version to alpha3. 2014-05-02 15:38:52 -06:00
grossmj
4ae7875010 Support for --version on the command line. 2014-05-01 19:34:58 -06:00
grossmj
2a888f93ce Explicitly send an error if a IOS adapter cannot be added or removed. 2014-05-01 15:46:59 -06:00
grossmj
93058f92d4 Ranges for UDP, console, auxiliary console and hypervisor ports.
Dynamips UDP NIO auto back-end for UDP tunnel connections (excepting
stubs).
2014-04-30 20:44:13 -06:00
grossmj
97e19ac7a5 Fixes WICs port number validation error. 2014-04-30 11:06:45 -06:00
grossmj
b54e554497 Do not process more client requests when modules are shutting down. 2014-04-30 10:40:07 -06:00
grossmj
e7d9f73e1e Display the ZeroMQ version when the server starts. Fixes #8. 2014-04-30 10:17:45 -06:00
grossmj
31866113e4 Windows interface support for clouds. 2014-04-29 17:46:43 -06:00
grossmj
03f002b348 Check if iouyap can access Ethernet and TAP devices. 2014-04-29 11:11:37 -06:00
grossmj
3bcf13328b Fixes issue when netifaces module is not installed. 2014-04-28 10:36:49 -06:00
grossmj
0d856ae180 Fixes #7. 2014-04-28 10:03:03 -06:00
grossmj
e0488bb31f Explicit error message for missing 32-bit binary support on 64-bit Linux
when starting IOU.
2014-04-27 21:52:24 -06:00
grossmj
6632af9776 Checks for missing shared library dependencies in the IOU image. 2014-04-27 14:51:55 -06:00
grossmj
32436b0051 Fixes #6. 2014-04-27 11:55:02 -06:00
grossmj
85336e0fca Check for valid IOS & IOU image paths and files (by analyzing the firt 7
bytes of their ELF header).
2014-04-26 22:04:22 -06:00
grossmj
28ca12367a Proper server shutdown. 2014-04-26 17:51:47 -06:00
grossmj
7ebd451dda Graceful shutdown for modules and locale check for the server. 2014-04-24 15:59:34 -06:00
grossmj
9be5625c38 json-schema validations.
NIO creation refactoring.
2014-04-23 12:31:33 -06:00
grossmj
f5d1184b29 Remove checks for access to TAP and Ethernet interfaces. 2014-04-16 18:33:29 -06:00
grossmj
ada36e5382 Bump version to 1.0-alpha2. 2014-04-16 12:43:59 -06:00
grossmj
732afb4ebd Fixes issues with working dirs. 2014-04-15 22:11:34 -06:00
grossmj
f99128b2a4 Support for project names on remote server. 2014-04-15 17:18:37 -06:00
grossmj
872515fa78 Use the FileExistsError exception. 2014-04-12 16:46:02 -06:00
grossmj
a874b63e40 Checks for valid device IDs. 2014-04-12 14:43:30 -06:00
grossmj
3edbdbe0b5 Change address/host binding implementation. 2014-04-11 18:33:42 -06:00
grossmj
862448ada1 Fixes bug with finding a free port. 2014-04-11 17:02:43 -06:00
grossmj
e70ea26639 Fixes checks for free console and aux ports. 2014-04-11 16:24:08 -06:00
grossmj
96231e3f7f More specific path checks (file vs directory). 2014-04-11 14:48:30 -06:00
grossmj
fca399a5ab Improve checks when starting IOU. 2014-04-10 18:48:43 -06:00
grossmj
4ab9b4acc7 Fixes topology loading issue. 2014-04-10 15:04:39 -06:00
grossmj
b614aa8290 Use a temporary file for Dynamips process logging (avoid Windows file
locking when saving to another location).
2014-04-09 18:39:24 -06:00
grossmj
2dc189c592 Fixes #3 (invalid directory in PATH). 2014-04-09 17:00:09 -06:00
grossmj
5eb72fa2f3 Replace "windows-style" line endings (\r\n) by "UNIX-style" (\n) for the
IOURC file.
2014-04-09 16:13:45 -06:00
grossmj
54a6e9a7ac Replace "windows-style" line endings (\r\n) by "UNIX-style (\n) for the
IOURC file.
2014-04-09 16:12:42 -06:00
grossmj
0110fe33d4 Check for the Dynamips version. 2014-04-09 15:59:51 -06:00
grossmj
27379682df Rename socket.error to OSError.
Server shutdown management.
2014-04-06 11:37:34 -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
ab02925f98 Dynamips default host binding set to 127.0.0.1 2014-03-30 21:31:41 -06:00
grossmj
bb2c25da5c Fix freezing issues on Windows. 2014-03-30 16:25:56 -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
f534a02324 Update idlemax from 1500 to 500.
Update ioucon.
2014-03-24 21:25:12 -06:00
grossmj
c4d9e8371f Notification to clients 2014-03-19 18:48:42 -06:00
grossmj
99cc7345b8 Chassis and private-config support 2014-03-18 18:14:30 -06:00
grossmj
0e1d8e5071 TAP and Ethernet device support for IOU 2014-03-17 17:32:16 -06:00
grossmj
41a1d16e92 Windows support (freezing).
Client notification support.
Hypervisor manager changes.
IOU reload support.
Switch to non-dynamic module loading because of a multiprocessing
problem on Windows.
2014-03-15 21:41:04 -06:00
grossmj
3df5cdb76f iourc file creation on the server. 2014-03-11 16:33:56 -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
89888ae7bf Handle startup-config push using base64
Dynamips working directory management
Random port selection for the ZeroMQ server
TCP & UDP port allocation in a range with improvements
Update Dynamips to 0.2.11 (for the tests)
Focus on Python3 development (stop trying to be compatible with Python
2.x)
More error/bug catching
2014-03-02 15:20:03 -07:00
grossmj
687d5b75ab Renaming things & more inline docs. 2014-02-27 21:50:46 -07:00
grossmj
d68a24e39d Extra documentation and checks. Support to rename switch & hub devices. 2014-02-26 11:47:12 -07:00
grossmj
72d303069c Improve server/modules termination and how to wait for an hypervisor.
connection.
System to avoid duplicated name for nodes.
Reload and idle-pc support for Dynamips routers.
Hypervisor allocation for other Dynamips devices.
2014-02-20 17:39:03 -07:00
grossmj
df798f4bea Add default values for exec area and system id settings 2014-02-06 11:22:58 -07:00
grossmj
78ad94f815 Get the default base MAC address when creating a new router 2014-02-06 01:02:38 -07:00
grossmj
5560e81f9a Change rename command to a name property setter for all Dynamips
devices. Adjust the tests and upload the new dynamips that supports the
rename command for VMs.
2014-02-05 15:45:33 -07:00
grossmj
cef29e53aa General work on the Dynamips backend (need to finish and polish). 2014-01-31 16:31:34 -07:00
grossmj
2516bf80a8 Dynamips backend (API implementation) 2013-12-21 17:42:33 -07:00
grossmj
e28079096e JSON-RPC over Websockets implementation. 2013-12-21 17:34:51 -07:00
grossmj
798f0367b9 Catch SIGTERM, SIGINT, SIGHUP and SIGQUIT to properly shutdown the
server.
2013-12-06 17:52:16 -07:00
grossmj
2f23a092e3 Polishing base server implementation 2013-12-05 21:39:27 -07:00
grossmj
f4e51ea74f Base server complete including modules, STOMP protocol over Websockets
and ZMQ Router/Dealer implementations.
2013-12-05 00:21:06 -07:00