Commit Graph

1139 Commits

Author SHA1 Message Date
Julien Duponchelle
2f85d71f32 Correctly override the config from command line
The tests was long write but allow me to found some typos
bugs.
2015-02-09 21:30:22 +01:00
Julien Duponchelle
e1a80a9fab Remove debug 2015-02-09 19:58:23 +01:00
Julien Duponchelle
b31af0abcd Sub directory project-files 2015-02-09 11:26:42 +01:00
Julien Duponchelle
e99c0f6ac5 I hope it's fix tests on Travis Python 3.3 2015-02-09 11:19:56 +01:00
Julien Duponchelle
bf29e0319e Test logger and PEP8 2015-02-09 10:38:34 +01:00
Julien Duponchelle
64c197c719 Fix tests 2015-02-09 10:18:37 +01:00
Julien Duponchelle
e81dcd4bba Add /projects before /project 2015-02-06 17:42:25 +01:00
Julien Duponchelle
571044b3e8 Fix server close tests 2015-02-06 11:31:54 +01:00
Julien Duponchelle
5c3969ae79 Fix tests creating garbage project in ~/GNS3/project 2015-02-06 11:15:27 +01: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
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
Julien Duponchelle
08158884a4 Add api versionning 2015-02-04 10:24:59 +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
f572f3fc95 You can't modify startup script remotely 2015-02-03 20:29:28 +01:00
Jeremy
d199778745 Fixes tests. 2015-02-02 19:41:26 -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
Jeremy
57b35d5758 Fix tests + PEP8 + documentation 2015-02-01 17:22:31 -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
e7c9139045 Rename /udp entry point to /ports/udp. 2015-01-31 11:58:34 -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
f682e1c474 Complete documentation 2015-01-27 15:06:55 +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
ff63530f52 Get all available VirtualBox VMs on the server. 2015-01-23 17:57:54 -07:00
Jeremy
499a8f10ae Update tests. 2015-01-23 16:38:59 -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
8e249b670d Set a location by default 2015-01-23 17:39:17 +01:00
Julien Duponchelle
017c5ac9f6 Allow changing location only for local usage 2015-01-23 16:58:14 +01:00
Julien Duponchelle
4848eeabad Add missing curl example 2015-01-23 16:21:26 +01: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
9a0b260c56 Small change in order to avoid a PEP8 warning 2015-01-23 11:30:49 +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
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
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
1a43ff118c Fix tests and clean. 2015-01-21 19:30:24 -07:00
Jeremy
0b1b27db8f Add module name to base manager. 2015-01-21 15:21:15 -07:00
Julien Duponchelle
97cefa23fb Move fixtures to conftest 2015-01-21 22:32:33 +01:00
Julien Duponchelle
f3e07d5ad9 Fix random failure related to ports 2015-01-21 22:21:01 +01:00
Julien Duponchelle
8d9da999e6 Update examples only when launching test with documentation.sh 2015-01-21 22:09:52 +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
ce9fd3cb25 Test start / stop. And check if the mocked function is really called 2015-01-21 17:11:21 +01:00
Julien Duponchelle
87a089457f Update script file 2015-01-21 16:43:34 +01:00
Julien Duponchelle
f99538ccef Cleanup test 2015-01-21 15:50:35 +01:00
Julien Duponchelle
df31b2ad5a Fix project path 2015-01-21 11:33:24 +01:00
Julien Duponchelle
3530b85b56 Fix virtualbox test 2015-01-20 23:40:03 +01: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
c30f7ce9a1 Fix tests 2015-01-20 19:23:35 +01:00
Julien Duponchelle
54eb8d9e81 Drop decorator for async test 2015-01-20 18:55:17 +01:00
Julien Duponchelle
bbee5f90a0 Yet another PEP 8 :) 2015-01-20 16:37:18 +01:00
Julien Duponchelle
531265eced Get a stable example between tests for project creation 2015-01-20 15:35: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
Julien Duponchelle
927e6b540d Fix tests 2015-01-20 09:58:58 +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
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
7de95cd60a Fix tests 2015-01-19 11:28:51 +01:00
Julien Duponchelle
73a481e510 Refactor port manager 2015-01-19 11:22:24 +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
42920e5059 Haiku theme 2015-01-16 21:44:56 +01: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
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
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
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
6d20a122f8 Adds tests and documentation script. 2015-01-13 17:26:24 -07:00
Daniel Lintott
6a81390808 Update test with correct hypervisor IP 2014-12-09 13:49:45 +00:00
Daniel Lintott
20dc779fd8 Fix test for dynamips c7200 NPE (Default is now NPE-400) 2014-09-27 19:27:26 +01:00
Daniel Lintott
ad287d3434 Remove un-needed imports 2014-08-08 19:14:36 +01:00
Daniel Lintott
4a4a57e1a3 Further test fixes
+ tests/dynamips/test_hypervisor.py: Increase sleep time to prevent
   random test failures
 + tests/iou/test_iou_device.py: Rework test skipping based on presence
   of IOU image rather than environment variable
2014-08-08 17:54:30 +01:00
Daniel Lintott
9b010d6388 Update test_hypervisor.py
+ test_stdout: use system dynamips
 + test_stdout: correct host address to start dynamips on
2014-08-08 15:00:44 +01:00
Daniel Lintott
8fc4667d2c Modify the TRAVIS environment check 2014-08-08 14:49:10 +01:00
Daniel Lintott
7cbce0f81b Fix test suite
+ Install VPCS and dynamips from GNS3 PPA
 + Drop netifaces-py3 from requirements.txt
 + Fix/update tests to use installed VPCS and dynamips
2014-08-08 14:32:32 +01:00
grossmj
7b58f14681 Some PEP8 style fixes. 2014-05-28 06:26:20 -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
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
476a3c42b6 Added NIO TAP support 2014-05-06 10:42:38 -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
96231e3f7f More specific path checks (file vs directory). 2014-04-11 14:48:30 -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
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
49345aedd1 Update Dynamips for the tests and uncomment the system id test 2014-02-06 00:52:05 -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
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
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
grossmj
58f93edaf7 Base server & plugin system & first unit tests 2013-10-30 15:58:17 -06:00
grossmj
c4ed47b2dc Initial project structure 2013-10-04 17:45:15 -06:00